源碼如下:
DRAWGBK(CLOSE>0,COLORRGB(120,154,127),COLORRGB(120,154,127),0); MM:=IF(DATATYPE=1,M,IF(DATATYPE=2,M,IF(DATATYPE=3,M,IF(DATATYPE=4,M,IF(DATATYPE=5,M,IF(DATATYPE=6,Q,IF(DATATYPE=7,Q,IF(DATATYPE=8,Q,0)))))))); AVG:=(HIGH+LOW+CLOSE)/3; CCI:=(AVG-MA(AVG,MM))/(0.015*AVEDEV(AVG,MM)); DIF:CCI-REF(CCI,1),LINETHICK0,colorFF00; 前差值:ABS(REF(CCI,1)-REF(CCI,2)),LINETHICK0; 差值20:IF(DIF>15 AND DIF<120,DIF,0),LINETHICK0,colorFF; 200,LINEDOT,colorFFFF00; -200,LINEDOT,colorFFFF00; 100,LINEDOT,colorFFFF00; -100,LINEDOT,colorFFFF00; PI:=ATAN(1)*4; PERIODS:=30; HIGHHIGH:=HHV(HIGH,PERIODS); LOWLOW:=LLV(LOW,PERIODS); RANGEV:=25/(HIGHHIGH-LOWLOW)*LOWLOW; EMA34:=EMA(CLOSE,34); X1_EMA34:=0; X2_EMA34:=1; Y1_EMA34:=0; Y2_EMA34:=(REF(EMA34,1)-EMA34)/AVG*RANGEV; C_EMA34:=SQRT((X2_EMA34-X1_EMA34)*(X2_EMA34-X1_EMA34)+(Y2_EMA34-Y1_EMA34)*(Y2_EMA34-Y1_EMA34)); ANGLE_EMA34V:=ROUND(ABS(180*ACOS((X2_EMA34-X1_EMA34)/C_EMA34)/PI)); ANGLE_EMA34:=IF(Y2_EMA34>0,-ANGLE_EMA34V,ANGLE_EMA34V); LSMA25:=FORCAST(CLOSE,25); X1_LSMA25:=0; X2_LSMA25:=1; Y1_LSMA25:=0; Y2_LSMA25:=(REF(LSMA25,1)-LSMA25)/AVG*RANGEV; C_LSMA25:=SQRT((X2_LSMA25-X1_LSMA25)*(X2_LSMA25-X1_LSMA25)+(Y2_LSMA25-Y1_LSMA25)*(Y2_LSMA25-Y1_LSMA25)); ANGLE_LSMA25V:=ROUND(ABS(180*ACOS((X2_LSMA25-X1_LSMA25)/C_LSMA25)/PI)); ANGLE_LSMA25:=IF(Y2_LSMA25>0,-ANGLE_LSMA25V,ANGLE_LSMA25V); ARRAY:=CCI; HIGHBARS:=BARSLAST(NOT(ARRAY>0)); LOWBARS:=BARSLAST(NOT(ARRAY<0)); UPCONDITION:=BARSLAST(HIGHBARS>=6 AND SUM(ARRAY>100,5)>0); DNCONDITION:=BARSLAST(LOWBARS>=6 AND SUM(ARRAY<-100,5)>0); UPTREND:=ARRAY>0 AND UPCONDITION<DNCONDITION; DNTREND:=ARRAY<0 AND UPCONDITION>DNCONDITION; TRTREND:=HIGHBARS>=5 AND NOT(UPTREND) OR LOWBARS>=5 AND NOT(DNTREND); STICKLINE(UPTREND,0,CCI,3,0),colorFF0000; STICKLINE(DNTREND,0,CCI,3,0),colorFF; STICKLINE(TRTREND,0,CCI,3,0),colorFFFF; STICKLINE(NOT(UPTREND OR DNTREND OR TRTREND),0,CCI,3,0),color808080; WCCI:CCI,LINETHICK2,color10000; TCCI:(AVG-MA(AVG,N))/(0.015*AVEDEV(AVG,N)),color80; STICKLINE(ANGLE_EMA34>=5,-301,-321,8,0),colorD0E040; STICKLINE(ANGLE_EMA34<5 AND ANGLE_EMA34>=3.57,-301,-321,8,0),color6400; STICKLINE(ANGLE_EMA34<3.57 AND ANGLE_EMA34>=2.14,-301,-321,8,0),color98FB98; STICKLINE(ANGLE_EMA34<2.14 AND ANGLE_EMA34>=0.71,-301,-321,8,0),colorFF00; STICKLINE(ANGLE_EMA34<0.71 AND ANGLE_EMA34>-0.71,-301,-321,8,0),colorFFFF; STICKLINE(ANGLE_EMA34<=-0.71 AND ANGLE_EMA34>-2.14,-301,-321,8,0),colorE0FFFF; STICKLINE(ANGLE_EMA34<=-2.14 AND ANGLE_EMA34>-3.57,-301,-321,8,0),colorA5FF; STICKLINE(ANGLE_EMA34<=-3.57 AND ANGLE_EMA34>-5,-301,-321,8,0),colorFF; STICKLINE(ANGLE_EMA34<=-5,-301,-321,8,0),color8B; SW:=IF(ABS(ANGLE_EMA34)>=15 AND ABS(ANGLE_EMA34+ANGLE_LSMA25)>=50,IF(ANGLE_LSMA25>0,2,-2),IF(ABS(ANGLE_EMA34)>=0 AND (ANGLE_EMA34>=0 AND ANGLE_LSMA25>=0 OR ANGLE_EMA34<=0 AND ANGLE_LSMA25<=0) AND ABS(ANGLE_EMA34+ANGLE_LSMA25)>=5,IF(ANGLE_LSMA25>0,1,-1),0)); STICKLINE(ABS(SW)=2,301,321,8,0),colorFF00; STICKLINE(ABS(SW)=1,301,321,8,0),colorFFFF; STICKLINE(ABS(SW)=0,301,321,8,0),colorFF; PARTLINE(CLOSE>LSMA25,0),LINETHICK3,colorFF00; PARTLINE(CLOSE<LSMA25,0),LINETHICK3,colorFF; PARTLINE(CLOSE=LSMA25,0),LINETHICK3,colorFFFF; DRAWICON(ABS(CCI)>=200,CCI,12); TM:=IF(DATATYPE=1,1,IF(DATATYPE=2,5,IF(DATATYPE=3,15,IF(DATATYPE=4,30,IF(DATATYPE=5,60,240))))); ALERT1:=IF(DATATYPE=1,10,IF(DATATYPE=2,34,IF(DATATYPE=3,100,IF(DATATYPE=4,180,IF(DATATYPE=5,300,600))))); TIMEFRAME:=TM; ALERT:=ALERT1; STIME:=TIMETOT0(CURRENTTIME); SSTIME:=TIMEFRAME*60-MOD(STIME,TIMEFRAME*60); SSTEP:=300/TIMEFRAME/60; STICKLINE(ISLASTBAR,0,300,6,1),SHIFT2,color10000; STICKLINE(ISLASTBAR AND SSTIME>ALERT,300,SSTIME*SSTEP,6,0),SHIFT2,colorFFFF00; STICKLINE(ISLASTBAR AND SSTIME<ALERT,300,SSTIME*SSTEP,6,0),SHIFT2,colorFF; DRAWNUMBER(ISLASTBAR,300,TIMEFRAME*60,0),SHIFT3; DRAWNUMBER(ISLASTBAR,SSTIME*SSTEP,SSTIME,0),SHIFT3; DRAWNUMBER(ISLASTBAR,ALERT*SSTEP,ALERT,0),SHIFT3; STICKLINE(ISLASTBAR,0,0,6,1),SHIFT6,color10000; DRAWNUMBER(ISLASTBAR,-20,-REF(CCI,1)+CCI,3),SHIFT3; 大慶老楊、指標(biāo)區(qū)班長、老師:(改成通達(dá)信源碼:) 通達(dá)信的。最后少部分因時(shí)間轉(zhuǎn)換函數(shù),舍去了: M:=14;N:=6;Q:=20; MM:=IF(PERIOD=0,M,IF(PERIOD=1,M,IF(PERIOD=2,M,IF(PERIOD=3,M,IF(PERIOD=4, M,IF(PERIOD=5,Q,IF(PERIOD=6,Q,IF(PERIOD=7,Q,0)))))))); AVG:=(HIGH+LOW+CLOSE)/3; CCI:=(AVG-MA(AVG,MM))/(0.015*AVEDEV(AVG,MM)); DIF:CCI-REF(CCI,1),LINETHICK0; 前差值:ABS(REF(CCI,1)-REF(CCI,2)),LINETHICK0; 差值20:IF(DIF>15 AND DIF<120,DIF,0),LINETHICK0; 200,COLORFFFF00; -200,COLORFFFF00; 100,COLORFFFF00; -100,COLORFFFF00; PI:=ATAN(1)*4; PERIODS:=30; HIGHHIGH:=HHV(HIGH,PERIODS); LOWLOW:=LLV(LOW,PERIODS); RANGEV:=25/(HIGHHIGH-LOWLOW)*LOWLOW; EMA34:=EMA(CLOSE,34); X1_EMA34:=0; X2_EMA34:=1; Y1_EMA34:=0; Y2_EMA34:=(REF(EMA34,1)-EMA34)/AVG*RANGEV; C_EMA34:=SQRT((X2_EMA34-X1_EMA34)*(X2_EMA34-X1_EMA34)+(Y2_EMA34-Y1_EMA34)*(Y2_EMA34-Y1_EMA34)); ANGLE_EMA34V:=ROUND(ABS(180*ACOS((X2_EMA34-X1_EMA34)/C_EMA34)/PI)); ANGLE_EMA34:=IF(Y2_EMA34>0,-ANGLE_EMA34V,ANGLE_EMA34V); LSMA25:=FORCAST(CLOSE,25); X1_LSMA25:=0; X2_LSMA25:=1; Y1_LSMA25:=0; Y2_LSMA25:=(REF(LSMA25,1)-LSMA25)/AVG*RANGEV; C_LSMA25:=SQRT((X2_LSMA25-X1_LSMA25)*(X2_LSMA25-X1_LSMA25)+(Y2_LSMA25-Y1_LSMA25)*(Y2_LSMA25-Y1_LSMA25)); ANGLE_LSMA25V:=ROUND(ABS(180*ACOS((X2_LSMA25-X1_LSMA25)/C_LSMA25)/PI)); ANGLE_LSMA25:=IF(Y2_LSMA25>0,-ANGLE_LSMA25V,ANGLE_LSMA25V); ARRAY:=CCI; HIGHBARS:=BARSLAST(NOT(ARRAY>0)); LOWBARS:=BARSLAST(NOT(ARRAY<0)); UPCONDITION:=BARSLAST(HIGHBARS>=6 AND SUM(ARRAY>100,5)>0); DNCONDITION:=BARSLAST(LOWBARS>=6 AND SUM(ARRAY<-100,5)>0); UPTREND:=ARRAY>0 AND UPCONDITION<DNCONDITION; DNTREND:=ARRAY<0 AND UPCONDITION>DNCONDITION; TRTREND:=HIGHBARS>=5 AND NOT(UPTREND) OR LOWBARS>=5 AND NOT(DNTREND); STICKLINE(UPTREND,0,CCI,3,0),COLORFF0000; STICKLINE(DNTREND,0,CCI,3,0),COLORFF00FF; STICKLINE(TRTREND,0,CCI,3,0),COLORFFFFF0; STICKLINE(NOT(UPTREND OR DNTREND OR TRTREND),0,CCI,3,0),COLOR808080; WCCI:CCI,COLORF00FF0,LINETHICK2; TCCI:(AVG-MA(AVG,N))/(0.015*AVEDEV(AVG,N)); STICKLINE(ANGLE_EMA34>=5,-301,-321,8,0),COLORD0E040; STICKLINE(ANGLE_EMA34<5 AND ANGLE_EMA34>=3.57,-301,-321,8,0),COLORFF6400; STICKLINE(ANGLE_EMA34<3.57 AND ANGLE_EMA34>=2.14,-301,-321,8,0),COLOR98FB98; STICKLINE(ANGLE_EMA34<2.14 AND ANGLE_EMA34>=0.71,-301,-321,8,0),COLORFF00FF; STICKLINE(ANGLE_EMA34<0.71 AND ANGLE_EMA34>-0.71,-301,-321,8,0),COLORFFF00F; STICKLINE(ANGLE_EMA34<=-0.71 AND ANGLE_EMA34>-2.14,-301,-321,8,0),COLORE0FFFF; STICKLINE(ANGLE_EMA34<=-2.14 AND ANGLE_EMA34>-3.57,-301,-321,8,0),COLORA5FF00; STICKLINE(ANGLE_EMA34<=-3.57 AND ANGLE_EMA34>-5,-301,-321,8,0); STICKLINE(ANGLE_EMA34<=-5,-301,-321,8,0),COLOR8B0000; SW:=IF(ABS(ANGLE_EMA34)>=15 AND ABS(ANGLE_EMA34+ANGLE_LSMA25)>=50,IF(ANGLE_LSMA25>0,2,-2),IF(ABS(ANGLE_EMA34)>=0 AND (ANGLE_EMA34>=0 AND ANGLE_LSMA25>=0 OR ANGLE_EMA34<=0 AND ANGLE_LSMA25<=0) AND ABS(ANGLE_EMA34+ANGLE_LSMA25)>=5,IF(ANGLE_LSMA25>0,1,-1),0)); STICKLINE(ABS(SW)=2,301,321,8,0),COLORFF0088; STICKLINE(ABS(SW)=1,301,321,8,0),COLORFFFF88; STICKLINE(ABS(SW)=0,301,321,8,0),COLORFF8800; IF(CLOSE>LSMA25,0,DRAWNULL),LINETHICK3,COLORFF0099; IF(CLOSE<LSMA25,0,DRAWNULL),LINETHICK3,COLORFF6666; IF(CLOSE=LSMA25,0,DRAWNULL),LINETHICK3,COLORFFFF66; DRAWICON(ABS(CCI)>=200,CCI,12); {TM:=IF(PERIOD=0,1,IF(PERIOD=1,5,IF(PERIOD=2,15,IF(PERIOD=3,30,IF(PERIOD=4,60,240))))); ALERT1:=IF(PERIOD=0,10,IF(PERIOD=1,34,IF(PERIOD=2,100,IF(PERIOD=3,180,IF(PERIOD=4,300,600)))));}
| | |
| |
|