我们今天来看vnpy_ctastrategy,CTA策略引擎模块。首先我们先熟悉一下cta_backtesting。为什么选用vnpy来作为量化交易的回测框架,最直接的原因就是vnpy是国内比较好的一个开源的量化交易框架,我们可以通过分析其源码,来学习和熟悉量化交易。在具备一定能力后,可以基于此框架改写自己的量化交易框架。 开源地址:GitHub - vn...
1、导入回测引擎和CTA策略 2、设置回测参数 3、载入数据和策略 4、统计盈亏情况 --到此需要数据了,稍后搞数据 投资组合回测 多个策略回测,每个策略都有一个BacktestingEngine对象 创建run_backtesting函数,初始化每个策略的engine 分别进行单策略回测,得到各自的DataFrame,除空值后即得到投资组合的DataFrame show_portaf...
但同时也要注意,量化交易回测并不能保证未来市场的表现,投资者仍需谨慎决策。本文中的贴图也仅是针对历史行情进行参数优化后的表现。 界面美化,具体修改方式不再赘述,代码位于 \veighna_studio\Lib\site-packages\vnpy_ctabacktester\ui目录。 交易滑点、合约乘数、价格跳动取合约管理的数据,不再手输入。增加symbol...
- ctaStrategy.json:定义要批量回测策略,其实和VNPY2默认的CTA策略文件是一样的,这样就可以直接用实盘CTA策略文件进行批量回测了,或着计算组合收益。示例格式如下: 1234567891011121314151617 { "BollChannelStrategy_MA8888.CZCE": { "class_name": "BollChannelStrategy", "vt_symbol": "MA8888.CZCE", "setting"...
main_engine.add_app(CtaBacktesterApp) 在全局配置中输入自己mongoDB数据库的用户名/密码等链接信息。 打开CTA回测界面: 需要先将历史行情数据载入,因为之前全局用的是自己mongoDB数据库的配置,因此确保在数据库的 db_bar_data 中预先存储了需要历史回测的品种的历史行情数据。
1 vnpy中CTA回测是一个没有保证金参数的回测 1.1 看看BacktesterEngine的run_backtesting()函数 这...
在安装vnpy时,下载最新的开源软件包,并按照指示逐步安装,确保与所使用的Python版本兼容。在vnpy的run.py中,插入代码开启CTABacktester,需要在全局配置中输入自己的mongoDB数据库的用户名、密码等链接信息。随后,打开CTA回测界面,确保已将所需的历史行情数据导入数据库,以进行高效回测。回测数据包含...
在vnpy的run.py文件中,插入代码以启动CTABacktesterAPP,并配置连接到MongoDB数据库。打开CTA回测界面,先导入所需的历史行情数据至数据库(确保在db_bar_data中已有所需数据)。设置参数,点击“开始回测”运行,获取回测结果,包括资金、收益、最大回撤等关键指标。成功后,修改vn.py代码,集成回测...
这一部分就是根据自行编写好的策略计算一些指标或者其他的量,根据相应的规则发出买卖信号。回测和实盘用的是同一个文件。 Demo路径: vnpy/trader/app/ctaStrategy/strategy/**strategy 说明: 策略class主要包括这几个部分: OnTick:收到tick行情推送,生成相应的bar(主要通过app/ctaStrategy/ctaTemplate.py中的BarGenera...