【Demo】如何利用“策略交互“动态调整策略参数

Author: momox, Date: 2015-12-13 23:30:51
Tags: Tool

策略需要不断的测试调整,参数也经常改来改去,每次都停止再重启,费事费力,还会丢失原来的盈利进度(虽然也可以通过全局参数来恢复),其实botvs已经提供了动态调整参数的途径–”策略交互“


var Interval=2000;

//AAA,BBB为策略中希望动态调整的参数
var AAA=0;
var BBB="hello world";

function main() {
    while(true){
        onTick();
        Sleep(Interval);
    }
}

function onTick(){
    set_command();
    Log("AAA="+AAA,"       BBB="+BBB);
}

//获取动态参数(策略交互内容)
 function set_command() {

     var get_command = GetCommand();//  GetCommand方法是获取参数方法,获取的参数是字符串形式 格式为 "参数名:参数值" 参见BotVS API文档
     if (get_command != null) {
         if (get_command.indexOf("A3:") == 0) {  //如果传入的参数名为A3(以“A3:”打头,即表明是A3参数)

             AAA = (get_command.replace("A3:", "")); //赋值给策略里面的AAA(将打头字符串替换为空,剩下就是我们的参数值)

             Log("AAA变成:" + AAA);
         }
         
          if (get_command.indexOf("B3:") == 0) {  //如果传入的参数名为B3(以“B3:”打头,即表明是B3参数)

             BBB = (get_command.replace("B3:", "")); //赋值给策略里面的BBB(将打头字符串替换为空,剩下就是我们的参数值)

             Log("BBB变成:" + BBB);
         }

     }
 }

Related

More

洋葱 这个要手动的吧?有办法自动触发吗?

jxhbtc 好的 谢谢

jxhbtc 你好 ,这个是要复制到策略里面还是独立运行

洋葱 新手,谢谢指导

momox 问的有点奇怪,自动触发自己写到OnTick函数里面就行了啊,在里面自己判断条件,满足了,该干嘛干嘛

momox 这只是例子,可以独立运行看看效果,但是真正要用是参考我的代码,然后用在你自己的策略里面,用法是把代码复制粘贴到你的策略里面,AAA,BBB改成你自己策略里面的参数