在策略的参数测试,不同时间段回测,多个标的物回测等,回测策略时由于参数需要反复调整,而且不能记录,下次回测时又要重新设置。平台为了方便参数调整,新增加功能 – 使用代码精确调整“回测系统默认设置”。
可以看到这是一个测试 策略,代码如下:
function main(){
while(true){
LogStatus("测试默认参数!");
Sleep();
}
}
策略参数是这样的:
#### 此时的【回测界面】中参数是如下图的默认设置
/*backtest
start: 2017-03-01
end: 2017-03-02
period: 15
mode: 1
*/
period : 15 15指的是15分钟, 平台支持的周期为 1分钟、5分钟、15分钟、30分钟、 1小时、1天
那么1小时怎么表示? 1小时 = 60分钟, 写成 period : 60
就可以了。
那么1天怎么表示? 1天 = 24 * 60 分钟, 写成 period : 1440
就可以了。
mode: 1 mode 指的是 回测的模式, 回测系统支持 模拟级别回测
, 实盘级别回测
。 这里1代表的是下拉框的索引, 0 为 模拟级别回测
, 1为实盘级别回测
。
/*defaults
number : 0
bool: false
string: Hello BotVS!
comboBox : 2
*/
comboBox : 2 这个2 指的是 下拉框的索引, 下拉框第一个选项的索引是0, 第二个选项的索引是1,第三个选项的索引是2。
加密串 类型参数 和 字符串类型 相同操作设置。
Javascript
/*backtest
start: 2017-03-01
end: 2017-03-02
period: 15
mode: 1
*/
/*defaults
number : 0
bool: false
string: Hello BotVS!
comboBox : 2
*/
function main(){
while(true){
LogStatus("测试默认参数!");
Sleep();
}
}
Python
'''
/*backtest
start: 2017-03-01
end: 2017-03-02
period: 15
mode: 1
*/
/*defaults
number : 0
bool: false
string: Hello BotVS!
comboBox : 2
*/
'''
def main():
Log("OK")
### 刷新一下,然后看看回测页面 与 之前有没有变化。(注意: 代码修改的默认参数设置在第一次进入页面时生效,中途修改不生效,保存后刷新即生效)。
可以看到,不论是 “回测系统的默认参数” ,还是 “策略的默认参数” ,都根据代码做出了相应的修改。 保存需要的设置,再也不用点来点去设置回测参数了。
这样在第一次 以代码形式 设置 默认回测参数 时就不用手写了, 可以在回测页面设置好,直接插入到代码中。
https://www.fmz.com/strategy/40155
注: 改动 args 调整为 defaults
例如: 在设置完回测选项时(比如 时间、交易所、K线周期 等等) 可以点击 策略编辑页面的 “保存回测设置” 按钮, 将回测配置 以代码形式保存在策略中,下次回测会以此代码 默认配置回测选项。
代码会自动添加到编辑区最开始,以注释形式保存。
这样 随手保存下,下次就不用再配置回测信息了。
如果调整了 回测 的交易所对象的 费率设置:
然后 保存回测设置 ,就可以看到 回测的 设置 中出现了 一个费率设置。
# 注意: 尽量不要手动修改 或者 设置 回测设置 (即 backtest 段代码) 代码。