搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略

前言

一个完整的量化交易系统离不开人机交互功能的应用,特别是在回测阶段,我们需要不断更改参数因子、更换交易策略以应对当前的市场。因此创建完整的、功能键全的GUI用户界面至关重要。

我们在【搭建系统|想把聚宽本地化吗?一起来创建GUI版的自定义量化回测平台】实现了基础的回测过程,不够策略是固定在程序文件中的,当我们要修改策略代码的时候需要停止程序,然后再次运行。

能不能直接在线修改策略代码呢?接下来我来分享下一个解决方案吧!

实现过程概述

前几期的文章中我们介绍了通过wxPython布局管理实现多只股票走势对比界面。

这一期我们在此基础上作了以下改进:

1 点击策略列表后会打开对应的文件
2 在线修改文件中的代码,修改后点击保存
3 点击回测时会重新加载策略函数

策略列表做了一些优化,之前是显示了策略的参数,点击时候仅仅是把参数传递到回测交易信号模块中,这里我们直接关联到了策略的代码,点击之后就会打开py文件,如下图所示:

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第1张图片

这一步我们用了wxpython的TextCtrl控件去显示py文件内容(虽然没有pycharm显示那么人性化,但是可以进行简单的代码修改)。

可以注意到在策略列表里面的函数那列,如果没有定义策略的话要在对应的集合中填写未定义,如下所示:

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第2张图片

不过可以放心的是,点击的策略如果没有定义函数,我们也做了对话框的提示,如下所示:

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第3张图片

修改代码后,点击保存,这样就可以把代码重新回写到py文件中去。

到这一步都算比较简单的,最好稍有点麻烦的是如何把修改完的代码起作用。这里涉及到两个小技巧,一个是reload模块的用法,另一个是把字符串转换为函数的方法。

每次修改完成后,动态加载下模块,这样即可。

接下来我们展示下效果和操作的方法。

1 点击策略—> 修改策略的N1参数—> 点击保存—> py文件对应更改。如下所示:

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第4张图片

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第5张图片

2  点击回测—> 按照最新修改的策略代码执行回测,可以多尝试几次看下是否符合预期。如下所示:

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第6张图片

搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略_第7张图片

往期搭建框架内容回顾:

搭建系统|想把聚宽本地化吗?一起来创建GUI版的自定义量化回测平台

搭建系统|行情软件可没有!多股票投资组合用的GUI分析界面

加入知识星球可获取完整代码

更多量化交易内容扫码加入星球!—————————————————
微信关注:‘元宵大师带你用Python量化交易’

你可能感兴趣的:(搭建系统|在线改策略很便捷!试一试本地GUI回测平台动态改策略)