Конвертировать CSV в панель pandas для Zipline - PullRequest
0 голосов
/ 07 января 2020

Я пытаюсь преобразовать CSV в панель в pandas следующим образом, но jupyter сохраняет предупреждение «ValueError: Конструктор панели неправильно вызван!», Хотя я сделал как руководство в https://blog.quantinsti.com/importing-csv-data-zipline-backtesting/:

Мой CSV-файл имеет структуру:

data = pd.read_csv('.../MWG.csv', index_col=0, parse_dates=['Date'])
data.fillna(method='ffill')

     Date       Open        High        Low         Close       Volume
Symbol                      
MWG 2019-12-12  113.0000    113.5000    112.7000    113.4000    366190
MWG 2019-12-11  110.5000    113.0000    110.3000    113.0000    314710
MWG 2019-12-10  110.9000    111.4000    110.0000    111.0000    412000
MWG 2019-12-09  110.8000    111.6000    110.0000    110.9000    526010
MWG 2019-12-06  110.6000    111.0000    110.0000    110.8000    468980
MWG 2019-12-05  113.2000    113.5000    110.6000    110.6000    544700
MWG 2019-12-04  109.0000    113.0000    108.6000    113.0000    574630

Мой код:

panel = pd.Panel(data)
panel.minor_axis = ['Open', 'High', 'Low', 'Close', 'Volume']
panel.major_axis = panel.major_axis.tz_localize(pytz.utc)

А предупреждения:

ValueError: Panel constructor not properly called!

Пожалуйста, помогите мне исправить проблему, чтобы я мог получить информацию для запуска стратегии Zipline.

1 Ответ

0 голосов
/ 07 января 2020

Вы можете использовать panel для ndarray или dict of dataframes. Вы можете попробовать это,

>>> data = {}
>>> data['MGW'] = pd.read_csv('.../MWG.csv', index_col=0, parse_dates=['Date'])
>>> panel = pd.Panel(data)

...