您现在的位置:程序化交易>> 期货公式>> 交易开拓者(TB)>> 开拓者知识>>正文内容

开拓者 MarketPosition 用法 总结 [开拓者 TB]

  • 咨询内容: 我使用
    if(open > con1 and MarketPosition ==0)
    {
      buy(n,open);
    }
    这样的模式来开仓,开仓成功后,还是会一直进到函数体中,也就是MarketPosition ==0还一直成立,怎么回事啊?MarketPosition 的值必须走完当前bar才更新吗?我买入成功后,信号也出现了,信号也没有消失,为什么MarketPosition 的值未更新?【id:穿堂风】

    回复:MarketPosition 好像是下一个BAR才会更新值,简单说,marketposition实盘不能用,只能用来测试【ID:文静的狮子 】

     

  • TB技术人员: Marketposition是下一根Bar才改变

     

  • TB客服: 试写如下代码
    1. Begin

    2.         If(close[1] >open[1])

    3.         {

    4.                 FileAppend("d:\\marketpostion.log"," currentbar: "+text(currentbar)+ "||  执行buy命令前的marketposition值: " +Text(marketposition));

    5.                 Buy(1,open);

    6.                 FileAppend("d:\\marketpostion.log"," currentbar: "+text(currentbar)+ "||  执行buy命令后的marketposition值: " +Text(marketposition));

    7.         }

    8. end
    复制代码得出信号如下图:

    123.png (4.52 KB, 下载次数: 3) 2012-7-30 22:49:10 上传下载次数: 3

    公式所写日志记录如下:

    444.png (57.28 KB, 下载次数: 2) 2012-7-30 22:54:44 上传下载次数: 2

    综上可得知:在本K线上,marketposition的初始值为0,在执行buy语句前为0,buy之后就会变为1。当前信号所在K线,每执行一次,marketposition都是从初始值0开始运行,buy之后变成1 。
    周而复始,直到本K线的最后一个tick走完之后,将1的做为下一个K线的markeposition的初始参与计算 。

     

  • 网友回复: Mark  这个需要学习

     

  • 网友回复: 本帖最后由 shenpei715 于 2012-8-7 10:26 编辑
    小米 发表于 2012-7-30 22:58
    试写如下代码得出信号如下图:


    非常感谢,林老师!
    不只提供了一个问题的答案,重要的是给出了一种排查出错的思路方法。

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 262069696  点击在线交流进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容