У меня есть такой кадр данных:
Ticker
означает Stock Name
, и я вычислил pct_change
, и теперь мне нужно вычислить cov matrix
для каждого тикера = StockName.
Вывод должен выглядеть примерно так:
Есть идеи, как рассчитать матрицу, как указано выше, для моего столбца pct_change
??
Я начал с этого кода, и мой следующий шаг — вычисление ковариации.
import pandas as pd
import glob
import os
os.chdir('C:\\Users\xxxxx')
files_list = glob.glob('*.txt')
stocks = {}
for i, file in enumerate(files_list):
stocks[i] = pd.read_csv(files_list[i], names=['Ticker', 'Date', 'Open', 'High', 'Low', 'Close', 'Vol'],
header=None).drop(index=0).reset_index().drop(columns='index')
stocks[i].iloc[:, stocks[i].columns.get_loc('Open'):] = stocks[i].iloc[:, stocks[i].columns.get_loc('Open'):].astype('float')
stocks[i]['pct_change'] = stocks[i]['Close'].pct_change()
Заранее спасибо за помощь :)