Как создать собственный торговый календарь на zipline? - PullRequest
0 голосов
/ 11 июля 2020

Я пытаюсь создать собственный календарь zipline, но, похоже, он не работает, когда я регистрирую календарь. У меня есть собственный файл календаря с именем exchange_calendar_cme_rates , а класс в этом файле - CMERATESExchangeCalendar. По сути, это копия exchange_calendar_cmes, за исключением измененных часов праздников.

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

# sample.py
from exchange_calendar_cme_rates import CMERATESExchangeCalendar
from trading_calendars import register_calendar, get_calendar
import pandas as pd
import datetime as dt

def main():    
    register_calendar("CME_Rates", CMERATESExchangeCalendar, True)
    cme_calendar_rates = get_calendar("CME_Rates") 
   
    sample_time = pd.Timestamp(2020, 7, 10, 12)
    print(cme_calendar_rates.next_close(sample_time))

if __name__ == '__main__':
    main()

Я получаю ошибку: TypeError: next_close() missing 1 required positional argument: 'dt'

Я не редактировал ни один из файлов в каталоге trading_calendars. Вместо этого файл exchange_calendar_cme_rates находится в том же каталоге venv, что и sample.py

Есть ли какие-то дополнительные шаги, которые мне нужно предпринять для регистрации календаря?

...