Я ищу способ заставить следующий код работать:
import pandas
path = 'data_prices.csv'
data = pandas.read_csv(path, sep=';')
data = data.sort_values(by=['TICKER', 'DATE'], ascending=[True, False])
data.columns
У меня есть двумерный массив с тремя столбцами, данные выглядят так:
DATE;TICKER;PRICE
20151231;A UN Equity;41.81
20151230;A UN Equity;42.17
20151229;A UN Equity;42.36
20151228;A UN Equity;41.78
20151224;A UN Equity;42.14
20151223;A UN Equity;41.77
20151222;A UN Equity;41.22
20151221;A UN Equity;40.83
20151218;A UN Equity;40.1
20091120;PCG UN Equity;42.1
20091119;PCG UN Equity;41.53
20091118;PCG UN Equity;41.86
20091117;PCG UN Equity;42.23
20091116;PCG UN Equity;42.6
20091113;PCG UN Equity;41.93
20091112;PCG UN Equity;41.6
20091111;PCG UN Equity;42.01
Теперь я хочу рассчитать реализованную волатильность за x дней, где x получено из поля ввода, и x не должно быть больше, чем количество наблюдений.
Шаги, которые необходимо предпринять:
- Рассчитать возврат журнала для каждой строки
- Возьмите эти результаты и запустите стандартное отклонение поверх него.
- Умножьте на квадратный корень из 255, чтобы нормализовать годовую волатильность.
data.reset_index(inplace=True)
, потому что первый столбец индекс. - person jezrael   schedule 08.08.2016print(data.columns)
перед сортировкой (сразу после чтения файла) - person ayhan   schedule 08.08.2016Index(['DATE', 'TICKER', 'PRICE'], dtype='object')
- person Spurious   schedule 08.08.2016.csv
, потому что, если я использую более короткую версию, которую я указал выше, она работает нормально. - person Spurious   schedule 08.08.2016'DataFrame' object has no attribute 'price'
это неправда, у меня есть столбец с названием цена. - person Spurious   schedule 08.08.2016