欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]请高手帮忙看看是有逻辑错误还是函数或语句使用有问题?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有5037人关注过本帖平板打印复制链接

主题:[求助]请高手帮忙看看是有逻辑错误还是函数或语句使用有问题?

帅哥哟,离线,有人找我吗?
leowyn
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:40 积分:149 威望:0 精华:0 注册:2010/9/25 17:25:02
[求助]请高手帮忙看看是有逻辑错误还是函数或语句使用有问题?  发帖心情 Post By:2010/10/11 16:40:44    Post IP:183.69.161.211[只看该作者]

仅图表显示用不涉及头寸管理:

 

省略N行

 

///////////////////////////////////////////////////////////////////////////////////////////////////////

 IF HOLDING=0 THEN
 BEGIN
     //多头开仓,"开多"囊括了所有开多条件.只要在可开多区且,满足任意一个就开仓.

     IF 交易时间 AND 开多 AND 大胆做多区 THEN
     BEGIN
      //为便于相互调用,条件语句多数未设定区间限制,故此处还是有限制的必要.
         BUY(1,P,LIMITR,CLOSE);
            PLAYSOUND(交易时间 AND 开多 AND 大胆做多区,'D:\Weisoft Stock\sound\BK.wav');
        END
   
     //空头开仓,"开空"囊括所有开空条件...............

      IF 交易时间 AND 开空 AND NOT(大多相强区) and not(红区) and not(红补) and not(趋势纯红) and 开空必要条件 THEN
      BEGIN
         BUYSHORT(1,P,LIMITR,CLOSE); 
         PLAYSOUND(交易时间 AND 开空 AND NOT(超级强势区) AND NOT(大多相强区),'D:\Weisoft Stock\sound\SK.wav');
        END
 END

 ///////////////////////////////////////////////////////////////////////////////////////////////
 
IF HOLDING>0 THEN BEGIN
     //多头平仓. "A平多"代表满足平多的任一条件.当有平多单条件满足时,需要先判断当前点位所处区间,并判断出"开多单时"的点位所处区间(大区)及开多性质(大中小波),开仓点位不同,平仓条件不同.
   IF ENTERBARS>1 AND A平多 THEN
   BEGIN

 

       if 大波开多 or 纯超强区 then
       begin  

               IF 平多1 THEN
                    SELL(1,HOLDING,MARKET,CLOSE);
                    PLAYSOUND(平多1,'D:\Weisoft Stock\sound\SP.wav');
                    GOTO QUITLINE;
       end  
   
   
        if 大波开多 and 混超强区 then
        begin  //细化平多仓.混超区开的大波多单,平仓条件相对纯超区宽松
                IF 平多2  THEN    //只要是大波开仓就不能用普平多条件.否则太快平错失太多机会.
                    SELL(1,HOLDING,MARKET,CLOSE);
                    PLAYSOUND(平多2,'D:\Weisoft Stock\sound\SP.wav');
                    GOTO QUITLINE;
        end  
   
        if not(大波开多) AND NOT(纯超强区) then
        begin 
                 IF 平多 OR 平多1 OR 平多2  or 平多3 THEN
                      SELL(1,HOLDING,MARKET,CLOSE);
                      PLAYSOUND(平多 OR 平多1 OR 平多2 or 平多3,'D:\Weisoft Stock\sound\SP.wav');
         GOTO QUITLINE;
         end
  END
 
     //多头收盘平仓
 QUITLINE@ IF NOT(交易时间) THEN
     BEGIN
            SELL(1,HOLDING,LIMITR,CLOSE);
            PLAYSOUND(NOT(交易时间),'D:\Weisoft Stock\sound\SP.wav');            
      END
 END

 {
 通过GOTO无条件跳转保证不会重复开平仓.问题似乎解决了. 

 }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////

 

平空代码省略.

 

现在的问题是.无法准确定位开平仓点.总是乱的.不知道那里的错误

还请高手指导一下.是不是条件控制和判断语句逻辑错误还是那里的问题.

我刚学金字塔编程,请多帮忙.

[此贴子已经被作者于2010-10-11 16:41:37编辑过]

 回到顶部