Universe
A universe is a set of names or instruments you invest in. It could be as simple as the entirety of listed equities - or defined basket of healthcare names that fit a liquidity or market cap profile.
Most common in research and in general dialog is the S&P 500®. This is actually a product of S&P Global and its use is licensed, for a lot of money. QUANTkiosk was built specifically to break down the walls of traditional institutional finance and make research more open and accessible. To that end, we recognized that having a universe that was defined, easy to work worth and tracked through time (removing survivorship bias), we could allow for everyone to innovate with freedom.
The premise of QK Universe is elegant - the most widely held names by the smartest investors in the world. The constituents are resolved after the institutional holding deadline each quarter using a proprietary set of determinstic rules. (forthcoming paper). These universe files contain an unordered list of companies (Common Equities and ADRs) cut at predefined threshold between 250 to 3000.
Universe Definitions
QK Institutional Universe
Available the day following the deadline for 13F-HR reports, approximately 45d after the end of each calendar quarter. These functions return the QKIDs.
- Python
- R
# top 100, 250, etc held companies previous quarter
qk.univ("QK100")
qk.univ("QK250")
qk.univ("QK500")
qk.univ("QK1000")
qk.univ("QK3000")
# the companies between 1000 and 3000
qk.univ("QK2000")
# top 100, 250, etc held companies previous quarter
qk_univ("QK100")
qk_univ("QK250")
qk_univ("QK500")
qk_univ("QK1000")
qk_univ("QK3000")
# the companies between 1000 and 3000
qk_univ("QK2000")
QK Institutional Permanent Universe
Permanent universe is intentionly not tradable.
It is made available to facilitate using a data universe that is fixed and available. It provides a good example of what survivorship bias is as well as make highlight the importance of proper point-in-time universe construction.
- Python
- R
# intersection of all 100, 250 etc universes over last 10 years
qk.univ("QK100P")
qk.univ("QK250P")
qk.univ("QK500P")
qk.univ("QK1000P")
qk.univ("QK3000P")
# the companies between 1000 and 3000
qk.univ("QK2000P")
# intersection of all 100, 250 etc universes over last 10 years
qk_univ("QK100P")
qk_univ("QK250P")
qk_univ("QK500P")
qk_univ("QK1000P")
qk_univ("QK3000P")
# the companies between 1000 and 3000
qk_univ("QK2000P")