
1、源码分解
网上流传的指标“鱼跃龙门”指标有些给加密了,好不容易找到一个主图源码,代码如下:
A:=(3*C+L+O+H)/6; X:=(20*A+19*REF(A,1)+18*REF(A,2)+17*REF(A,3)+16*REF(A,4)+15*REF(A,5)+ 14*REF(A,6)+13*REF(A,7)+12*REF(A,8)+11*REF(A,9)+10*REF(A,10)+9*REF(A,11)+8*REF(A,12) +7*REF(A,13)+6*REF(A,14)+5*REF(A,15)+4*REF(A,16)+3*REF(A,17)+2*REF(A,18)+ REF(A,20))/210; S2:=SMA(C,3,1); S6:=SMA(C,5,1); DK:=2*(S2-S6); 主力成本:EMA(X,13),COLORFF00FF,LINETHICK0; 短期底部:LLV(HIGH,30),LINETHICK2,COLORFFCC00; IF(MA(C,3),MA(C,3),DRAWNULL),COLORYELLOW,LINETHICK2; IF(MA(C,9),MA(C,9),DRAWNULL),COLORMAGENTA,LINETHICK2; IF(MA(C,23.5),MA(C,23.5),DRAWNULL),COLORWHITE; DRAWKLINE(HIGH,OPEN,LOW,CLOSE); MA5:=MA(C,5); MA10:=MA(C,10); MA30:=MA(C,30); FA:=BARSLAST(CROSS(MA10,MA5)) AND CROSS(MA5,MA10); FB:=FA AND MA5>MA30 AND MA10>MA30 AND MA10>REF(MA10,1); DRAWTEXT(FB,L-0.58,'★龙门关'),COLORRED; V1:=EMA(CLOSE,5); V2:=EMA(EMA(CLOSE,90)*1.01,10); DRAWTEXT(CROSS(V1,V2),V1+0.05,'迎上水'),COLOR00FF00; VAR1:=LLV(LOW,21); VAR2:=HHV(HIGH,21); AK1:=EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 100),5); AK:=EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 50),13); AB:=CROSS(AK1,AK); DRAWTEXT((AB = 1),(LOW * 0.99),'○鱼跃'),COLORYELLOW; AA1:=(AMOUNT/V); BB1:=L<AA1*0.9; CC1:=(C-REF(C,1))/REF(C,1)*100>1.2; DD1:=L<MA(C,5)*0.921; EE1:=V<MA(V,5)*1.5; 鱼跃龙门:=BB1 AND CC1 AND DD1 AND EE1,LINETHICK0,COLOR0099FF; DRAWTEXT(鱼跃龙门,L*0.99,'鱼跃龙门'),COLOR0099FF; VAR3AA:=IF((CLOSE>REF(CLOSE,1)),88,0); VAR4AA:=IF(((CLOSE)/(REF(CLOSE,1))>1.05) AND ((HIGH)/(CLOSE)<1.01) AND (VAR3AA>0),91,0); DRAWTEXT(FILTER((VAR4AA>90),45),(LOW)*(0.93),'★蓄势待发 '),COLOR00FFFF; DRAWTEXT(FILTER((VAR4AA>90),35),(LOW)*(0.99000001),'★补仓'),COLOR00FFFF; A1AA:=9; A2AA:=(REF(CLOSE,A1AA+1)<CLOSE); DRAWTEXT(FILTER((A2AA>-0.5),84),(HIGH)*(1.05),'风险警示'),COLORFFFFFF; VAR6:=REF(C,1); VAR7:=SMA(MAX(C-VAR6,0),6,1)/SMA(ABS(C-VAR6),6,1)*100; DRAWTEXT(CROSS(82,VAR7),H*1.01,'风险警示'),COLORYELLOW;
看起来代码比较多,实际上是分了几部分写的,拆解后分成以下几部分:
1)主力成本和短期底部
A:=(3*C+L+O+H)/6; X:=(20*A+19*REF(A,1)+18*REF(A,2)+17*REF(A,3)+16*REF(A,4)+15*REF(A,5)+ 14*REF(A,6)+13*REF(A,7)+12*REF(A,8)+11*REF(A,9)+10*REF(A,10)+9*REF(A,11)+8*REF(A,12) +7*REF(A,13)+6*REF(A,14)+5*REF(A,15)+4*REF(A,16)+3*REF(A,17)+2*REF(A,18)+ REF(A,20))/210; S2:=SMA(C,3,1); S6:=SMA(C,5,1); DK:=2*(S2-S6); 主力成本:EMA(X,13),COLORFF00FF,LINETHICK0; 短期底部:LLV(HIGH,30),LINETHICK2,COLORFFCC00;
参数X输出线,实际上和13天的均线绝大部分高度重合,没有必要写这么多代码,均线只是参考,每个主力使用的均线也不一样,而且主力还会刻意让收盘价或者最低价跌破所谓的成本均线,这是需要改变参数寻找比较切合主力使用的均线。

白线代表X,绿线代表 MA(C,13),13日均线,白线绿线高度重合;粉线代表EMA(X,13)原主力成本线,红线代表13日均线的EMA(MA(C,13),13),粉线红线也是高度重合。
这几行
A:=(3*C+L+O+H)/6; S2:=SMA(C,3,1); S6:=SMA(C,5,1); DK:=2*(S2-S6);
似乎没有用,“主力成本和短期底部”代码改写为:
X:=MA(C,13); 主力成本:EMA(X,13),COLORFF00FF,LINETHICK0; 短期底部:LLV(HIGH,30),LINETHICK2,COLORFFCC00;
2)均线K线
IF(MA(C,3),MA(C,3),DRAWNULL),COLORYELLOW,LINETHICK2; IF(MA(C,9),MA(C,9),DRAWNULL),COLORMAGENTA,LINETHICK2; IF(MA(C,23.5),MA(C,23.5),DRAWNULL),COLORWHITE; DRAWKLINE(HIGH,OPEN,LOW,CLOSE);
这部分表示如果是均线,就选均线否则选择空,表示均线何必这么啰嗦,再23.5与24差别不大,而且还有2560战法中25日均线也是重要均线,这里取24日均线:
M3:MA(C,3),COLORYELLOW,LINETHICK2; M9:MA(C,9),COLORMAGENTA,LINETHICK2; M24:MA(C,24),COLORWHITE; DRAWKLINE(HIGH,OPEN,LOW,CLOSE);
3)龙门关
MA5:=MA(C,5); MA10:=MA(C,10); MA30:=MA(C,30); FA:=BARSLAST(CROSS(MA10,MA5)) AND CROSS(MA5,MA10); FB:=FA AND MA5>MA30 AND MA10>MA30 AND MA10>REF(MA10,1); DRAWTEXT(FB,L-0.58,'★龙门关'),COLORRED;
做出副图指标如下:
MA5:=MA(C,5); MA10:=MA(C,10); MA30:=MA(C,30); FA:=BARSLAST(CROSS(MA10,MA5)) AND CROSS(MA5,MA10); FB:FA AND MA5>MA30 AND MA10>MA30 AND MA10>REF(MA10,1),COLORRED;
4)迎上水
V1:=EMA(CLOSE,5); V2:=EMA(EMA(CLOSE,90)*1.01,10); DRAWTEXT(CROSS(V1,V2),V1+0.05,'迎上水'),COLOR00FF00;
做出副图指标如下:
V1:=EMA(CLOSE,5); V2:=EMA(EMA(CLOSE,90)*1.01,10); B:CROSS(V1,V2);
5)鱼跃
VAR1:=LLV(LOW,21); VAR2:=HHV(HIGH,21); AK1:=EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 100),5); AK:=EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 50),13); AB:=CROSS(AK1,AK); DRAWTEXT((AB = 1),(LOW * 0.99),'○鱼跃'),COLORYELLOW;
做出副图指标如下:
VAR1:=LLV(LOW,21); VAR2:=HHV(HIGH,21); AK1:EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 100),5); AK:EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 50),13);
6)鱼跃龙门
AA1:=(AMOUNT/V); BB1:=L<AA1*0.9; CC1:=(C-REF(C,1))/REF(C,1)*100>1.2; DD1:=L<MA(C,5)*0.921; EE1:=V<MA(V,5)*1.5; 鱼跃龙门:=BB1 AND CC1 AND DD1 AND EE1,LINETHICK0,COLOR0099FF; DRAWTEXT(鱼跃龙门,L*0.99,'鱼跃龙门'),COLOR0099FF;
AA1:=(AMOUNT/V);
AMOUNT函数,代表该周期成交额,V为该周期成交量。AA1实际上是100手的价格,再加系数也是大于最低价的,换算成1股的价格,代表的是该周期的均价,
做出副图指标如下:
鱼跃龙门C
AA1:=(AMOUNT/V)/100; BB1:=L<AA1*0.9; CC1:=(C-REF(C,1))/REF(C,1)*100>1.2; DD1:=L<MA(C,5)*0.921; EE1:=V<MA(V,5)*1.5; 鱼跃龙门: BB1 AND CC1 AND DD1 AND EE1;
7)蓄势待发和补仓
VAR3AA:=IF((CLOSE>REF(CLOSE,1)),88,0); VAR4AA:=IF(((CLOSE)/(REF(CLOSE,1))>1.05) AND ((HIGH)/(CLOSE)<1.01) AND (VAR3AA>0),91,0); DRAWTEXT(FILTER((VAR4AA>90),45),(LOW)*(0.93),'★蓄势待发 '),COLOR00FFFF; DRAWTEXT(FILTER((VAR4AA>90),35),(LOW)*(0.99000001),'★补仓'),COLOR00FFFF;
做出副图指标如下:
VAR3AA:=IF((CLOSE>REF(CLOSE,1)),88,0); VAR4AA:=IF(((CLOSE)/(REF(CLOSE,1))>1.05) AND ((HIGH)/(CLOSE)<1.01) AND (VAR3AA>0),91,0); 蓄势:FILTER((VAR4AA>90),13); 补仓:FILTER((VAR4AA>90),5);
8)风险警示
A1AA:=9; A2AA:=(REF(CLOSE,A1AA+1)<CLOSE); DRAWTEXT(FILTER((A2AA>-0.5),84),(HIGH)*(1.05),'风险警示'),COLORFFFFFF; VAR6:=REF(C,1); VAR7:=SMA(MAX(C-VAR6,0),6,1)/SMA(ABS(C-VAR6),6,1)*100; DRAWTEXT(CROSS(82,VAR7),H*1.01,'风险警示'),COLORYELLOW;
做出副图指标如下:
风险警示F
A1AA:=9; A2AA:=(REF(CLOSE,A1AA+1)<CLOSE); A:FILTER((A2AA>-0.5),84);
风险警示SMA
VAR6:=REF(C,1); VAR7:SMA(MAX(C-VAR6,0),6,1)/SMA(ABS(C-VAR6),6,1)*100,COLORYELLOW; 82,COLORRED;

2、“鱼跃龙门”指标改写
X:=MA(C,13); 主力成本:EMA(X,13),COLORFF00FF,LINETHICK2; 短期底部:=LLV(HIGH,30),LINETHICK2,COLORFFCC00; M3:MA(C,3),COLORYELLOW,LINETHICK1; M65:MA(C,65),COLORGREEN; DRAWKLINE(HIGH,OPEN,LOW,CLOSE); V1:=EMA(CLOSE,5); V2:=EMA(EMA(CLOSE,90)*1.03,10); DRAWTEXT(CROSS(V1,V2),V1*0.96,'★迎上水'),COLORRED; VAR1:=LLV(LOW,21); VAR2:=HHV(HIGH,21); AK1:=EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 100),5); AK:=EMA((((CLOSE - VAR1) / (VAR2 - VAR1)) * 50),13); AB:=CROSS(AK1,AK); DRAWICON((AB = 1),LOW,1); DRAWTEXT((AB = 1),LOW*0.96,'鱼跃'),COLORYELLOW; AA1:=(AMOUNT/V)/100; BB1:=L<AA1*0.9; CC1:=(C-REF(C,1))/REF(C,1)*100>1.2; DD1:=L<MA(C,5)*0.921; EE1:=V<MA(V,5)*1.5; 鱼跃龙门:=BB1 AND CC1 AND DD1 AND EE1; DRAWTEXT(鱼跃龙门,L*0.99,'鱼跃龙门'),COLOR0099FF; VAR6:=REF(C,1); VAR7:=SMA(MAX(C-VAR6,0),6,1)/SMA(ABS(C-VAR6),6,1)*100; DRAWICON(CROSS(82,VAR7),H*1.015,2); DRAWTEXT(CROSS(82,VAR7),H*1.03,'提醒'),COLORYELLOW;
1)波段底部和头部都能提示出来,长期下跌趋势的“鱼跃”信号需要分析,上涨趋势形成,“鱼跃”信号指示明确;
2)上涨趋势形成的初期“提醒”可以等待确定,经过快速拉升,涨幅较大的,“提醒”一定要重视;
3)其他的等待读者总结。
改写后的“鱼跃龙门”指标图示如下:

(以上内容仅供参考,不构成操作建议。仅供研究学习交流使用,如自行操作,注意仓位控制,风险自负。)










发表评论