回测引擎
项目描述
backtrader
Yahoo API 注意:
[2018-11-16] 经过一些测试,似乎可以通过网络界面(或API v7)再次依赖于数据下载
票据
票据系统通常被滥用来请求有关示例的建议。
对于 反馈/问题/… 使用 社区
这里是一个简单的移动平均交叉示例。这可以通过几种不同的方式完成。使用文档(和示例)吧!
from datetime import datetime import backtrader as bt class SmaCross(bt.SignalStrategy): def __init__(self): sma1, sma2 = bt.ind.SMA(period=10), bt.ind.SMA(period=30) crossover = bt.ind.CrossOver(sma1, sma2) self.signal_add(bt.SIGNAL_LONG, crossover) cerebro = bt.Cerebro() cerebro.addstrategy(SmaCross) data0 = bt.feeds.YahooFinanceData(dataname='MSFT', fromdate=datetime(2011, 1, 1), todate=datetime(2012, 12, 31)) cerebro.adddata(data0) cerebro.run() cerebro.plot()
包括一个功能齐全的图表。试一试!这包括在示例中 sigsmacross/sigsmacross2.py。旁边是 sigsmacross.py,可以从命令行进行参数化。
特性
用Python编写的实时交易和回测平台。
与以下实时数据源和交易进行交互
Interactive Brokers(需要 IbPy 并从已安装的 pytz 中受益很大)
视觉图表(需要 comtypes 的分支,直到拉取请求集成到版本中,并从 pytz 中受益很大)
(需要 oandapy)Oanda(仅限REST API - v20在实施时未支持流式传输)
从csv文件、在线来源或从pandas和blaze获取数据源
数据过滤器,例如将每日K线分解成块以模拟日内或与Renko砖块一起工作
支持多个数据源和多个策略
一次支持多个时间框架
集成重采样和回放功能
逐步回测或一次性回测(策略评估除外)
集成指标库
TA-Lib指标支持(需要python ta-lib,请参阅文档)
轻松开发自定义指标
分析器(例如:时间回报率、夏普比率、SQN)和pyfolio集成(已弃用)
灵活定义佣金方案
集成经纪商模拟,包括Market、Close、Limit、Stop、StopLimit、StopTrail、StopTrailLimit和*OCO*订单,括号订单,滑点,成交量填充策略和对期货类工具的连续现金调整
自动化抵押的尺寸器
收盘价作弊和开盘价作弊模式
调度器
交易日历
绘图(需要matplotlib)
文档
博客
在以下位置阅读完整文档
内置指标列表(122个)
Python 2/3支持
Python >= 3.2
它还与 pypy 和 pypy3 兼容(不支持绘图 - 在 pypy 下不支持 matplotlib)
安装
backtrader是自包含的,没有外部依赖项(除非您想进行绘图)
从 pypi
pip install backtrader
pip install backtrader[plotting]
如果未安装matplotlib并且您想进行一些绘图
以下是一个IB数据源/交易的示例
IbPy似乎不在PyPi中。请执行以下操作之一
pip install git+https://github.com/blampe/IbPy.git或者(如果系统中没有git)
pip install https://github.com/blampe/IbPy/archive/master.zip
对于其他功能,如:Visual Chart、Oanda、TA-Lib,请参阅文档中的依赖项。
从源代码安装
将源代码中的backtrader目录放置在您的项目目录中
版本号
X.Y.Z.I
X: 主版本号。除非进行重大更改,如使用numpy的全面重写,否则应保持稳定。
Y: 次版本号。在添加完整的新功能或(上帝禁止)不兼容的API更改时更改。
Z: 修订版本号。在更新文档、小更改和小错误修复时更改。
I: 已集成到平台中的指标数量
项目详细信息
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码发行版
构建发行版
backtrader-1.9.78.123-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9a07a516b0de9155539a35c56e9404d8711dd7020b3d37b30495e83e1b9d5dfd |
|
MD5 | 890e9eca5774fb2a4ab6208aec691c36 |
|
BLAKE2b-256 | f3ef328c6ec332435f63b3e18febd263686b8ba07e990676a862cc8522ba38f5 |