飛狐版北沙MACD幅圖指標公式公式[其他軟件公式]
相關標簽:
?
飛狐版北沙MACD幅圖公式由于在飛狐里無法使用畫直線函數 DRAWLINE 作為變量引用,只能使用飛狐的趨勢線數值函數 LINEVALUE 代替,但因為此函數的特殊性質『估計此函數設計出來就是為了預警使用的』,相同的畫線條件在個股圖形中只能顯示最新成立的一段畫線,無法在歷史圖形中顯示,這個也是無奈之舉,如果哪位老師有更好的方法解決 通達信 畫直線函數 DRAWLINE 在飛狐中的變量引用問題,請一定指教,我這里先萬分感謝了源碼
?
?
?
原理解析:
?
?來源:程序化99( www.weiqiv.net.cn )
源碼:
?
?
MACD:"MACD.MACD",LINETHICK;
W1:STICKLINE(MACD>0,MACD,0,8,1),COLORRED;
W2:STICKLINE(MACD<0,MACD,0,8,1),COLORCYAN;
VA1:=HHVBARS(MACD,BARSLAST(MACD<0)+1);
VA2:=CROSS(BACKSET(CROSS(0,MACD),REF(VA1,1)+2),0.5);
QG:=CROSS(BACKSET(CROSS(0,MACD) OR (ISLASTBAR AND MACD>0),REF(VA1,1)+2),0.5);
前高:LINEVALUE(VA2,MACD,REF(VA2,1),REF(MACD,1),0,0),COLORMAGENTA;
VA3:=LLVBARS(MACD,BARSLAST(MACD>0)+1);
VA4:=CROSS(BACKSET(CROSS(MACD,0),REF(VA3,1)+2),0.5);
BD:=BARSLAST(FILTERX(CROSS(0,MACD),BARSCOUNT(C)));
前低:LINEVALUE(VA4,MACD,REF(VA4,1),REF(MACD,1),0,0);
BDTJ:=IF(MACD<0,FILTERX(MACD=LLV(MACD,BARSLAST(MACD>0)),
BARSCOUNT(C)),0);
TSBDTJ:=BARSLAST(BDTJ);
ZQ:=DATACOUNT-BARPOS;
BDZH:=FILTERX(MACD<REFX(LLV(MACD,BD+1),ZQ),BARSCOUNT(C));
BDTS:=BARSLAST(BDZH);
本低:IF(BD+1>=1,REFX(LLV(MACD,BD+1),ZQ),0),LINETHICK;
PARTLINE(BD+1>=1,REFX(LLV(MACD,BD+1),ZQ));
BDCL:=CROSS(COUNT(CROSS(MACD>本低/2 AND MACD<0,0.5),TSBDTJ)=1,0.5) AND TSBDTJ>=0;
終點:=IF(ISLASTBAR AND MACD>0 AND MACD=HHV(MACD,BARSLAST(MACD<0)),1,
IF(FILTERX(QG,BARSCOUNT(C)),2,0));
UU:=(終點=1 OR 終點=2) AND MACD>0;
ZZ:=FILTERX(UU,BARSCOUNT(C));
本高:LINEVALUE(ZZ,MACD,REF(ZZ,1),REF(MACD,1),0,0),COLORWHITE;
橫線:=REFX(REF(MACD,BARSLAST(ZZ)),ZQ);
WW:=MACD>橫線;
起始點:=FILTERX(REFX(BARSLAST(WW),1)=1,BARSCOUNT(C));
天數┃:BARSLAST(起始點),COLORYELLOW,LINETHICK;
上橫線:LINEVALUE(起始點,橫線,ZZ,橫線,0,0),COLORGREEN,LINEDOT;
下橫線:DRAWLINE(BDZH,REFX(LLV(MACD,BD+1),ZQ),BDTJ=1,MACD,0),COLOR8080FF,LINEDOT;
DRAWNUMBER(BDTJ,REFX(LLV(MACD,BD+1),ZQ)*0.9,BDTS,2);
DRAWNUMBER(ZZ,上橫線*1.1,天數┃,2);
AQ:=SETVAL(起始點,BARSLAST(ZZ),0-BARSLAST(ZZ),BARSLAST(ZZ));
TJ:=IF(起始點,AQ,0);
紅柱數量:IF(天數┃>0 AND 天數┃<=REF(TJ,天數┃),SUM(MACD>0,天數┃),0),COLORWHITE,LINETHICK;
橫線起始價:REF(C,天數),LINETHICK;
空間評估:(橫線起始價-C)/C*100,LINETHICK;
TT:=BARSLAST(ZZ);
WQG:=CROSS(COUNT(CROSS(MACD<本高/2 AND MACD>0,0.5),ZZ)=1,0.5) AND ZZ>=0;
STICKLINE(MACD>前高 AND 本高>前高 AND BARSLAST(CROSS(MACD<本高/2,0.5))>0 AND
MACD>(前高+本高)/2,MACD,前高,2.6666666666666666666666666666667,0),COLORYELLOW;
前高本高二分位:IF(MACD>0 AND 本高<>前高,LINEVALUE(WQG,(前高+本高)/2,REF(WQG,1),REF((前高+本高)/2,1),0,0)
,0),COLORC0C000,LINEDOT,LINETHICK;
PARTLINE(MACD>0 AND 本高<>前高,LINEVALUE(WQG,(前高+本高)/2,REF(WQG,1),REF((前高+本高)/2,1),0,0)),COLORC0C000,LINEDOT;
AA:='〖'+'上升空間'+'〗'+NUMTOSTR(IF(空間評估,空間評估,0),2);
DRAWTEXTEX(C>0,1,0,1000,AA + '﹪'),COLORWHITE;
DRAWTEXT(WQG,MACD*1.1,'本高成立'),COLORWHITE;
DRAWTEXT(BDCL,MACD*1.1,'本低成立'),COLORWHITE;
STICKLINE(MACD>前高,MACD,前高,1,0),COLORYELLOW;
STICKLINE(WQG,MACD,0,2.6666666666666666666666666666667,0),COLORGREEN;
STICKLINE(MACD<0 AND MACD<前低 AND 前低<0,MACD,前低,2.6666666666666666666666666666667,0),COLORBLUE;
AQ1:=SETVAL(CROSS(MACD<0,0.5),BARSLAST(BDTJ),0-BARSLAST(BDTJ),BARSLAST(BDTJ));
B1:=IF(CROSS(MACD<0,0.5),AQ1,0);
TSB1:=BARSLAST(MACD>0)-1;
STICKLINE(BARSLAST(BDCL)>=0 AND MACD<前低 AND MACD<0,MACD,前低,2.6666666666666666666666666666667,0),COLORGREEN;
STICKLINE(BDCL,MACD,0,2.6666666666666666666666666666667,0),COLORWHITE;
STICKLINE(MACD>前高 AND 本高>前高 AND BARSLAST(WQG)>0,
MACD,前高,2.6666666666666666666666666666667,0),COLORRED;
DRAWTEXT(VA2 AND VA2<>UU,(MACD/10)*9,'前');
DRAWTEXT(VA2 AND VA2<>UU,MACD/10,'高');
DRAWTEXT(ZZ,(MACD/10)*9,'本'),COLORWHITE;
DRAWTEXT(ZZ,MACD/10,'高'),COLORWHITE;
DRAWTEXT(BDTJ,(MACD/10)*9,'低'),COLORRED;
DRAWTEXT(BDTJ,MACD/10,'本'),COLORRED;
PARTLINE(BARSLAST(BDCL)>=0,本低/2),COLORRED,LINEDOT;{程序化交易 www.weiqiv.net.cn }
?
公式導入教程: 【通達信公式源碼導入方法教程】 【同花順公式源碼導入方法教程】 【大智慧新一代公式源碼導入方法教程】
?
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容