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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教

   

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


  共有7922人关注过本帖树形打印复制链接

主题:请教

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


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/18 11:02:21    Post IP:221.4.150.210[显示全部帖子]

图中的信号是根据TJ>0平多开空,TJ<=0平空开多发出的,
信号1:副图PM<-20,信号执行
信号2:副图PM也小于-20,信号也执行,只要在PM<-20的范围内有信号则执行
信号3:距离上一个PM向上穿越-20在20个周期范围内出现的信号也执行。
信号4和信号5:因为PM>-20且在距离上一个PM穿越-20后20个周期,则信号4和信号5不执行,而根据其他的开平仓条件来执行。

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/18 15:02:57    Post IP:221.4.150.210[显示全部帖子]

老师,按你的指导还是那样,跟之前的信号没变。关键一点是想当PM>-20时且距离上一个PM穿越-20后第21个周期之后不能信号4和信号5执行

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/18 15:19:42    Post IP:221.4.150.210[显示全部帖子]

嗯,是的,是TJ>0平多开空,TJ<=0平空开多发出的信号,但信号4和信号5是发生在向上穿越-20后20个周期之后发生的,然后不希望它发生。

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 9:28:32    Post IP:221.4.150.210[显示全部帖子]

老师,在请教下,1.当cross(pm,-20)后20个周期内我只希望第一个信号发生,如果在这20个周期内有N个开平仓信号,我只希望第一个发生,后面N-1个不发生。
                       2.当cross(pm,-20)向上穿越-20后20个周期之后(就是从穿越后第21个周期算起)如果PM>-20,则根据横盘突破系统来发生开平信号。

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 10:17:59    Post IP:221.4.150.210[显示全部帖子]

嗯,不分开还是平,因为我都是反手,只要第一次信号,这20个周期内除了第一个信号执行,其他信号不执行。
然后20个周期之后在PM>-20的情况下采用横盘突破策略。

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 11:06:43    Post IP:221.4.150.210[显示全部帖子]

aa好像没定义,if aa then n:=0;

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 14:44:30    Post IP:221.4.150.210[显示全部帖子]

//pm>-20且20个周期内只开一次
if aa then n:=0;
if tj<0 and x2 and n=0 then begin
sellshort(holding<0,1,marketr);
buy(holding=0,1,marketr);
n:=1;
end

if tj>0 and x2 and n=0 then BEGIN
sell(holding>0,1,marketr);
buyshort(holding=0,1,marketr);
n:=1;
end

老师,这个写法实现不了pm>-20且20个周期内只开一次,

是不是要这样写


//pm>-20且20个周期内只开一次
VARIABLE:n=0;
if tj<0 and x2 then begin
sellshort(holding<0,1,marketr);
buy(holding=0,1,marketr);
n:=1;
end


IF tj<0 AND X2 AND n=1 THEN BEGIN

n:=0;

END


if tj>0 and x2  then BEGIN
sell(holding>0,1,marketr);
buyshort(holding=0,1,marketr);
n:=1;
end


IF tj>0 AND X2 AND n=1 THEN BEGIN

n:=0;

END

但是这样写试了也实现不了,请老师在帮忙看看



 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 15:16:09    Post IP:221.4.150.210[显示全部帖子]

老师,麻烦帮忙在看下。

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 15:23:07    Post IP:221.4.150.210[显示全部帖子]

你那写的在20周期内第二个信号还会出现

 回到顶部
帅哥哟,离线,有人找我吗?
gsqh_zyp
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:168 积分:148 威望:0 精华:0 注册:2012/6/21 9:54:02
  发帖心情 Post By:2014/9/19 16:16:07    Post IP:221.4.150.210[显示全部帖子]

//声明一个全局变量n
VARIABLE:n=0;

//定义参数
input:p(18,1,100,1);

//----------------------------------------------------------------------
//定义顾比倒数线
H11:=HIGH;
L11:=LOW;
A:=IFELSE(HIGH>=REF(HIGH,1)&&HIGH>=REF(HIGH,2)&&HIGH>=REF(HIGH,3) &&HIGH>=REF(HIGH,4)&&HIGH>=REF(HIGH,5),LOW,0);
B:=IFELSE(LOW<=REF(LOW,1)&&LOW<=REF(LOW,2)&&LOW<=REF(LOW,3) &&LOW<=REF(LOW,4)&&LOW<=REF(LOW,5),HIGH,888888);
P1:=IFELSE(A>REF(L11,1),REF(L11,1),0);
P2:=IFELSE(A>REF(L11,2)&&A<=REF(L11,1),REF(L,2),0);
P3:=IFELSE(A>REF(L11,3)&&A<=REF(L11,1)&&A<=REF(L11,2),REF(L11,3),0);
P4:=IFELSE(A>REF(L11,4)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3),REF(L11,4),0);
P5:=IFELSE(A>REF(L11,5)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3)&&A<=REF(L11,4),REF(L11,5),0);
P6:=IFELSE(A>REF(L11,6)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3)&&A<=REF(L11,4)&&A<=REF(L11,5),REF(L11,6),0);
P7:=IFELSE(A>REF(L11,7)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3)&&A<=REF(L11,4)&&A<=REF(L11,5)&&A<=REF(L11,6),REF(L11,7),0);
P8:=IFELSE(A>REF(L11,8)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3)&&A<=REF(L11,4)&&A<=REF(L11,5)&&A<=REF(L11,6)&&A<=REF(L11,7),REF(L11,8),0);
P9:=IFELSE(A>REF(L11,9)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3)&&A<=REF(L11,4)&&A<=REF(L11,5)&&A<=REF(L11,6)&&A<=REF(L11,7)&&A<=REF(L11,8),REF(L11,9),0);
P10:=IFELSE(A>REF(L11,10)&&A<=REF(L11,1)&&A<=REF(L11,2)&&A<=REF(L11,3)&&A<=REF(L11,4)&&A<=REF(L11,5)&&A<=REF(L11,6)&&A<=REF(L11,7)&&A<=REF(L11,8)&&A<=REF(L11,9),REF(L11,10),0);
AA:=P1+P2+P3+P4+P5+P6+P7+P8+P9+P10;
PP1:=IFELSE(AA>REF(L11,1),REF(L11,1),0);
PP2:=IFELSE(AA>REF(L11,2)&&AA<=REF(L11,1),REF(L11,2),0);
PP3:=IFELSE(AA>REF(L11,3)&&AA<=REF(L11,1)&&AA<=REF(L11,2),REF(L11,3),0);
PP4:=IFELSE(AA>REF(L11,4)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3),REF(L11,4),0);
PP5:=IFELSE(AA>REF(L11,5)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3)&&AA<=REF(L11,4),REF(L11,5),0);
PP6:=IFELSE(AA>REF(L11,6)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3)&&AA<=REF(L11,4)&&AA<=REF(L11,5),REF(L11,6),0);
PP7:=IFELSE(AA>REF(L11,7)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3)&&AA<=REF(L11,4)&&AA<=REF(L11,5)&&AA<=REF(L11,6),REF(L11,7),0);
PP8:=IFELSE(AA>REF(L11,8)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3)&&AA<=REF(L11,4)&&AA<=REF(L11,5)&&AA<=REF(L11,6)&&AA<=REF(L11,7),REF(L11,8),0);
PP9:=IFELSE(AA>REF(L11,9)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3)&&AA<=REF(L11,4)&&AA<=REF(L11,5)&&AA<=REF(L11,6)&&AA<=REF(L11,7)&&AA<=REF(L11,8),REF(L11,9),0);
PP10:=IFELSE(AA>REF(L11,10)&&AA<=REF(L11,1)&&AA<=REF(L11,2)&&AA<=REF(L11,3)&&AA<=REF(L11,4)&&AA<=REF(L11,5)&&AA<=REF(L11,6)&&AA<=REF(L11,7)&&AA<=REF(L11,8)&&AA<=REF(L11,9),REF(L11,10),0);
AAA:=PP1+PP2+PP3+PP4+PP5+PP6+PP7+PP8+PP9+PP10;
C11:=VALUEWHEN(AAA>0,AAA);
T1:=IFELSE(B<REF(H11,1),REF(H11,1),0);
T2:=IFELSE(B<REF(H11,2)&&B>=REF(H11,1),REF(H11,2),0);
T3:=IFELSE(B<REF(H11,3)&&B>=REF(H11,1)&&B>=REF(H11,2),REF(H11,3),0);
T4:=IFELSE(B<REF(H11,4)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3),REF(H11,4),0);
T5:=IFELSE(B<REF(H11,5)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3)&&B>=REF(H11,4),REF(H11,5),0);
T6:=IFELSE(B<REF(H11,6)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3)&&B>=REF(H11,4)&&B>=REF(H11,5),REF(H11,6),0);
T7:=IFELSE(B<REF(H11,7)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3)&&B>=REF(H11,4)&&B>=REF(H11,5)&&B>=REF(H11,6),REF(H11,7),0);
T8:=IFELSE(B<REF(H11,8)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3)&&B>=REF(H11,4)&&B>=REF(H11,5)&&B>=REF(H11,6)&&B>=REF(H11,7),REF(H11,8),0);
T9:=IFELSE(B<REF(H11,9)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3)&&B>=REF(H11,4)&&B>=REF(H11,5)&&B>=REF(H11,6)&&B>=REF(H11,7)&&B>=REF(H11,8),REF(H11,9),0);
T10:=IFELSE(B<REF(H11,10)&&B>=REF(H11,1)&&B>=REF(H11,2)&&B>=REF(H11,3)&&B>=REF(H11,4)&&B>=REF(H11,5)&&B>=REF(H11,6)&&B>=REF(H11,7)&&B>=REF(H11,8)&&B>=REF(H11,9),REF(H11,10),0);
BB:=IFELSE((T1+T2+T3+T4+T5+T6+T7+T8+T9+T10)=0,888888,T1+T2+T3+T4+T5+T6+T7+T8+T9+T10);
TT1:=IFELSE(BB<REF(H11,1),REF(H11,1),0);
TT2:=IFELSE(BB<REF(H11,2)&&BB>=REF(H11,1),REF(H11,2),0);
TT3:=IFELSE(BB<REF(H11,3)&&BB>=REF(H11,1)&&BB>=REF(H11,2),REF(H11,3),0);
TT4:=IFELSE(BB<REF(H11,4)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3),REF(H11,4),0);
TT5:=IFELSE(BB<REF(H11,5)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3)&&BB>=REF(H11,4),REF(H11,5),0);
TT6:=IFELSE(BB<REF(H11,6)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3)&&BB>=REF(H11,4)&&BB>=REF(H11,5),REF(H11,6),0);
TT7:=IFELSE(BB<REF(H11,7)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3)&&BB>=REF(H11,4)&&BB>=REF(H11,5)&&BB>=REF(H11,6),REF(H11,7),0);
TT8:=IFELSE(BB<REF(H11,8)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3)&&BB>=REF(H11,4)&&BB>=REF(H11,5)&&BB>=REF(H11,6)&&BB>=REF(H11,7),REF(H11,8),0);
TT9:=IFELSE(BB<REF(H11,9)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3)&&BB>=REF(H11,4)&&BB>=REF(H11,5)&&BB>=REF(H11,6)&&BB>=REF(H11,7)&&BB>=REF(H11,8),REF(H11,9),0);
TT10:=IFELSE(BB<REF(H11,10)&&BB>=REF(H11,1)&&BB>=REF(H11,2)&&BB>=REF(H11,3)&&BB>=REF(H11,4)&&BB>=REF(H11,5)&&BB>=REF(H11,6)&&BB>=REF(H11,7)&&BB>=REF(H11,8)&&BB>=REF(H11,9),REF(H11,10),0);
BBB:=TT1+TT2+TT3+TT4+TT5+TT6+TT7+TT8+TT9+TT10;
D:=VALUEWHEN(BBB>0,BBB);
UD:=IFELSE(CLOSE>D&&REF(CLOSE,1)<=D,1,IFELSE(CLOSE<C11&&REF(CLOSE,1)>=C11,-3,0));
K:=VALUEWHEN(UD<>0,UD);
G:=IFELSE(K=1,C11,D),COLORRED;
G1:=VALUEWHEN(ISLASTBAR,G);
TMP:=-K;
//----------------------------------------------------------------------

//----------------------------------------------------------------------
//定义波动率
TR1 := SUM(MAX(MAX(HIGH - LOW, ABS(HIGH-REF(CLOSE,1))), ABS(LOW - REF(CLOSE, 1))), P);  
HD := HIGH - REF(HIGH, 1); 
LD := REF(LOW, 1) - LOW;  
DMP := SUM(IF(HD>0 AND HD>LD,HD,0),P); 
DMM := SUM(IF(LD>0 AND LD>HD,LD,0),P); 
PDI := MA(DMP*100/TR1,18);
MDI := MA(DMM*100/TR1,18);  
PM := PDI-MDI;
MP := MDI-PDI;
//----------------------------------------------------------------------

//----------------------------------------------------------------------
//交易系统
A:=CROSS(PM,-20);
B:=CROSS(MP,-20);
A1:=PM<-20;
A2:=PM>-20 AND BARSLAST(A)<=20;
B1:=MP<-20;
B2:=MP>-20 AND BARSLAST(B)<=20;
X:=A OR B;
X1:=A1 OR B1;
X2:=A2 OR B2;


//平空开多
IF TMP<=0 AND X1 THEN BEGIN   
sellshort(holding<0,0,market);
BUY(HOLDING=0,1,MARKET);  
END

//平多开空
IF TMP>0 AND X1 THEN BEGIN  
sell(holding>0,0,market);     
buyshort(holding=0,1,market);   
END

//PM>-20且在cross(pm,-20)后20个周期内只开一次
if X THEN n:=0;
IF TMP<=0 AND X2 and n=0 THEN BEGIN
sellshort(holding<0,1,marketr);
buy(holding=0,1,marketr);
n:=1;
end

if TMP>0 and x2 and n=0 then BEGIN
sell(holding>0,1,marketr);
buyshort(holding=0,1,marketr);
n:=1;
end


 回到顶部
总数 20 1 2 下一页