分解說明:
VAR1:=(((HHV(HIGH,36) - CLOSE) / (HHV(HIGH,36) - LLV(LOW,36))) * 100); VAR2:=SMA(VAR1,5,1); VAR3:=SMA(VAR2,8,1); H1:EMA(CLOSE,8),LINETHICK1; H2:EMA(H1,20),LINETHICK1; VAR4:=(CROSS(VAR2,VAR3) AND (VAR3 < 20)); VAR5:=((CLOSE > (LLV(CLOSE,60) + (0.3 * LLV(CLOSE,60)))) AND VAR4); VAR6:=IF((CLOSE > 1000),VAR4,VAR5); M1:EMA(CLOSE,60); M2:EMA(CLOSE,89); M3:EMA(CLOSE,233),LINETHICK1; M4:EMA(CLOSE,583),LINETHICK1; STICKLINE((H1 > H2),H1,H2,1,0.8); STICKLINE((H1 < H2),H1,H2,1,0.8); 第一步{從后往前找}找到下面這行"買"的輸出語句。然后看這條語句的基本條件。 DRAWTEXT((CROSS(H1,H2) AND (CLOSE < EMA(CLOSE,60))),(LOW * 0.92),'買'); 查看結(jié)果:輸出文字 交叉 條件,條件直接輸出語 句 輸出位置 文字 DRAWTEXT(VAR6,(HIGH * 1.08),'賣'); 知道"基本條件"為 H1,H2,那么與此沒有任何關(guān)系的語句從后往前刪除。刪的辦法有兩種:一是直接刪掉;二是先用{}括上,待沒問題時(shí)再一次性刪除。加藍(lán)色的為找到的不輸出語句。 第二步{刪除沒用條}后,剩下的有用語句: H1:EMA(CLOSE,8),LINETHICK1; {加藍(lán)的為修飾類函數(shù),原則一律刪除。} H2:EMA(H1,20),LINETHICK1; DRAWTEXT((CROSS(H1,H2) AND (CLOSE < EMA(CLOSE,60))),(LOW * 0.92),'買'); 第三步{去掉修飾符} 分別去掉:指標(biāo)線粗細(xì)、顯示文字、文字位置函數(shù)和文字 H1:EMA(CLOSE,8); H2:EMA(H1,20); CROSS(H1,H2) AND CLOSE < EMA(CLOSE,60); 第四步{個(gè)別加等號(hào)} 條件選股只能輸出一條語句,上面這三行為全部輸出,所以,作為"條件"的前兩行還必須在冒號(hào)后面加上等號(hào),表達(dá)不輸出。結(jié)果: H1:=EMA(CLOSE,8); H2:=EMA(H1,20); CROSS(H1,H2) AND CLOSE < EMA(CLOSE,60); 例二、找出笑臉和買入信號(hào) 以本人發(fā)過的《跟莊建倉》為例。 A01:=DYNAINFO(7); A03:=BARSCOUNT(CLOSE); A04:=(SMA((CLOSE / HHV(HIGH,120)),3,1) * 100); A05:=IF((A03 > 20),A04,0); A06:=IF((LOW > A01),0,IF((HIGH < A01),1,(((A01 - LOW) + 0.009) / ((HIGH - LOW) + 0.009)))); A07:=DMA(A06,(VOL / CAPITAL)) * 60; A09:=IF((((A07 > 0) AND (A07 > REF(A07,1))) AND (A05 <= 88)),A07,0); Var1:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV( LOW,27))*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HH V(HIGH,27)-LLV(LOW,27))*100,5,1),3,1); Var2:=EMA(Var1,8); Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*10 0,5,1)-2*SMA(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55) )*100,5,1),3,1); 趨勢:=EMA(Var3,3)-10; FILLRGN(趨勢>80,趨勢,80); DRAWICON(CROSS(趨勢,0),0,1); FILLRGN((A09 > 0 AND (趨勢<20 OR 趨勢>REF(趨勢,1)AND 趨勢<50)),0,A09),colorFFFF00; 機(jī)構(gòu)建倉通達(dá)信條件選股公式區(qū):0,LINETHICK0,colorFFFF00; Var4:=(趨勢-REF(趨勢,1))/REF(趨勢,1)*100; STICKLINE(趨勢<=13,0,20,5,0),colorcc9900; DRAWTEXT(FILTER(趨勢<=13,15),30,'準(zhǔn)備現(xiàn)金'),colorcc9900; STICKLINE(趨勢<=13 AND Var4>13,0,50,5,0),color0099ff; Var5:=FILTER((趨勢<=13 AND Var4>13),10); DRAWTEXT(Var5,60,'買入'),color0099ff; STICKLINE(趨勢>=90 AND Var4,0,30,5,0),colorgray; Var6:=FILTER(趨勢>=90,10); DRAWTEXT(Var6,40,'清倉'),colorgray; Var7:=LLV(LOW,30); Var8:=HHV(HIGH,30); Var9:=EMA((CLOSE-Var7)/(Var8-Var7)*4,4)*25; STICKLINE(Var9>90,100,105,10,2),COLORRED; STICKLINE(CROSS(Var4,-40),10,55,6,0),COLORRED; Var10:=(Var9-LLV(Var9,4))/(HHV(Var9,4)-LLV(Var9,4) )*100; DRAWTEXT(IF(CROSS(Var9,Var10) AND Var9>87,95,0),88,'險(xiǎn)'),Color00FF00,ALIGN1; DRAWICON(CROSS(90,Var9),95,9); Var11:=SMA(ABS(L-REF(L,1)),3,1)/SMA(MAX(L-REF(L,1) ,0),3,1)*100; Var12:=HHV(Var11,30)*8; 火焰山:EMA(IF(LOW<=Var7 AND 趨勢<40,(Var11+Var12),0),3)/618,COLORRED,linethick2; STICKLINE(火焰山>0,0 ,火焰山*1.2,8,0 ),COLORRED; Var13:=(MA(C,1)+MA(C,3)+MA(C,5)+MA(C,7)+MA(C,9))/5 ; Var14:=(MA(C,2)+MA(C,4)+MA(C,6)+MA(C,8)+MA(C,10))/ 5; 趨勢線: 趨勢,colorff0000; Var16:=MAX(EMA(Var13,2)-EMA(Var14,5),0)*200; Var17:=EMA(Var16,5); 波浪峰:Var17,stick,colorff00ff; STICKLINE(Var17<REF(Var17,1),0,Var17,1,0),color00ff 00; Var18:=MA(趨勢線,8); if(CROSS(Var2,Var18) AND Var2<15,50,0),COLORRED; DRAWTEXT(CROSS(趨勢線,Var2)AND 趨勢線>REF(趨勢線,1)AND 趨勢線<50,50,'追漲'),COLORFF0000; 分析:這個(gè)公式輸出語句非常多,但多數(shù)都是用于趨勢判斷的。所以不用管它。仍按我們既定的思路進(jìn)行。 第一步{從后往前找},先刪除發(fā)出信號(hào)關(guān)鍵語句之后的(紅色為輸出語句,它以下的語句已經(jīng)刪去,藍(lán)色為等待下步刪除的) A01:=DYNAINFO(7); A03:=BARSCOUNT(CLOSE); A04:=(SMA((CLOSE / HHV(HIGH,120)),3,1) * 100); A05:=IF((A03 > 20),A04,0); A06:=IF((LOW > A01),0,IF((HIGH < A01),1,(((A01 - LOW) + 0.009) / ((HIGH - LOW) + 0.009)))); A07:=DMA(A06,(VOL / CAPITAL)) * 60; A09:=IF((((A07 > 0) AND (A07 > REF(A07,1))) AND (A05 <= 88)),A07,0); Var1:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV( LOW,27))*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HH V(HIGH,27)-LLV(LOW,27))*100,5,1),3,1); Var2:=EMA(Var1,8); Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*10 0,5,1)-2*SMA(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55) )*100,5,1),3,1); 趨勢:=EMA(Var3,3)-10; FILLRGN(趨勢>80,趨勢,80); DRAWICON(CROSS(趨勢,0),0,1); FILLRGN((A09 > 0 AND (趨勢<20 OR 趨勢>REF(趨勢,1)AND 趨勢<50)),0,A09),colorFFFF00; 機(jī)構(gòu)建倉區(qū):0,LINETHICK0,colorFFFF00; Var4:=(趨勢-REF(趨勢,1))/REF(趨勢,1)*100; STICKLINE(趨勢<=13,0,20,5,0),colorcc9900; DRAWTEXT(FILTER(趨勢<=13,15),30,'準(zhǔn)備現(xiàn)金'),colorcc9900; STICKLINE(趨勢<=13 AND Var4>13,0,50,5,0),color0099ff; Var5:=FILTER((趨勢<=13 AND Var4>13),10); DRAWTEXT(Var5,60,'買入'),color0099ff; 第二步{刪除沒用條}后 Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*10 0,5,1)-2*SMA(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55) )*100,5,1),3,1); 趨勢:=EMA(Var3,3)-10; DRAWICON(CROSS(趨勢,0),0,1); Var4:=(趨勢-REF(趨勢,1))/REF(趨勢,1)*100; Var5:=FILTER((趨勢<=13 AND Var4>13),10); DRAWTEXT(Var5,60,'買入'),color0099ff; 第三步{去掉修飾符后}: 趨勢:=EMA(Var3,3)-10; CROSS(趨勢,0); Var4:=(趨勢-REF(趨勢,1))/REF(趨勢,1)*100; Var5:=FILTER((趨勢<=13 AND Var4>13),10); Var5; 第四步{個(gè)別加等號(hào)}本公式中的"條件"語句都是不輸出的,所以此項(xiàng)省略,但因是要笑臉和買入兩個(gè)信號(hào),所以還必須把它們連結(jié)起來: Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*10 0,5,1)-2*SMA(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55) )*100,5,1),3,1); 趨勢:=EMA(Var3,3)-10; Var4:=(趨勢-REF(趨勢通達(dá)信選股公式編寫,1))/REF(趨勢,1)*100; Var5:=FILTER((趨勢<=13 AND Var4>13),10); CROSS(趨勢,0)or Var5; 第九講 函數(shù)的綜合運(yùn)用 第一部分:引用已有公式中的數(shù)據(jù) 基本引用例一 "macd. diff", "macd.dea"; 基本格式: 指標(biāo)名稱 語句名稱 (注意:必須用雙引號(hào)引上) 加入?yún)?shù)例二 "kdj. k" (9,3,3) ; 基本格式:指標(biāo)名稱 語句名稱 參數(shù) (指標(biāo)名稱和語句名稱之間用隔點(diǎn).隔開) 加入?yún)?shù)例三 周m:"macd. diff #WEEK"; 引用周線:指標(biāo)名稱 語句名稱 周函數(shù) (注意:周函數(shù)前加#字號(hào)) 月K:"kdj.k#MONTH"; 引用月線同上,只是換成月函數(shù)。 - 應(yīng)用實(shí)例:主圖 頂?shù)妆畴x A1:=BARSLAST(ref(cross("macd.diff"(12,26,9),"macd. dea"(12,26,9)),1)); B1:=ref(c,A1+1)>c and ref("macd.diff"(12,26,9),A1+1)<"macd.diff"(12,26,9) and cross("macd.diff"(12,26,9),"macd.dea"(12,26,9)); MACD底背離:STICKLINE(FILTER(B1>0,5),0,0.75,3,0),COLOR00FF00; DRAWTEXT(FILTER(B1>0,5),0.57,'MACD底背離'),COLOR00FF00; A2:=BARSLAST(ref(cross("kdj.k"(9,3,3),"kdj.d"(9,3, 3)),1)); B2:=ref(c,A2+1)>c and ref("kdj.k"(9,3,3),A2+1)<"kdj.k"(9,3,3) and cross("kdj.k"(9,3,3),"kdj.d"(9,3,3)); KDJ底背離:STICKLINE(FILTER(B2>0,5),0,1,3,0),COLORYELLOW; DRAWTEXT(FILTER(B2>0,5),0.80,'KDJ底背離'),COLORYELLOW; A3:=BARSLAST(ref(cross("RSI.RSI1"(6,12,24),"RSI.RS I2"(6,12,24)),1)); B3:=ref(c,A3+1)>c and ref("RSI.RSI1"(6,12,24),A3+1)<"RSI.RSI1"(6,12,24) and cross("RSI.RSI1"(6,12,24),"RSI.RSI2"(6,12,24)); RSI底背離:STICKLINE(FILTER(B3>0,5),0,0.5,3,0),COLORFFCC66; DRAWTEXT(FILTER(B3>0,5),0.25,'RSI底背離'),COLORFFCC66; DRAWTEXT(FILTER(D1>0,5),1.47,'MACD頂背離'),COLOR0066FF; C2:=BARSLAST(ref(cross("kdj.d"(9,3,3),"kdj.k"(9,3, 3)),1)); D2:=ref(c,C2+1)"kdj.k"(9,3,3) and cross("kdj.d"(9,3,3),"kdj.k"(9,3,3)); KDJ頂背離:STICKLINE(FILTER(D2>0,5),2,1,3,0),COLORRED; DRAWTEXT(FILTER(D2>0,5),1.2,'KDJ頂背離'),COLORRED; C3:=BARSLAST(ref(cross("RSI.RSI2"(6,12,24),"RSI.RS I1"(6,12,24)),1)); D3:=ref(c,C3+1)"RSI.RSI1"(6,12,24) and cross("RSI.RSI2"(6,12,24),"RSI.RSI1"(6,12,24)); RSI頂背離:STICKLINE(FILTER(D3>0,5),2,1.5,3,0),COLORFF00FF; DRAWTEXT(FILTER(D3>0,5),1.75,'RSI頂背離'),COLORFF00FF; 第二部分 逐步增加函數(shù) 以均線為例,主圖: 基本句型 MA5:MA(C,5); MA10:MA(C,10); MA30:MA(C,30); MA60:MA(C,60); 增加顏色(注:在沒有顏色輸出符號(hào)時(shí),系統(tǒng)會(huì)自動(dòng)加上顏色) MA5:MA(C,5),COLORBLUE; MA10:MA(C,10),COLORF00FF0; MA30:MA(C,30),COLORFFFF00; MA60:MA(C,60),COLORYELLOW; 將10日均線變成小圓圈線 MA5:MA(C,5),COLORBLUE; MA10:MA(C,10),COLORF00FF0,CIRCLEDOT; MA30:MA(C,30),COLORFFFF00; MA60:MA(C,60),COLORYELLOW; 將60日均線加粗 MA5:MA(C,5),COLORBLUE; MA10:MA(C,10),COLORF00FF0,CIRCLEDOT; MA30:MA(C,30),COLORFFFF00; MA60:MA(C,60),COLORYELLOW,LINETHICK3; 在5日均線金叉10日均線處顯示符號(hào) MA5:MA(C,5),COLORBLUE; MA10:MA(C,10),COLORF00FF0,CIRCLEDOT; MA30:MA(C,30),COLORFFFF00; MA60:MA(C,60),COLORYELLOW,LINETHICK3; 金叉:=CROSS(MA5,MA10); DRAWICON(金叉,L,1); DRAWTEXT(金叉,L,'金叉'); STICKLINE(金叉,H,L,6,0); (注:這三種顯示方式用其中一種就行) 30日均線向上時(shí)顯示紅色,否則為綠色 MA5:MA(C,5),COLORBLUE; MA10:MA(C,10),COLORF00FF0,CIRCLEDOT; MA30:MA(C,30),COLORFFFF00; MA60:MA(C,60),COLORYELLOW,LINETHICK3; 金叉:=CROSS(MA5,MA10); DRAWICON(金通達(dá)信分時(shí)選股公式叉,L,1); DRAWTEXT(金叉,L,'金叉'); STICKLINE(金叉,H,L,6,0); PARTLINE(MA30>=REF(MA30,1),MA30),COLORRED; PARTLINE(MA30<REF(MA30,1),MA30),COLOR00FF00; ?。ㄗⅲ鹤詈髢尚袨閯澐侄尉€,大智慧沒有此項(xiàng)功能,大智慧2和分析家 同花順用下面這行) PARTLINE(MA30,MA30>=REF(MA30,1),RGB(255,0,0),MA30<RE F(MA30,1),RGB(0,255,0),1); 通達(dá)信用下面這兩行: IF(MA30>=REF(MA30,1),MA30,DRAWNULL),COLORRED; IF(MA30<REF(MA30,1),MA30,DRAWNULL),COLOR00FF00; 第十講:常用函數(shù)示例 系統(tǒng)中的函數(shù)非常多,其中的一些函數(shù)只有在特定的語句中才會(huì)用得到。本文介紹幾個(gè)能經(jīng)常用到函數(shù),方便大家在以后編寫時(shí)使用。 1、COUNT 統(tǒng)計(jì)總數(shù) 原理:COUNT (X,N),統(tǒng)計(jì)N周期中滿足條件X的周期數(shù),若N=0則從第一個(gè)有效值開始。 例如:COUNT(C<O,10),表示統(tǒng)計(jì)10周期內(nèi)收陰的周期數(shù)。 以前曾列舉過這個(gè)函數(shù),今天單獨(dú)拿出來,是想進(jìn)一步說明它的應(yīng)用原理。以上面這個(gè)例子,單獨(dú)使用是沒有任何意義的。如語句:金叉 AND COUNT(C<O,10); 其輸出結(jié)果還是:金叉,后面的半句沒有起到作用。 那么怎么才能發(fā)揮它的作用呢?還必須在它的后面加上我們要求的條件。如:10周期內(nèi)收陰的周期數(shù)大于7,完整的表達(dá)式:金叉AND COUNT(C<O,10)>7; 再舉幾個(gè)例子: 成交量連續(xù)5天上升:COUNT(VOL>(VOL,1),5)=5; 如果求通達(dá)信選股公式5天內(nèi)只能1天上升:COUNT(VOL>(VOL,1),5)=1; 如果在5天內(nèi)成交量大于5日均量有2天以上呢COUNT(VOL>MA(VOL,5),5)>=2; |
|