本小结主要讲解如何把数据加载到backtrader中。backtrader可以对接各种数据源资源,常见的是基于CSV格式的各种数据来源,如雅虎、VisualChart等,并提供相应的方法可以自定义自己想要的数据格式;并且可以对接各种数据库,如MySQL等。
import backtrader as bt
# 读取相应的数据并加载
data = bt.feeds.YahooFinanceCSVData(dataname='wheremydatacsvis.csv')
# 实例化一个cerebro
cerebro = bt.Cerebro()
# 把数据加载到cerebro中
cerebro.adddata(data,name=None)
这时一个典型的加载数据方式,如果需要加在多个数据,可以循环加入进去,并且可以对每个数据指定名称,并通过这个名称获取该数据。
import backtrader as bt
# 读取相应的数据并加载
data = bt.feeds.YahooFinanceCSVData(dataname='wheremydatacsvis.csv')
# 实例化一个cerebro
cerebro = bt.Cerebro()
# 把数据加载到cerebro中
cerebro.adddata(data,name=None)
如何获取数据
数据加载过后,会按照加载的顺序保存在self.datas中,这时一个列表,可以使用for循环。如果没有在加载数据的时候对每个数据指定名称,那么可以按照加载数据的先后次序获得数据,第一个数据使用self.data0来获得,第二个数据可以用self.data1来获得ÿ