现在要魔改的地方,可能是所有量化交易软件的通病:界面上显示的参数、状态值,以及添加策略运行的时候,所显示的标题都是英文的参数名。这对搞技术的人来说无关紧要,但要是给非技术人员来运用,那是真的很麻烦的一件事情。
这里要表扬无限易V2版本,它率先来解决了这个“人性化”问题。包括我现在的方式,我也是完全的复制并升级了它的方式。使用BaseModel定义解决了中文显示的问题;可输入值的默认值、最大最小值等条件;以及下拉选择框数据的定义等等。能够极大的扩展数据的定义和输入参数的可操作性,同时也避免了一堆定义,然后再增加到parms的麻烦。
添加图片注释,不超过 140 字(可选)
以下,数据模型的定义演示,以及显示效果。三种类型显示都会自动保存和加载,但在显示上有所区分。
Params """参数映射模型 显示在窗口上"""
State """状态映射模型 显示在窗口上"""
Variable """临时变量,保存但不显示"""
增加了回调函数:
on_trading """ 在 on_start 后触发,不同的是,交易状态 self.trading == True """ on_reset """ 画面点击重置时的回调 """
构造函数增加: hot和gateway_name,以后面指定账户和主力合约交易做准备
以下是对CtaTemplate的部分修改,主要增加和修改了对数据模型的读写,以及: