Я пытаюсь создать ковариационную матрицу, которая экспоненциально взвешивает возвраты так, чтобы самые последние возвраты получали наибольший вес.
Применяя .cov () к моему объекту EWM, он создает ковариационную матрицу в каждый период моего индекса (даты).
Однако, если я не применяю функцию ewm () и вместо этого применяю cov () к моему фрейму данных, я получаю только одну ковариационную матрицу, которая корректно отображает волатильность во времени.
Можно ли применить .cov () к объекту EWM и получить только 1 ковариационную матрицу?
пример:
x=pd.DataFrame(index=['01/01/2019','02/01/2019','03/01/2019'], columns=
['Momentum','Volatility','Liquidity'],data={'Momentum':
[1,2,3],'Volatility':[4,5,6],'Liquidity':[1,2,3]})
x=x.ewm(halflife=.97)
x.cov() <---produces a covariance matrix at each date in the index
Вместо этого я хотел бы получить результат, просто взяв фрейм данных и применив x.cov ().
Если это невозможно с ewm, есть ли другое решение, которое может это позволить?