Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:关于错误信号的问题,暂且这样说啊

1楼
bj_mxl 发表于:2011/1/10 21:31:31

关于错误信号的问题,暂且这样说啊。

在进行简单的程序化编程的过程中,发现所设置条件执行,但是有错误

 

以下是部分代码,在执行的过程中,从图中可以明显看出已经有了持仓即  HOLDING <>0 可是程序继续开空。不知道是什么原因

 

  IF(MMINW1>0 and W1>0 and HOLDING >0) then
    //SPK;卖平后卖开新仓
    begin 
         SELL(MMINW1>0 and W1>0,abs(HOLDING),market ); //=平多

 
       BUYSHORT(MMINW1>0 and W1>0,abs(HOLDING),market);//=开空

    end 
   
   IF(MMINW1>0 and W1>0 and HOLDING = 0) THEN
     //无仓直接 卖开新仓
    begin 
      
       BUYSHORT(MMINW1>0 and W1<=0,2,market);//=开空

    end 

 

对应图片无法上传,2.02

 

 同时,加入止损代码后,出现连续的开空,平空现象,也找不到原因

 

[此贴子已经被作者于2011-1-10 21:38:26编辑过]
2楼
金字塔 发表于:2011/1/11 8:53:25

请严格按函数IF的语法写,如

 

IF (MMINW1>0 and W1>0 and HOLDING >0) then
    //SPK;卖平后卖开新仓
    begin 
         SELL(MMINW1>0 and W1>0,abs(HOLDING),market ); //=平多

 
       BUYSHORT(MMINW1>0 and W1>0,abs(HOLDING),market);//=开空

    end 
   
   IF (MMINW1>0 and W1>0 and HOLDING = 0) THEN
     //无仓直接 卖开新仓
    begin 
      
       BUYSHORT(MMINW1>0 and W1<=0,2,market);//=开空

    end 

3楼
王锋 发表于:2011/1/11 9:59:50
请楼主多看看金字塔的公式编写教程,高级篇的控制语句部分,仔细看看IF THEN 语句的语法。
4楼
fly 发表于:2011/1/11 15:15:22

个人认为楼主的语句,基本等同于以下语句(开仓改成了具体数量)

IF MMINW1>0 and W1>0  then
       begin 
         SELL(HOLDING >0,0,market ); //若有多仓,则平多;没有多仓,自然也就不执行此句
         BUYSHORT(HOLDING =0,1,market);//开空

       end  

5楼
金字塔 发表于:2011/1/11 15:33:43

按语法,只要在IF后加个空格就行,如2楼那样

共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01563 s, 3 queries.