您现在的位置:程序化交易>> 期货公式>> 文华财经>> 文华财经知识>>正文内容

有关模型编写问题 [文华财经]

  • 咨询内容:  为了简化问题,只提取模型的部分关键代码: MA10:MA(CLOSE,N1);MA60:MA(CLOSE,N2);C>=MA(C,10)&& C<MA(C,10)+2*MINPRICE,BK;C>=MA(C,60)&& C<MA(C,60)+2*MINPRICE,BK;C<MA(C,10),SP;C<MA(C,60),SP;AUTOFILTER;

    我的问题:


    文件名:1.png



    文件名:2.png

    如上图所示为第一个图中为开仓信号,第二个图中为平仓信号(C<MA(C,10),SP), 在平仓信号出现那根K线中,其实本来是不平仓的,因为它当时收盘价大于MA(C,60),不满足C<MA(C,60),SP。 可如今却平仓了,即出现了矛盾情况。所以有没有什么函数或其他代码加进去后,就可以解决掉这种互相矛盾的问题, 让它们的两个平仓信号各司其职呢?

     

     来源:程序化99

  • 文华技术人员:  您的这种思路可以使用分组指令实现,C<MA(C,10),SP;只平C>=MA(C,10)开的仓,这样改下:
    MA10:MA(CLOSE,N1);MA60:MA(CLOSE,N2);C>=MA(C,10)&& C<MA(C,10)+2*MINPRICE,BK('A');C>=MA(C,60)&& C<MA(C,60)+2*MINPRICE,BK('B');C<MA(C,10),SP('A');C<MA(C,60),SP('B');AUTOFILTER;  关于分组指令用法:http://www.wenhua.com.cn/guide/wh8-v8.2/view6.html#20

     

     来源: WWW.CXH99.COM

  • 文华客服:  嗯,用分组指令确实可以解决该问题。

    还有两个问题:一、C>=MA(C,10)&& C<MA(C,10)+2*MINPRICE,BK('ZZ',5);C>=MA(C,60)&& C<MA(C,60)+2*MINPRICE,BK('B',5);C<MA(C,10),SP('ZZ',5);C<MA(C,60),SP('B',5);SETDEALPERCENT(15);
    当这个模型中出现BK、SP后面附带手数且同时使用SETDEALPERCENT(15)函数时,此代表着什么含义呢? 结果是每次建仓还是以总资金的15%为准,但平仓还是以5手为准吗?还是什么含义呢?

     二、资料说:分组指令对组的命名规则为,只能用 A——I 这九个字母中的其中几个命名。最多支持分成十组。
    可我问题一中使用BK('ZZ',5),也没提示说语法错误呢,为什么呢?
     

     

  • 网友回复:  分组指令只支持字母ABCDEFGHI这10个字母,不能自己随便定义的,比如ZZ就不可以,您把ZZ换成A,或者出了B以外的另外9个字母就可以了
    建仓以资金为主,以可用资金的15%来开仓,不受5手的控制,平仓依旧按5手来平





     

  • 网友回复:  一、那为何没提示语法错误呢?


    文件名:44.png


    二、当同个模型中出现BK、SP后面附带手数且同时使用SETDEALPERCENT(15)函数,后来如果亏得很多, 有可能出现建仓和平仓分别都为1手的情况的吧? 

 

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

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


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

相关文章

    没有相关内容