Recently, the folks over at Forcerank gave me a chance to explore their crowdsourced stock ranking data and it’s potential within a quantitative strategy. For those who don’t know what Forcerank is, it’s a new product from the Estimize company (crowdsourced earnings and revenue estimates soon available here on Quantopian).
Forcerank is an iOS mobile app where market participants can compete in 18 different contests across industry groups each week to see who is best at accurately ranking stocks. Each contest is comprised of 10 stocks and is run from the open of trading Monday until the close of trading Friday.
The thesis behind Forcerank was born out of a program that over a dozen major quantitative hedge funds were running very successfully earlier this decade which was shut down by the SEC for RegFD reasons. These quantitative hedge funds were collecting forcerank data privately from sell side publishing analysts. The Forcerank app uses a crowdsourced model as an alternative method to collect this data.
After a bit of research and backtesting, what I found was that using the crowdsourced stock rankings as an inverse predictor of future performance provided alpha potential within the context of a market neutral strategy. To be specific, I found that going short on the highest ranked stocks and going long on the lowest ranked stocks provided the best performance in a market neutral strategy. As an analogy, you could compare this to contrarian investing which tends to enter into positions against the public’s consensus.
It’ll be exciting to see how this strategy performs as the Forcerank collects more OOS data in the coming year.
Sample and Methodology
The data itself spans from 2/21/2016 ~ 10/6/2016. It spans over 1,600 Forcerank entries across 200 securities. While the raw data contains individual Forcerank entries per weekly category (e.g. semiconductor stock ranking, apparel stock ranking), some pre-processing was done to get the data into a normalized-factor format suitable for long/short portfolio construction. Here’s the process they used:
- Each ticker an ordinal consensus rank based on its average ranking (1 ~ 10).
- This ordinal consensus rank was the converted into a factor from [-5, +5] in order that we’d have adequate long/short portfolios in our backtest.
- Finally, these factor scores are then normalized to be beta neutral.
Strategy Specifications
Similar to the span of the data, the backtest ranges from February ~ October, 2016. With a capital base of $1,000,000, the algorithm examines the data and orders according to the allocation weights. These allocation weights are calculated by each stock’s beta normalized factor score relative to its long/short basket:
(factor_ranking / stock’s_beta) / sum(factor_ranking / stock’s_beta)
The Pyfolio tearsheet below walks you through the results of that backtest. We’ll soon be publishing the algorithm and the process Forcerank used to preprocess the data so you can replicate and test their process within Quantopian.