金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2082|回复: 1

老师帮我看看交易模块

[复制链接]

6

主题

23

帖子

23

积分

Rank: 1

等级: 新手上路

注册:
2023-6-5
曾用名:
发表于 2023-6-14 13:18 | 显示全部楼层 |阅读模式
现在只有趋卖市开空和空头止盈能执行,不知道哪里出的问题,快吐血了。。
截图202306141314276085.png
截图202306141314558295.png
[PEL] 复制代码
//交易条件
手数:=1;
{趋买市}
 IF (大趋势=1 OR  大趋势=4) AND 开多次数=0 THEN BEGIN
   趋买市开多:BUY(确认多=1 AND HOLDING=0,手数,THISCLOSE);   
   开多次数:=1;
   开多状态:=1;//开仓状态1,多趋势首仓,2多趋势加仓,3震荡仓和空趋势下的多仓
   END  
 IF (大趋势=1 OR  大趋势=4) AND 开多次数=1 THEN BEGIN
    趋买市加多:BUY(确认多=1 AND HOLDING>0 AND openprofit>0 ,手数,THISCLOSE); 
    开多次数:=2;  
    开多状态:=1;//开仓状态1,多趋势首仓,2多趋势加仓,3震荡仓和空趋势下的多仓
 END  
 IF (大趋势=1 OR  大趋势=4) AND 开空次数=0 THEN BEGIN
    趋买市开空:BUYSHORT(确认空=1 AND HOLDING=0,手数,LIMIT,C+2*MINDIFF );
    开空次数:=1;     
    开空状态:=3;
  END
{趋卖市} 
  IF 大趋势=3 OR  大趋势=2 AND 开多次数=0 THEN BEGIN
    趋卖市开多:BUY(确认多=1  AND HOLDING=0,手数,LIMIT,C-2*MINDIFF);
    开多次数:=1;
    开多状态:=3;//开仓状态,1,多趋势首仓,2多趋势加仓,3震荡仓和空趋势下的多仓
  END
 
  IF  大趋势=3 OR  大趋势=2 AND 开空次数=0 THEN BEGIN
   开空次数:=1;
   趋卖市开空:BUYSHORT(确认空=1 AND HOLDING=0,手数,THISCLOSE);
   开空状态:=1;
  END 
  IF (大趋势=3 OR  大趋势=4) AND 开多次数=1 THEN BEGIN
    趋卖市加空:BUYshort(确认空=1 AND HOLDING<0 AND openprofit>0 ,手数,THISCLOSE); 
    开空次数:=2;  
    开空状态:=1;
  END

  
  {震荡市}
 
 
IF 大趋势=5 THEN BEGIN 
	IF 开多次数=0 THEN BEGIN
		 震荡市开多:BUY((震荡多=1 OR (确认多=1 AND 趋势=1)) AND HOLDING=0,手数,LIMIT,C-2*MINDIFF);
		  开多次数:=1; 
          IF(趋势=1, 开多状态=1,IF(趋势=5,开多状态=4,开多状态=3)) ;            
         END
     ELSE IF 开空次数=0 THEN BEGIN
       震荡市开空:BUYSHORT(((确认空=1 AND 趋势=3) OR 震荡空=1) AND HOLDING=0,手数,LIMIT,C+2*MINDIFF );
          IF( 趋势=4 ,开空状态=1, IF(趋势=5,开空状态=4,开空状态=3));
        开空次数:=1; 
        END 
      END

   
/////////////////////////////////
//止盈
   
 //空单移动止盈
VARIABLE:YDZY=0;     //移动止盈总开关,1为开,0为关
VARIABLE:HIGHPRICE=0,LOWPRICE=0; //保存开仓后的最高价、最低价
VARIABLE:DHCDS=6,KHCDS=6;   //多、空单回撤点数
VARIABLE:DYLDS=10,KYLDS=10;   //多、空单盈利点数,当盈利点数达到这个标准后,如果回撤达到上面的参数值就平仓
VARIABLE:Z3B1:=1, 空单止盈条件3=0, 空单止盈条件4=0,多单止盈条件3=0, 多单止盈条件4=0;    //赚3保1开关
IF(开多状态=3 or 开空状态=3,ydzy=1,YDZY=0);
IF(开多状态=4 or 开空状态=4,ydzy=1 AND  Z3B1=1,YDZY=0 AND  Z3B1=1);
//空单移动止盈
 IF YDZY=1 THEN BEGIN  //每周期判断是否创新低
  IF L<LOWPRICE THEN BEGIN
   LOWPRICE:=L;
  END   
  //如果盈利超过10点之后回撤达到3点,就平仓,保住盈利
  IF ENTERPRICE-LOWPRICE>=KYLDS THEN BEGIN
   IF L-LOWPRICE>=KHCDS AND  开空次数=1  THEN BEGIN  //回撤超过6点
    空单止盈条件3=1;
   END 
  END 
 END
 
 //空单赚5保1
 IF Z3B1=1 THEN BEGIN
  IF ENTERPRICE-LOWPRICE>=5 THEN BEGIN
   IF ENTERPRICE-L<=1.2 THEN BEGIN
     空单止盈条件4=1;
   END
  END
 END


//多单移动止盈
 IF YDZY=1 THEN BEGIN
  //每周期判断是否创新高
  IF H>HIGHPRICE THEN BEGIN
   HIGHPRICE:=H;
  END 
 
  //如果盈利超过10点之后回撤达到6点,就平仓,保住盈利
  IF HIGHPRICE-ENTERPRICE>=DYLDS THEN BEGIN
   IF HIGHPRICE-H>=DHCDS THEN BEGIN  //回撤超过6点
     多单止盈条件3=1;
   END 
  END 
 END
 //赚5保1
 IF Z3B1=1 THEN BEGIN
  IF HIGHPRICE-ENTERPRICE>=5 THEN BEGIN
   IF H-ENTERPRICE<=1.2 THEN BEGIN
      多单止盈条件4=1;
 
   END
  END
 END




 //止盈
 多单止盈条件1:=CROSS(波段鬼,趋势线) and ref(波段鬼,1)>85;
 多单止盈条件2:=REF(趋势,3)=1 and  noT(趋势=1);
 空单止盈条件1:=CROSS(趋势线,波段鬼) and ref(波段鬼,1)<15;
 空单止盈条件2:=REF(趋势,3)=3 and  noT(趋势=3);
 
 
//多单止盈
IF HOLDING>0 AND ((CROSS(波段鬼,趋势线) and ref(波段鬼,1)>85) or (REF(趋势,3)=1 and  noT(趋势=1)))  THEN  begin 
	多头止盈:SELL(1,HOLDING,MARKET);
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
 开空状态=0;
	end 
IF HOLDING>0 AND 开多状态=2 AND 开多次数=2  AND  (多单止盈条件1 OR 多单止盈条件2) THEN BEGIN
	多单止盈:SELL(1,HOLDING,MARKET); 
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
	end 
 
 IF HOLDING>0 AND 开多状态=3 AND  多单止盈条件3=1 THEN BEGIN
多移止盈1:SELL(1,HOLDING,MARKET); 
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
 开空状态=0;
	end 
 IF HOLDING>0 AND 开多状态=3 AND  多单止盈条件4=1 THEN BEGIN
	多移止盈2:SELL(1,HOLDING,MARKET); 
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
 开空状态=0;
end 	
 //空单止盈
IF HOLDING<0  AND ((CROSS(趋势线,波段鬼) and ref(波段鬼,1)<15) or (REF(趋势,3)=3 and  noT(趋势=3))) THEN  begin 
	空头止盈:SELLSHORT(1,HOLDING,MARKET);
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
	end 
IF HOLDING<0 AND 开空状态=2 AND 开空次数=2  AND  (空单止盈条件1 OR 空单止盈条件2) THEN BEGIN
	空单止盈:SELLSHORT(1,HOLDING,MARKET); 
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
	end 
 
 IF HOLDING<0 AND 开空状态=3 AND  空单止盈条件3=1 THEN BEGIN
	空移止盈1:SELLSHORT(1,HOLDING,MARKET); 
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
	end 
 IF HOLDING<0 AND 开多状态=3 AND  空单止盈条件4=1 THEN BEGIN
	空移止盈2:SELLSHORT(1,HOLDING,MARKET); 
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
	end 

//止损
多头止损价:=MIN(LLV(L,ENTERBARS+20),ENTERPRICE-10*MINDIFF);//前低点和和10个大点的较小值。
空头止损价:=Max(HHV(H,ENTERBARS+20),ENTERPRICE+10*mindiff);//这个策略用于股指,空头常规止损价为 开仓价加25%的10日平均波幅和3个大点的较小值。
IF HOLDING>0 AND C<多头止损价  THEN BEGIN
多止损:SELL(1,HOLDING,MARKET);
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
 END 

IF HOLDING<0 AND C>空头止损价  THEN BEGIN 
	空止损:SELLSHORT(1,HOLDING,MARKET);
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;
 END

//止损价调整
{若持多单,而5分钟K高点超过了开仓价+50%10日平均波幅,止损调整为保本型 }
//IF 今高>ENTERPRICE+0.5*10日平均波幅 THEN 多头止损价:=ENTERPRICE+2*MINDIFF;
//IF 今低<ENTERPRICE-0.5*10日平均波幅 THEN 空头止损价:=ENTERPRICE-2*MINDIFF;
{若时间处于14:30以后,多头跟踪止损为过去3个5分钟的最高低点与多空头止损价中的较大值}
//IF TIME>=143000 THEN BEGIN
// 多头止损价:=MAX(多头止损价,3周期最低价);
// 空头止损价:=MIN(空头止损价,3周期最高价);
//END

//日内平仓
IF TIME>=145700 and HOLDING<>0 AND TIME<=150000 THEN BEGIN
 收盘平多:SELL(1,HOLDING,MARKET);
 收盘平空:SELLSHORT(1,HOLDING,MARKET);
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;

END

IF TIME>=225700 and HOLDING<>0 AND TIME<=230000 THEN BEGIN
 夜收盘平多:SELL(1,HOLDING,MARKET);
 夜收盘平空:SELLSHORT(1,HOLDING,MARKET);
 趋卖市:=0;
 趋买市:=0;
 开多次数:=0;
 开空次数:=0;
 多头止损价:=0;
 空头止损价:=0;
 空单止盈条件4=0;
 空单止盈条件3=0;
 多单止盈条件4=0;
 多单止盈条件3=0;
 YDZY=0;
 Z3B1=0;
 开多状态=0;
  开空状态=0;

END

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-6-14 13:32 | 显示全部楼层
你这个代码有点复杂,短期内可能无法处理。技术这边有空余时间情况下会尝试处理下,请耐心等候。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-6-15 23:08 , Processed in 0.100128 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表