VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • vn.py源码解读(十、参数优化)

任何一个策略,在初步回测之后,都会有一个参数寻优的过程。这个过程vnpy给大家实现了。其实这个是最简单了,说白了就是换参数多跑几次回测嘛。但是,说的直白点,vnpy的参数寻优在代码上来讲是不够高效的,原因很简单,我们其实可以进行一次数据回放就可以完成很多组参数的回测,而不是一组参数回放一次。
 
我们简单过一下代码吧,这部分比较简单。
 
之前我们是配置好之后就调用bactest了,但是如果是优化的话,就换了一个调用的东西了。参数的设置是一样的,不过在进行参数寻优之前,我们要做的就是设置好参数寻优的配置。
 
# 跑优化
    setting = OptimizationSetting()                 # 新建一个优化任务设置对象
    setting.setOptimizeTarget('capital')            # 设置优化排序的目标是策略净盈利
    setting.addParameter('atrLength', 12, 54, 2)    # 增加第一个优化参数atrLength,起始12,结束20,步进2
    setting.addParameter('atrMa', 20, 55, 5)        # 增加第二个优化参数atrMa,起始20,结束30,步进5
这里,只是构建了我们优化时候的参数。
 
engine.runOptimization(TRStrategy, setting)
 
这就是把优化参数考察的策略和对应的设置放入到回测引擎中了。
 
相对来说,其实优化之后,更总要的是对参数对应的回测结果进行分析,但是在vnpy中似乎这个是缺失的,需要好好改进。笔者粗略的加了一个热力图的功能。后续会不断增加这一部分的功能。
 
 
————————————————
版权声明:本文为CSDN博主「钱塘小甲子」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qtlyx/article/details/89388356

相关教程