我有一张单子,是一套股票行情表。对于每一个股票,我得到的每日回报可以追溯到六个月前。然后我要计算每个股票代码之间的协方差。我在np.cov
上遇到问题,下面是测试COV的代码:
newStockDict = {}
for i in newList_of_index:
a = Share(i)
dataB = a.get_historical(look_back_date, end_date)
stockData = pd.DataFrame(dataB)
stockData['Daily Return'] = ""
yList = []
for y in range(0,len(stockData)-1):
stockData['Daily Return'][y] = np.log(float(stockData['Adj_Close'][y])/float(stockData['Adj_Close'][y+1]))
yList = stockData['Daily Return'].values.tolist()
newStockDict[stockData['Symbol'][0]] = yList
g = (np.cov(pd.Series((newStockDict[newList_of_index[0]]))), pd.Series(((newStockDict[newList_of_index[1]]))))
return g
我的错误是:
^{pr2}$我尝试过在一个数据帧上使用pd.cov
,然后使用np.cov
。什么都不管用。在这里,我实际上是把每天的收益附加到一个列表中,然后添加到字典中,然后在我手动计算n
协方差矩阵之前。但是我不能让np.cov
工作。在
请帮忙。我的想法是我可以很容易地构造一个由N个tickers组成的数据帧,每一行都是一个每日返回值。但我无法用所述数据帧计算cov,因此此df-->;list-->;dict进程。在
目前没有回答
相关问题 更多 >
编程相关推荐