
BackTrader
文章平均质量分 93
从BackTrader源码解读,定制开发XBackTrader,支持多进程并行回测,支持年化收益率、最大回撤、最大回撤天数、夏普率、信息比率、索提诺比率、卡玛比率、特雷诺比率等常用业绩评价指标
天山老妖
多年私募基金量化IT工程师从业经验,专注于Linux/C++、Qt、Python、量化IT技术,具有丰富的中频、高频量化交易系统开发和实盘交易运维经验,熟悉CTP、盛立REM、易达YD、Xele期货柜台API,宽睿OES、华鑫Tora、中泰XTP股票柜台API。
QuantFabric开源:https://github.com/QuantFabric
展开
-
Strategy模块
Strategy类是用户开发回测策略的基类,定义了一系列的回调函数,用户可以继承Strategy类并重写回调函数,在回调函数内编写具体的交易逻辑。自定义Strategy的流程:继承Strategy定义类:定义类及相关参数(params参数都会转化为属性直接访问),用于更改交易策略中变量/参数的值,可用于参数调优。params = (__init__函数初始化数据:必选,定义构建策略买卖信号所需的数据和指标,在其中声明的任何指标都会在next()方法调用之前进行计算。原创 2024-12-07 17:41:58 · 1223 阅读 · 0 评论 -
DataFeed模块
Backtrader中Feeds模块提供了灵活的数据加载和处理功能,支持多种数据源和格式,可以添加一个或者多个股票数据。Feed是一个数据源对象,负责向策略提供时间序列数据,如股票的开盘价、收盘价、成交量等。每个Feed对象代表一个数据源,可以是本地的CSV文件,也可以是实时的股票数据。GenericCSVData:用于加载通用的CSV格式数据。YahooFinanceData:用于从Yahoo Finance下载数据。PandasData:用于从Pandas DataFrame加载数据。原创 2024-12-07 17:40:36 · 1032 阅读 · 0 评论 -
Cerebro核心模块
Cerebro是backtrader的核心控制系统,构建了策略回测的基础框架,具体细节则在组件内部实现。收集所有的输入(data feeds),执行者(strategies),观测者(Observers)、评价者(Analyzers)以及文档(Writers),保证系统在任何时候都正常运行。执行回测或者实时数据输入以及交易。返回结果。画图。原创 2024-11-30 12:16:12 · 752 阅读 · 0 评论 -
BackTrader核心特性
Lines是BackTrader中一个非常重要的概念,每个Strategy、Indicator、Analyzer、Observer实例都会包括一个或多个line,每个line是一系列数据,如Open(开盘价), High(最高价), Low(最低价), Close(收盘价), Volume(成交量), OpenInterest(持仓量,没有则设置为0)等。BackTrader中,不仅输入的数据是数据源,任何indicator(指标)以及任何对输入数据的操作(加,减,比较,求和,求平均等)结果均为数据源。原创 2024-11-30 12:13:55 · 1140 阅读 · 0 评论 -
BackTrader快速入门
品种多:股票、期货、期权、外汇、数字货币;周期全:Ticks级、秒级、分钟级、日度、周度、月度、年度;速度快:pandas矢量运算、多策略并行运算;组件多:内置Ta-lib技术指标库、PyFlio分析模块、plot绘图模块、参数自动优化等;扩展灵活:可以随意搭配组件扩展开发,支持pyflio、empyrica分析模块库、alphalens多因子分析模块库等;可以集成TensorFlow、PyTorch和Keras等机器学习、神经网络分析模块。社区活跃、帮助文档齐全。原创 2024-10-28 08:37:28 · 2460 阅读 · 0 评论