Backtrader
@adenleo
简介(Introduction)
该框架设计宗旨:
1. 大道至简 (Ease of use)
2. 万象归一(Go back to 1)
框架运行搭建步骤:
| 步骤 | 方法 |
|---|---|
| 1.创建一个策略 | class Strategy(bt.Strategy) |
| 1.1.设定可能需要调整的参数 | params = (('key', value), ) |
| 1.2.实例化策略中需要的指标 | indicators.indicators() |
| 1.3.制定进入/退出市场的规则 | buy()/sell() |
| 2.创建一个大脑(Cerebro)引擎 | Cerebro() |
| 2.1.导入策略(Strategy) | cerebro.addstrategy(Strategy) |
| 2.2.导入并加载数据(Data Feed) | cerebro.adddata(data) |
| 2.3.执行 | cerebro.run() |
| 2.4.最后可视化输出: | cerebro.plot() |
附:
框架以以下方式导入:
import backtrader as bt
1.2 在def __init__(self)中操作
1.3 在def next(self)中操作
完整模版代码:
import backtrader as bt
class StrategyName(bt.Strategy):
params = (
('key', value),
)
def __init__(self):
self.indicatorsName = bt.indicators.indicatorsName()
def next(self):
if buy_condition:
self.order = self.buy()
if sell_condition:
self.order = self.sell()
cerebro = bt.Cerebro()
cerebro.addstrategy(TestStrategy)
data = bt.feeds.getdate()
cerebro.adddata(data)
cerebro.run()
cerebro.plot()
Backtrader是一个Python库,用于回测交易策略。它强调易用性和模块化。在文中,介绍了如何创建一个策略类,设置参数,定义买入和卖出规则,然后通过Cerebro引擎来运行和可视化策略。通过添加数据feed并执行Cerebro.run(),可以实现策略的自动化运行。
7968





