Hi all,
I am investigating the MSCI momentum but it seems to me that my notebook has something wrong and missing something.
The MSCI momentum method is as follow:
6-month Price Momentum =( (PT-1 /PT-7)-1) – (Local Risk-free rate)
12-month Price Momentum = ((PT-1 /PT-13)-1) - (Local Risk-free rate)
Where, PT-1 = Security Local Price one month prior to the rebalancing date (T)
PT-7 = Security Local Price seven months prior to the rebalancing date (T)
PT-13 = Security Local Price thirteen months prior to the rebalancing date (T)
Risk-adjusted Price Momentumi = Price Momentumi / σ
Where σi = Annualized Standard Deviation of weekly local price returns over the period of 3 years.
Risk-adjusted Price Momentums computed above are standardized into z-scores. The zscores are combined in equal proportion and standardized to arrive at a single Momentum Z-score (Z)
Z = 6-month Momentum Z-score*0.5 + 12-month Momentum Z-score*0.5
The Momentum Z-score is winsorized at +/- 3 i.e. the Z-scores above 3 are capped at 3 and Z-scores below -3 are capped at -3.
The Momentum Score is then computed from the Momentum Z-Score as follows:
𝑀𝑜𝑚𝑒𝑛𝑡𝑢𝑚 𝑆𝑐𝑜𝑟𝑒 = {
1 + 𝑍, 𝑍 > 0
(1 − 𝑍)^−1 , 𝑍 < 0
}
The full documentation can be found be in:
https://www.msci.com/eqb/methodology/meth_docs/MSCI_Momentum_Indexes_Methodology_Sep2014.pdf
I have several questions as:
1. Does my class weekly_vol correctly calculate the Annualized Standard Deviation of weekly local price returns over the period of 3 years?
2. I have not minus the Local Risk-free rate yet in calculating the momentum. Is it possible to get the 3m LOBOR data on quantopian?
3. How can I winsorize the Z-scores at +/- 3 i.e. the Z-scores above 3 are capped at 3 and Z-scores below -3 are capped at -3.
4. How can I compute the Z-scores as {
1 + 𝑍, 𝑍 > 0
(1 − 𝑍)^−1 , 𝑍 < 0
}
Many thankssss