6
$\begingroup$

This paper mentions the concept of rank which is defined as cross sectional rank. For e.g. one of the alphas (#3) is

(-1 * correlation(rank(open), rank(volume), 10))

10 is just the number of days to take any correlation over. I think we can rank the securities according to Open and Volume each day. So we will be getting different set of securities each day. I don't understand how can this daily varying set be used to get a correlation value.

I thus need guidance on now to calculate this alpha. Any help will be appreciated. Thanks

Update I understand what rank is. What I don't get is how do you calculate correlation between changing values.

Lets say the universe is 3 stocks. On Day 1, Rank Open is 1,2,3 and Rank Volume is 3,2,1. On Day 2, Rank Open is 1,3,2 and Rank Volume is 2,3,1. On Day 3, Rank Open is 3,2,1 and Rank Volume is 1,2,3. This happens for n days (in this case 10).

My primary question is how do you calculate correlation between such vectors to arrive at a single value. Because normal correlation is between two same type of vectors.

$\endgroup$
4
  • 2
    $\begingroup$ The open and the volume can vary widely across stocks (by orders of magnitude in the case of volume). To tame these wild numbers somewhat, as is commonly done in nonparm statistics, you replace the value with its rank within the 1000 (say) stocks that you are looking at, so ranked volume is a number between 1 (for MSFT which traded 20,000,000 shares) and ACME at 1000 (volume of 20 shares). $\endgroup$
    – nbbo2
    Commented Sep 29, 2016 at 20:05
  • 3
    $\begingroup$ That paper, by the way, is a waste of time. He never describes things precisely enough to really pin down how everything works. It is Fool's Gold. $\endgroup$
    – nbbo2
    Commented Sep 29, 2016 at 20:14
  • $\begingroup$ I understand what rank is. What I don't get is how do you calculate correlation between changing values. Lets say the universe is 3 stocks. On Day 1, Rank Open is 1,2,3 and Rank Volume is 3,2,1. On Day 2, Rank Open is 1,3,2 and Rank Volume is 2,3,1. On Day 3, Rank Open is 3,2,1 and Rank Volume is 1,2,3. This happens for n days (in this case 10). My primary question is how do you calculate correlation between such vectors to arrive at a single value. Because normal correlation is between two same type of vectors. $\endgroup$ Commented Sep 30, 2016 at 0:56
  • $\begingroup$ @noob2 why is it fools gold? I'm looking through it now $\endgroup$
    – confused
    Commented Jul 30, 2020 at 5:59

2 Answers 2

1
$\begingroup$

rank correlation is also named Spearman's rho, it is used when you do not bother with the values of series of observations $X$ and $Y$, but only of the relative orderings of observations in each of the series.

Your question is more about how to compute statistics on multidimensional time series rather than on Spreadman's rho itself:

  • $X$ and $Y$ are both vectors of $\mathbb{R}^K$: $X=(X_k)_{1\leq k\leq K}$ and $Y=(Y_k)_{1\leq k\leq K}$,
  • at each date $t$ you observe both of them $X(t)=(X_k(t))_{1\leq k\leq K}$.
  • Your statistic (here the rank correlation) takes for any arbitrary $t$ both vectors, and returns $\hat\rho(t):=r(X(t),Y(t))$, where $r$ is your formula.

You have to consider that at each date $t$ you have only one observation of the estimate of the true Spearman's rho, and you want to have a better estimate of $\rho(X,Y)$. You can do it by several ways

  • simply average over dates, when you do that you implicitly take the naive estimator the the expectation of $\rho(X,Y)$,
  • you can have more information and jackknife or bootstrap $\rho(X,Y)$, with jackknife you remove a bias in the number of observations, with bootstrap you get an estimate of the variance of your estimation,
  • if you do not believe that your times series $X(t)$ and $Y(t)$ are i.i.d. realisations of random variables, but rather stochastic processes (with any kind of memory), you can be smarter than that, like computing your estimator using a moving average.
$\endgroup$
0
$\begingroup$

For this alpha: from any data point such Di on, we take the last ten data points (e.g. 10 days) from Di-10 to Di-1, and do the calculation with rank(D.Open)i and rank(D.Volume)i, and the result is a single value. As the data point moves, we will have an array (list) of corrections.

"Cross sectional" just means each part of the calculation using data overlapping with each other. A common name for it will be "rolling window" of a data frame.

$\endgroup$
1
  • $\begingroup$ Simple put, this alpha is for calculating the volume and price divergence by using the last N data points. $\endgroup$
    – tyolab
    Commented Apr 30, 2022 at 1:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.