以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  超好用飞狐模型,求高手转为金字塔,感谢!  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=9186)

--  作者:马上爆发
--  发布时间:2011/11/30 13:04:28
--  超好用飞狐模型,求高手转为金字塔,感谢!

 

MA1=7;

MA2=15,

MA3=45;

中波=42;

大波=72;

短波=6;

 

 

DRAWGBK(1,COLORRGB(0,0,20),COLORRGB(0,0,20),0);{背景}
INPUT:MA1(7,1,300),MA2(15,1,300),MA3(45,1,300);短:=6; 中:=42; 长:=72;
DRAWTEXTEX(ISLASTBAR,1,850,5,\'时\'+STRMID(NUMTOSTR(HOUR,0),0,2)+\':\'+STRMID(NUMTOSTR(MINUTE,0),0,2)+\'分钟\'),ALIGN1,COLORWHITE;{显时间}
DRAWTEXT(DAY<>REF(DAY,1) AND DATATYPE<=2 AND WEEKDAY=1,LOW,\' 一\'),ALIGN5;
DRAWTEXT(DAY<>REF(DAY,1) AND DATATYPE<=2 AND WEEKDAY=2,LOW,\' 二\'),ALIGN5;
DRAWTEXT(DAY<>REF(DAY,1) AND DATATYPE<=2 AND WEEKDAY=3,LOW,\' 三\'),ALIGN5;
DRAWTEXT(DAY<>REF(DAY,1) AND DATATYPE<=2 AND WEEKDAY=4,LOW,\' 四\'),ALIGN5;
DRAWTEXT(DAY<>REF(DAY,1) AND DATATYPE<=2 AND WEEKDAY=5,LOW,\' 五\'),ALIGN5;
VERTLINE(DATE<>REFX(DATE,1) AND DATATYPE<2)LINEDOT,COLOR313131;
DRAWNUMBER(REFX(DAY,1)<>REFX(DAY,2) AND DATATYPE<4,LOW,REFX(DAY,2),0)ALIGN5,COLORGRAY;{显日期}
K线根数:=(BARSLAST(DATE<>REF(DATE,1))+1),LINETHICK0;AA:=1111230;
OC:=(OPEN+CLOSE)/2; LH:=(LOW+HIGH)/2; CO:=CLOSE-OPEN; HL:=HIGH-LOW; 均价:=(OPEN+CLOSE+LOW+HIGH)/4; 均线:=MA(均价,2);
AC:=CLOSE;a0:=0;a1:=0;a2:=0;a3:=0;
H1:=EMA(HIGH,短); L1:=EMA(LOW,短);H2:=MA(HIGH,中); L2:=MA(LOW,中);H3:=MA(HIGH,长); L3:=MA(LOW,长);
FOR I=1+短 TO DATACOUNT DO BEGIN
IF ac[I]>H1[I-1] THEN a1[I]:=1;ELSE IF aC[I]<L1[I-1] THEN a1[I]:=-1;ELSE a1[I]:=a1[I-1];END;
FOR I=2+中 TO DATACOUNT DO BEGIN
IF ac[I]>H2[I-1] THEN a2[I]:=1;ELSE IF aC[I]<L2[I-1] THEN a2[I]:=-1;ELSE a2[I]:=a2[I-1];END;
FOR I=3+长 TO DATACOUNT DO BEGIN
IF AC[I]>H3[I-1] THEN a3[I]:=1;ELSE IF AC[I]<L3[I-1] THEN a3[I]:=-1;ELSE a3[I]:=a3[I-1];END;
转1:=IF(a1=1,L1,H1),COLOR2A2A2A;多1:=a1=1;空1:=a1=-1;卖1:=CROSS(0,A1);买1:=CROSS(A1,0);
转2:=IF(a2=1,L2,H2),COLOR464646;多2:=a2=1;空2:=a2=-1;卖2:=CROSS(0,A2);买2:=CROSS(A2,0);
转3:=IF(a3=1,L3,H3),COLOR757575;多3:=a3=1;空3:=a3=-1;卖3:=CROSS(0,A3);买3:=CROSS(A3,0);

 

INPUT:中波(42,1,45),大波(72,30,80),短波(6,1,20);
新H1:=WMA(HIGH,中波); 新L1:=WMA(LOW,中波); 新H2:=EMA(HIGH,大波); 新L2:=EMA(LOW,大波);新H3:=WMA(HIGH,短波); 新L3:=WMA(LOW,短波);
中:=EMA(LH,中波)COLORMAGENTA,LINETHICK2;
AC:=OC;新a1:=0;新a2:=0;新a3:=0;
FOR I=中波+2 TO DATACOUNT DO BEGIN
IF ac[I]>新H1[I-1] THEN 新a1[I]:=1;ELSE IF aC[I]<新L1[I-1] THEN 新a1[I]:=-1;ELSE 新a1[I]:=新a1[I-1];END;
FOR I=大波+2 TO DATACOUNT DO BEGIN
IF ac[I]>新H2[I-1] THEN 新a2[I]:=1;ELSE IF aC[I]<新L2[I-1] THEN 新a2[I]:=-1;ELSE 新a2[I]:=新a2[I-1];END;
FOR I=短波+2 TO DATACOUNT DO BEGIN
IF ac[I]>新H3[I-1] THEN 新a3[I]:=1;ELSE IF aC[I]<新L3[I-1] THEN 新a3[I]:=-1;ELSE 新a3[I]:=新a3[I-1];END;
新转1:=IF(新a1=1,新L1,新H1);DAT1:=1111230;DATT1:=(DATE<DAT1 AND DATE<AA);新多1:=OC>=新转1;新空1:=OC<=新转1;新买1:=CROSS(OC,新转1);新卖1:=CROSS(新转1,OC);
新转2:=IF(新a2=1,新L2,新H2);新多2:=OC>=新转2;新空2:=OC<=新转2;新买2:=CROSS(OC,新转2);新卖2:=CROSS(新转2,OC);
新转3:=IF(新a3=1,新L3,新H3);新多3:=OC>=新转3;新空3:=OC<=新转3;新买3:=CROSS(OC,新转3);新卖3:=CROSS(新转3,OC);


{-------3D红蓝实心空心K线-------------------------------------------------}
DAT:=1111230; DATT:=(DATE<DAT AND DATE<AA); 阴:=OPEN>CLOSE; 涨:=多2 AND DATT;跌:=空2 AND DATT;
IF DATACOUNT<=短 THEN KLINE(OPEN,HIGH,LOW,CLOSE,0);
STICKLINE(涨,LOW,HIGH,0,0),COLORRED;
STICKLINE(涨,OPEN,CLOSE,8,1),COLORRED;
STICKLINE(跌,LOW,HIGH,0,0),COLORFF8800;
STICKLINE(跌,OPEN,CLOSE,8,1),COLORFF8800;
STICKLINE(涨 AND 阴,CLOSE,OPEN,8,0),COLOR0000B0;
STICKLINE(涨 AND 阴,CLOSE,OPEN,6,0),COLORRED;
STICKLINE(涨 AND 阴 AND DATT1,CLOSE,OPEN,4,0),COLOR4444FF;
STICKLINE(涨 AND 阴,CLOSE,OPEN,2,0),COLOR6868FF;
STICKLINE(跌 AND 阴 AND DATT1,CLOSE,OPEN,8,0),COLORFF5B00;
STICKLINE(跌 AND 阴,CLOSE,OPEN,6,0),COLORFF8800;
STICKLINE(跌 AND 阴,CLOSE,OPEN,4,0),COLORFFAA00;
STICKLINE(跌 AND 阴 AND DATT1,CLOSE,OPEN,2,0),COLORFFCC00;
DRAWNUMBER(ISLASTBAR,CLOSE,CLOSE,2),COLORYELLOW;{显现价}
偏:=SUM(HIGH-LOW,10)/10;


--  作者:26327756l
--  发布时间:2011/11/30 13:16:58
--  

里面有数组越界啊

是逻辑设计的问题吧!

[此贴子已经被作者于2011-11-30 13:31:26编辑过]

--  作者:马上爆发
--  发布时间:2011/11/30 13:21:33
--  
谁帮我改好我有更高级稳赢的系统相送!求快!
--  作者:马上爆发
--  发布时间:2011/11/30 13:24:25
--  
现主力月份不可用,非主力月的可用!对金字塔熟的应懂!
--  作者:马上爆发
--  发布时间:2011/11/30 13:59:43
--  

显示数组越界操作


--  作者:26327756l
--  发布时间:2011/11/30 14:04:24
--  

因为里面有未来函数

好像也有向下取值的语句,就在for循环的地方,下标超了,所以越界。


--  作者:马上爆发
--  发布时间:2011/11/30 14:28:06
--  
未来函数是没有,循环语可能用在这错了,可在飞狐上是对的,我一直用飞狐,这个平台里可能要改改,可不动思路策略改动一下吗?
--  作者:fly
--  发布时间:2011/11/30 14:32:49
--  

描述一下你策略的思路,节省修改者的时间.


--  作者:马上爆发
--  发布时间:2011/11/30 14:45:49
--  

向上,K线的收盘价越过一根均价线后,以最低价为支撑均价,翻红,

向下,K线的收盘价跌破支撑均价线后,以最高价为压力线,翻绿,以此循环.


--  作者:马上爆发
--  发布时间:2011/11/30 15:08:08
--  

最怪的是有的月份正常,有的不正常!