分享

AI量化平台wxpython整合quantstats,那个年化超过10%的策略们

 AI量化实验室 2023-10-12 发布于北京

原创文章第267篇,专注“个人成长与财富自由、世界运作的逻辑与投资"。

之前的一些策略:

行业指数轮动:一个可实盘策略的“魔改”历程,十年年化15%(策略+代码+数据下载)

年化收益 21%:lightGBM的WFA滚动训练,使用qlib的alpha158因子集

“静待花开的聚宝盘”:年化 17.5%,最大回测 22%,夏普比 1.187的etfs动量轮动(代码下载)

接着搞AI量化平台的GUI,今天两个任务:一是整合quantstats,二是独立弹窗可以编辑策略的toml文件。

QuantStats之间无故报错,查出来是matplotlib的版本问题,将matplotlib由3.2.2升级至3.7.2即可。

使用webpanel来显示quantstats的回测结果:

import wx
import wx.html2 as web


class WebPanel(wx.Panel):
def __init__(self, parent, id=-1):
super(WebPanel, self).__init__(parent, id)

vbox = wx.BoxSizer(wx.VERTICAL)
self.SetSizer(vbox)
self.browser = web.WebView.New(self)
vbox.Add(self.browser, proportion=-1, flag=wx.EXPAND | wx.ALL, border=10)

def show_url(self, url):
self.browser.LoadURL(url)

def show_file(self, filename):
with open(filename, 'r', encoding='utf8') as f:
html_cont = f.read()
self.browser.SetPage(html_cont, "")
self.browser.Show()
elif msg_type == 'DONE':
html = DATA_RESULTS.joinpath(self.combo_proj.GetValue()+'.html')
if os.path.exists(html):
print('显示文件')
self.webpage.show_file(html)

效果如下图所示:

代码已经在星球更新:

wxpython开发,可以使用xwFormBuilder来布局,类似pyQt的QTDesigner。

https://github.com/wxFormBuilder/wxFormBuilder/releases

直接下载编译好的安装包。

可以自动生成python代码:

这一点还是非常方便的,尤其是对wxpython不熟的新手们。

如下代码就实现了当combobox切换时,下边的回测结果会随着改变:

def _combo_changed(self, e):
self._show_html()

def _show_html(self):
html = DATA_RESULTS.joinpath(self.combo_proj.GetValue() + '.html')
if os.path.exists(html):
print('显示文件')
self.webpage.show_file(html)

通过窗口加载策略配置文件:

def _on_edit_proj(self, e):
dlg = DialogProj(None)
with open(DATA_PRJ.joinpath(self.combo_proj.GetValue()+'.toml'), 'r', encoding='utf-8') as f:
config = f.read()

dlg.show_codes(config)
dlg.ShowModal()
dlg.Destroy()

策略编辑是一方面,后续的工作包括数据管理与更新,这是一块。

本地数据库方面,之前使用用CSV/HDF5的方案,更新上会存在麻烦,而使用mongo在本地又显得重,不方便拷贝。今天看到一个方案,使用sqlite这样的关系型数据库,没准可以试试。

然后就是因子分析,因子挖掘,机器模型训练系统。

一些思考:

最近天气实在太热,各种负向新闻似乎有点多。

搞理财久了,老在想,如果给你一个亿财富自由了,你会做什么?

其实可能想不明白,郭宇有郭宇的生活方式,老俞有老俞的生活状态。终归都会做一些有意义的事情,而很多事情,就像游戏中的关卡一样,没有解锁的时候,是很难想象到的。

做好当下的事情,珍惜眼前的生活,不必思虑过多。

但行好事,莫问前程。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多