backtrader 设置时间
时间: 2023-05-02 20:06:11 浏览: 152
backtrader 是一个 Python 编写的金融市场交易回溯框架,并且有很强的灵活性和可自定义性。在 backtrader 中,你可以设置你自己的时间序列器,以适应你的数据。
不同的数据类型有不同的时间设定要求,例如分钟线数据和日线数据的时间设定就不同。Backtrader 通过 datetime 模块设置时间,datetime 模块提供了日期时间格式的方法。在代码中需要先导入:
``` python
from datetime import datetime
```
然后我们可以通过如下代码设置时间:
``` python
data = bt.feeds.YahooFinanceData(dataname='AAPL',
fromdate=datetime(2017, 1, 1),
todate=datetime(2019, 12, 31))
```
在这个例子中,我们抓取了 AAPL(苹果公司)的数据,列入起始时间是 2017 年 1 月 1 日,结束时间是 2019 年 12 月 31 日。
另外,你还可以设置你要回测的特定日期列表:
``` python
back_date = [datetime.datetime(2017, 1, 1),datetime.datetime(2018, 1, 1),datetime.datetime(2019, 1, 1)]
cerebro = bt.Cerebro()
cerebro.adddata(data)
cerebro.broker.setcash(100000)
cerebro.addstrategy(SMA_CrossOver)
cerebro.run(start=back_date[0],end=back_date[-1])
```
在这个例子中,我们设置回测的特定日期列表为 2017 年 1 月 1 日、2018 年 1 月 1 日和 2019 年 1 月 1 日,这样就可以只对这几个日期进行回测。
阅读全文