朋友好們! 在第15講,我們學(xué)習(xí)了M A C D指標(biāo)頂、底背離的在主圖上的顯示,有朋友就提要求,能不能在MACD指標(biāo)上標(biāo)注頂、底背離? 時髦可樂**說:“老師:變色MACD上怎么加上頂、底背離和金叉、死叉,謝謝。” 其實(shí)這個很簡單的,只須將頂、底背離的源碼復(fù)制到MACD指標(biāo)上,把位置改一下就行了。 …… …… …… …… …… (M=12;N=26;P=9;) DIFIF1:EMA(CLOSE,M) - EMA(CLOSE,N); DEAEA1:EMA(DIFIF1,P); MACD1:=2*(DIFIF1-DEAEA1),STICK; MACD2:=EMA(MACD1,3); STICKLINE(MACD1>MACD2 AND MACD1>0,0,MACD1,1,0),COLORRED; STICKLINE(MACD1>MACD2 AND MACD1<0,0,MACD1,1,0),COLORGREEN; STICKLINE(MACD1<MACD2,0,MACD1,1,0),COLORCBCBC0; STICKLINE(MACD1>=0 OR MACD1<=0,0,0,50,1),COLORWHITE; DIFIF1,COLOR33FF33,LINETHICK2; DEAEA1,COLORYELLOW,LINETHICK2; MACD:MACD1,NODRAW,COLORMAGENTA; 強(qiáng):IF(DIFIF1>=DEAEA1,DIFIF1,DRAWNULL),COLORRED,LINETHICK2; 弱:IF(DEAEA1>=DIFIF1,DEAEA1,DRAWNULL),COLORFF9900,LINETHICK2; SC:=CROSS(DEAEA1,DIFIF1); {DIFFFI1死叉DEAEA1} SC1:=BARSLAST(SC); {上次SC距今天數(shù)} SC2:=BARSLAST(REF(SC,1)); {上次死叉前1日的SC距今天數(shù)} GJ:=MA(C,10)>MA(C,20) AND MA(C,20)>MA(C,60); {10、20、60日均線多頭排列} XG:=SC AND GJ AND REF(DIFIF1,SC1)<REF(DIFIF1,SC2) AND EVERY(DEAEA1>0,SC2) AND REF(H,SC1)>REF(H,SC2), NODRAW; {當(dāng)日DIFF不1死叉DEAEA1,且短均線多頭排列,且本次金叉時DIFFI1的值比上次金叉時小, 且上次DIFIF1金叉DEAEA1以來DEAEA1都大于0,且本次DIFIF1死叉DEAEA1時的最高價大于上次DIFIF1金叉DEA時的最高價} DRAWTEXT(XG,DIFIF1+0.1,'頂背'),COLORYELLOW; {滿足'選股'條件時,在DIFIF1+0.1處,顯示'頂背'}; JC:=CROSS(DIFIF1,DEAEA1); {DIF金叉DEA} JC1:=BARSLAST(JC); {上次JC距今天數(shù)} JC2:=BARSLAST(REF(JC,1)); {上次金叉前1日的JC距今天數(shù)} GJ2:=MA(C,10)<MA(C,20) AND MA(C,20)<MA(C,60);{10、20、60日均線空頭排列} XG2:=JC AND GJ2 AND REF(DIFIF1,JC1)>REF(DIFIF1,JC2) AND EVERY(DEAEA1<0,JC2) AND REF(L,JC1)<REF(L,JC2); {當(dāng)日DIFIF1金叉DEAEA1,且短均線空頭排列,且本次金叉時DIFIF1的值比上次金叉時大, 且上次DIFIF1金叉DEAEA1以來DEAEA1都小于0,且本次DIFIF1金叉DEAEA1時的最低價小于上次DIFIF1金叉DEAEA1時的最低價}; DRAWTEXT(XG2,DIFIF1-0.1,'底背'),COLORMAGENTA; {滿足'XG2'條件時,DIFIF1-0.1處,顯示'底背'}; …… …… …… …… …… 注意:顯示金叉、死叉的方法是一樣的,篇幅所限,你自己試試吧。 一、兩條指標(biāo)線間的區(qū)域涂上顏色的方法 Alfre**7提出問題:“請教一下,如何將5日均線金叉10日均線到5日均線死叉10日均線之間的區(qū)域變成紅色,通達(dá)信指標(biāo)如何表達(dá),謝謝老師編寫一下?!?/span> 那我們就先來學(xué)習(xí)“將5日均線金叉10日均線,到5日均線死叉10日均線之間的區(qū)域涂上顏色的方法。 首先寫出5日均線和10日均線: MA1:MA(C,5); MA2:MA(C,10); 下面我們要在特定的區(qū)域內(nèi)畫柱狀線,還記得用哪個函數(shù)嗎? 是STICKLINE 繪制柱線 屬于【繪圖函數(shù)】 用法: STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY), 括號中有五項(xiàng):第一項(xiàng)COND是要滿足的條件,第二項(xiàng)和第三項(xiàng)是位置,就是第二項(xiàng)位置1和第三項(xiàng)位置2的地方畫柱狀線,第四頂是柱狀線的寬度最大為10,寬度畫多少,可以用4試試,最后一項(xiàng)是柱狀線的形狀,0為實(shí)心線: 那我們試著在MA1和MA之間畫實(shí)心柱狀線: STICKLINE(MA1>=MA2,MA1,MA2,4,0),COLORYELLOW; {當(dāng)MA1大于或等于MA2時,在MA1和MA2之間,畫黃色柱,柱粗4,實(shí)心柱} …… …… …… …… …… MA1:MA(C,5); MA2:MA(C,10); STICKLINE(MA1>=MA2,MA1,MA2,4,0),COLORYELLOW; {當(dāng)MA1大于或等于MA2時,在MA1和MA2之間,畫黃色柱,柱粗4,實(shí)心柱} …… …… …… …… …… 將源碼復(fù)制到臨時文件中,【畫線方法】為“主圖疊加” 圖形中將柱狀線的寬度取的4,觀察圖形,發(fā)現(xiàn)K線被黃色柱子遮住部分,怎么辦?再畫一次K線吧。 還是在【繪圖函數(shù)】里,有一個收盤畫K線的函數(shù): DRAWKLINE(HIGH,OPEN,LOW,CLOSE),簡寫為: DRAWKLINE(H,O,L,C), …… …… …… …… …… MA1:MA(C,5); MA2:MA(C,10); STICKLINE(MA1>=MA2,MA1,MA2,4,0),COLORYELLOW; {當(dāng)MA1大于或等于MA2時,在MA1和MA2之間,畫黃色柱,柱粗4,實(shí)心柱} STICKLINE(MA1<=MA2,MA1,MA2,4,0),COLORMAGENTA; {當(dāng)MA1小于或等于MA2時,在MA1和MA2之間,畫洋紅色柱,柱粗4,實(shí)心柱} DRAWKLINE(H,O,L,C) {畫K線,防止色帶掩蓋K線}; …… …… …… …… …… 上圖就是按照公式,將5日、10日均線從金叉到死叉的區(qū)域涂成黃色,再將5日、10日均線從死叉到金叉的區(qū)域涂成洋紅色,好漂亮的一條彩帶,是不是很神奇! 二、將價托的區(qū)域涂上顏色的方法: 隨緣份**667提出問題:老師可以幫寫一個通達(dá)信軟件用的就是5金叉10,然后金叉20,形成的三角形就是價托,5金叉10,然后金叉20。20金叉40再金叉60,又形成三角形,60金叉120,再金叉250,又形成三角形。我要在三角形里填充顏色。這 樣 的均線主圖指標(biāo)。 何謂價托? 就是5日均線從下向上穿越10日均價線所形成的金叉點(diǎn)A;5日均價線從下向上穿越20日均價線所形成的金叉點(diǎn)B; 10日均價線從下向上穿越20日均價線所形成的金叉點(diǎn)C;由A、B、C三個點(diǎn)組成一個封閉的三角形,這個三角形就稱為“價托”。 下面就把5、10、20日均線形成的價托公式寫出來,至于20、40、60日均線和60、120、250日均線形成的價托,寫的方法是一樣的,你可以自己仿寫。我這里就寫一 個了,否則主圖畫面會很亂。 直接上源碼了,方法和上面寫彩帶的方法類似,但因?yàn)橛辛巳龡l線參與,還是費(fèi)了些心思才搞定的。 …… …… …… …… …… MA5:MA(C,5); MA10:MA(C,10); MA20:MA(C,20); ZB:=MA5>=MA10 AND MA5<MA20 AND MA10<MA20; {5日、10日線在20日線下方且5日線大于等于10線的部分,即價托的左半部} YB:=MA20>=MA10 AND MA5>MA20 AND MA5>MA10; {價托的右半部} STICKLINE(ZB,MA5,MA10,4,0),COLORYELLOW; {價托的左半部,在5日線至10日線之間畫粗細(xì)為4的黃色柱狀線} STICKLINE(YB,MA10,MA20,4,0),COLORMAGENTA; {價托的右半部,在10日線至20日線之間畫粗細(xì)為4的洋紅色柱狀線} DRAWKLINE(H,O,L,C); {畫K線,防止色帶掩蓋K線}; …… …… …… …… …… 從上圖中,大家可以看到,這個價托實(shí)際上是由兩塊構(gòu)成的,右邊兩個由黃色和洋紅色合作構(gòu)成的就是一個5、10、20日均線形成的價托,而左邊的黃色區(qū)域只滿足一半的條件,就構(gòu)不成價托了。 小結(jié): 今天我們學(xué)習(xí)了給某個區(qū)域涂顏色的方法,通過今天的學(xué)習(xí),還會對人家所謂的神奇指標(biāo)所呈現(xiàn)的彩帶區(qū)域感到震驚嗎? 不過這個是有難度的,并不是任意形狀都能做到的。關(guān)于給某個區(qū)域涂顏色的方法就到此為止吧,請不要再想些很奇怪的區(qū)域叫我來編寫公式啦。 |
|
來自: 獵人一個 > 《自用指標(biāo)》