AYUSH estimate - kitzz03/WorldQuant-Alphas GitHub Wiki
b=open;
a = (1+rank(ts_rank(est_epsr/b,60)))*(1+rank(ts_rank(est_sales/sharesout,60)));
group = bucket(rank(cap), range = "0.1667,1,0.1667");
group_rank(group_neutralize(a,group),group)
SOURCES
Brain platform Investopedia article
HYPOTHESIS
Using comparision of estimated earnings per share over the past quater for a stock by itself we go long on the ones having better values than before. Then for smoothing we used the rank operator. As earnings and sales together go in hand in hand we tried to combine them by multiplying their per share value to indicate a better view of company.
We divided our per share value with the price of stock in that day to make it represent the profit of a firm. We chose open value as thew price of the stock so it can react to the most recent updates in the market
Also as we had 2 ranks multipilied in our alpha we did (1+ rank) for better scalability and issues like multiplication with 0.
Then group neutralized by cap so that the stocks are compared with ones in their category to ensure a better signal and then applied group_rank for further smoothing as well as to remove outliers
As analyst data represent future values of fundamentals we opted for industry neutralization.