Привет, ребята, я пытаюсь создать пакет данных с активами BR. Чтобы сделать это, я выполняю шаги, представленные в этом руководстве: Ссылка
Я использую приведенный ниже код для загрузки с Yahoo и сохранения данных в каталог C: /Users/ivo/PycharmProjects/finance/datas/BVSP.csv
def download_csv_data(ticker, start_date, end_date, freq, path):
yahoo_financials = YahooFinancials(ticker)
df = yahoo_financials.get_historical_price_data(start_date, end_date, freq)
df = pd.DataFrame(df[ticker]['prices']).drop(['date'], axis=1) \
.rename(columns={'formatted_date': 'date'}) \
.loc[:, ['date', 'open', 'high', 'low', 'close', 'volume']] \
.set_index('date')
df.index = pd.to_datetime(df.index)
df['dividend'] = 0
df['split'] = 1
# save data to csv for later ingestion
df.to_csv(path, header=True, index=True)
# plot the time series
df.close.plot(title='{} prices --- {}:{}'.format(ticker, start_date, end_date))
plt.show()
download_csv_data(ticker='^BVSP',
start_date='2019-01-01',
end_date='2019-12-31',
freq='daily',
path='C:/Users/ivo/PycharmProjects/finance/datas/BVSP.csv')
И я добавил код в файл extensions.py в каталоге: C: \ Users \ ivo \ Anaconda3 \ envs \ z35 \ Lib \ site-packages \ zipline
Я добавляю приведенный ниже код в extension.py
import pandas as pd
from zipline.data.bundles import register
from zipline.data.bundles.csvdir import csvdir_equities
start_session = pd.Timestamp('2019-1-1', tz='utc')
end_session = pd.Timestamp('2018-12-31', tz='utc')
register(
'br_bundle',
csvdir_equities(
['daily'],
'C:/Users/ivo/PycharmProjects/finance/datas',
),
calendar_name='BVMF', # US equities
start_session=start_session,
end_session=end_session
)
, но я попытался загрузить пакет данных с этим кодом в консоли python:
!zipline ingest -b br_bundle
Я получил следующую ошибку:
Traceback (most recent call last):
File "C:\Users\ivo\Anaconda3\envs\z35\Scripts\zipline-script.py", line 11, in <module>
load_entry_point('zipline==1.3.0', 'console_scripts', 'zipline')()
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\pkg_resources\__init__.py", line 484, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\pkg_resources\__init__.py", line 2707, in load_entry_point
return ep.load()
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\pkg_resources\__init__.py", line 2325, in load
return self.resolve()
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\pkg_resources\__init__.py", line 2331, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\zipline\__init__.py", line 29, in <module>
from .utils.run_algo import run_algorithm
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\zipline\utils\run_algo.py", line 27, in <module>
from zipline.algorithm import TradingAlgorithm
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\zipline\algorithm.py", line 68, in <module>
from zipline.finance.blotter import SimulationBlotter
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\zipline\finance\blotter\__init__.py", line 16, in <module>
from .simulation_blotter import SimulationBlotter
File "C:\Users\ivo\Anaconda3\envs\z35\lib\site-packages\zipline\finance\blotter\simulation_blotter.py", line 43, in <module>
class SimulationBlotter(Blotter):
TypeError: 'str' object is not callable
Пожалуйста, ребята, помогите мне. Мне это нужно для решения задачи моего университета.