手机版 | 登陆 | 注册 | 留言 | 设首页 | 加收藏
当前位置: 网站首页 > python教程 > 文章 当前位置: python教程 > 文章

量化交易python培训北京武汉深圳量化交易python代码开发招聘

时间:2022-05-09    点击: 次    来源:网络    作者:佚名 - 小 + 大

量化交易python培训北京武汉深圳量化交易python代码开发招聘


下载地址

https://share.weiyun.com/tIMc8ewb


资料目录

Python股票量化投资视频课程(25集完结)
Python股票量化策略培训预习材料(视频讲解+素材)
《Python机器学习与量化投资》电子书
《Python量化交易》.pdf
《Python与量化投资:从基础到实战》.pdf
《零起点TensorFlow与量化交易》.pdf
机器学习在量化投资中的应用研究_汤凌冰著 pdf
量化交易之路:用Python做股票量化分析(高清).pdf
量化投资以Python为工具.pdf


举例

1.导入库
BacktestingEngine 是策略回测引擎,OptimizationSetting 用于参数优化,MINUTE_DB_NAME 用 于 在 MongoDB 数 据 库 中 存 放 分 钟 级 别 数 据 ,AtrRsiStrategy 是本次需要测试的策略。
%matplotlib inline
from vnpy.trader.app.ctaStrategy.ctaBacktesting import BacktestingEngine,
OptimizationSetting, MINUTE_DB_NAME
from vnpy.trader.app.ctaStrategy.strategy.strategyAtrRsi import AtrRsiStrategy
2.创建回测引擎对象
创建回测引擎对象,方便以后被调用:
engine = BacktestingEngine()
3.设置回测使用的数据
设置回测使用的数据为 K 线。在 MongoDB 数据库的分钟级别数据中找到IF0000 的合约数据,然后设置开始回测的时间为 2015 年 1 月 1 日。
engine.setBacktestingMode(engine.BAR_MODE) # 设置回测使用的数据为 K 线engine.setDatabase(MINUTE_DB_NAME, 'IF0000') # 设置使用的历史数据库engine.setStartDate('20150101') # 设置回测用的数据起始日期
4.配置回测引擎参数
滑点设置为股指 1 跳,每一跳为 0.2;手续费为万分之 0.3;股指的合约大小是每点 300 元,即 300;股指合约的最小价格变动单位是 0.2;然后设置起始资金为 100 万元。
engine.setSlippage(0.2) # 设置滑点为股指1 跳
engine.setRate(0.3/10000) # 设置手续费万分之0.3
engine.setSize(300) # 设置股指合约大小
engine.setPriceTick(0.2) # 设置股指最小价格变动
engine.setCapital(1000000) # 设置回测本金
5.在引擎中创建策略对象
d = {}用于在回测时直接修改参数,而不需要重新打开策略文件进行修改。
Engine.initStrategy()用于创建策略对象,创建好后就可以直接运行回测了。
d = {'atrLength': 11} # 策略参数配置
engine.initStrategy(AtrRsiStrategy, d) # 创建策略对象
6.运行回测
engine.runBacktesting() # 运行回测
runBacktesting()意味着开始进行策略回测,同时会打印出相关数据回放信息,如图 4-10 所示。
图 4-10 数据回放信息
7.显示逐日回测结果
engine.showDailyResult()
显示逐日回测统计的相关指标,如图 4-11 所示,然后展示的是 4 幅子图:资金子图、回撤子图、每笔交易盈亏子图和每笔盈亏分布子图,分别如图 4-12 到图4-15 所示。
8.显示逐笔回测结果
engine.showBacktestingResult()
同样显示的是回测相关指标和展示 4 幅子图。不同的是,其统计方式是按照“开仓-平仓”的方式进行逐笔统计的。
9.显示前 10 条成交记录
成交记录会保存在成交字典(tradeDict)中,通过查询成交字典可以得到交易时间、多空方向、成交价格和成交数量等信息。
for i in range(10):
d = engine.tradeDict[str(i+1)].__dict__
print 'TradeID: %s, Time: %s, Direction: %s, Price: %s,
Volume: %s' %(d['tradeID'], d['dt'], d['direction'], d['price'], d['volume'])
其效果如图 4-16 所示
图 4-16 显示前 10 条成交记录


上一篇:廖雪峰python基础教程廖雪峰python博客官网进不去在哪能看pdf

下一篇:没有了

推荐阅读
声明 | 联系我们 | 关于我们
备案ICP编号  |   QQ:2151239526  |  地址:北京市东城区  |  电话:16605168200  |