Как рассчитать годовой запас бета - PullRequest
0 голосов
/ 27 мая 2019

У меня 33 года еженедельных данных по конкретным акциям и доходности индекса S & P500. Я хочу рассчитать 33 годовых бета-акции на основе 52 еженедельных наблюдений за доходностью акций.

Я знаю, что бета-версия может быть рассчитана с использованием ковариации и дисперсии. Я обнаружил, что у панд есть функция pd.rolling.cov, но она не работает. Модуль «Панды» не имеет атрибута «прокатки»

import pandas as pd
import numpy as np
stock=pd.read_excel(r"C:\01.xlsx", '2') #read second sheet of excel file
stock['stockreturn']=np.log(stock.AdjCloseStock / stock.AdjCloseStock.shift(1)) #stock ln return
stock['SP500return']=np.log(stock.AdjCloseSP500 / [enter image description here][1]stock.AdjCloseSP500.shift(1)) #SP500 ln return
stock = stock.iloc[1:] #delete first row in dataframe
stock['beta'] = pd.rolling.cov(stock['stockreturn'], stock['SP500return'], 
window=52) / pd.rolling.var(stock['SP500return'], window=52)

Честно говоря, я не знаю, как получить 33 ежегодных бета-версии из 33 наблюдений за 52 недели. Любая помощь приветствуется.

печать экрана моего фрейма данных

1 Ответ

0 голосов
/ 27 мая 2019

Вы искали pd.core.window.Rolling.cov. Чтобы правильно написать имя метода, Мы просим вас Прочитать Руководство пользователя ,

cf Создание скользящей ковариационной матрицы в пандах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...