龙听期货论坛's Archiver

龙听 发表于 2018-12-24 14:47

大智慧金城起爆公式源码[大智慧公式]

[color=#212121][font=宋体, Arial, Helvetica, sans-serif][size=14px]其实金城起爆一是金城五能(原文金城五能:能量指标-发一个自认为是精品的指标!)的另外一个算法,起爆二是从能量饱和的概念上做的优化!特别提醒:起爆一相对较准确,但信号较少;起爆二信号较多,但要注意股价是高位还是底部,高位饱和则盛极而衰,很可能构成顶部的!另外,在金城五能贴中有朋友问,图形就一条一条的小柱子,怎么用?其实很简单,在底部和上升途中出现起爆点,是买入和持仓的信号,高位就要注意顶部的风险了!但怎么判断高低顶部就是艺术了,建议结合一些判断顶底的指标来综合分析![/size][/font][/color]

[color=#212121][font=宋体, Arial, Helvetica, sans-serif][size=14px][code]
{金城起爆}
AA2:=VOL/((HIGH-LOW)*2-ABS(CLOSE-OPEN));
买量2:=IF(CLOSE>OPEN,AA2*(HIGH-LOW),IF(CLOSE<OPEN,AA2*((HIGH-OPEN)+(CLOSE-LOW)),VOL/2));
卖量2:=IF(CLOSE>OPEN,0-AA2*((HIGH-CLOSE)+(OPEN-LOW)),IF(CLOSE<OPEN,0-AA2*(HIGH-LOW),0-VOL/2));
DDX2:=(买量2+卖量2)/(买量2-卖量2);
d12:=eMA(ABS(DDX2),60);{DDX绝对值60日指数平滑移动平均}
d22:=MAx(DDX2/d12+7.5,7.5);
d32:=min(DDX2/d12,10); {能量级别:当日DDX与60日平均值的比值,最高10.0}

K1:=IF(CLOSE>=ref(CLOSE,1),HIGH-OPEN+CLOSE-LOW+CLOSE-ref(CLOSE,1),HIGH-OPEN+CLOSE-LOW);
K2:=IF(CLOSE<=ref(CLOSE,1),OPEN-LOW+HIGH-CLOSE+ref(CLOSE,1)-CLOSE,OPEN-LOW+HIGH-CLOSE);
DT:=VOL*K1/(K1+K2);
KT:=VOL-DT;
买量:=SUM(DT,1);
卖量:=SUM(KT,1);
DDX3:=EMA(买量-卖量,5)*VOL/SUM(vol,60)*0.001;
d11:=eMA(ABS(DDX3),60);{DDX绝对值60日指数平滑移动平均}
d21:=MAx(DDX3/d11+7.5,7.5);
d31:=min(DDX3/d11,10); {能量级别:当日DDX与60日平均值的比值,最高10.0}

TT:=(OPEN+HIGH+LOW+CLOSE)/4;
AA:=IF(BETWEEN(C,TT,H) OR C=O,VOL,0);
BB:=IF(BETWEEN(C,TT,L),VOL,0);
CC:=IF(AA AND BB,0,VOL/3);DDXJ:=10*(AA-(BB+CC))/IF(CAPITAL<1,SUM(VOL,13),CAPITAL);

jj:=(HIGH+LOW+CLOSE)/3;qj0:=vol/IF(HIGH=LOW,4,HIGH-LOW);
qj1:=IF(CAPITAL=0,qj0*(jj-MIN(CLOSE,OPEN)),qj0*IF(HIGH=LOW,1,(MIN(OPEN,CLOSE)-LOW)));
qj2:=IF(CAPITAL=0,qj0*(MIN(OPEN,CLOSE)-LOW),qj0*IF(HIGH=LOW,1,(jj-MIN(CLOSE,OPEN))));
qj3:=IF(CAPITAL=0,qj0*(HIGH-MAX(OPEN,CLOSE)),qj0*IF(HIGH=LOW,1,(HIGH-MAX(OPEN,CLOSE))));
qj4:=IF(CAPITAL=0,qj0*(MAX(CLOSE,OPEN)-jj),qj0*IF(HIGH=LOW,1,(MAX(CLOSE,OPEN)-jj)));
DDXQJ:=((qj1+qj2)-(qj3+qj4))/SUM(vol,60);

dJ11:=eMA(ABS(DDXQJ),60);{DDX绝对值60日指数平滑移动平均}
dJ21:=MAx(DDXQJ/dJ11+7.5,7.5);
dJ31:=min(DDXQJ/dJ11,10); {能量级别:当日DDX与60日平均值的比值,最高10.0}

dJ1:=eMA(ABS(DDXJ),60);{DDX绝对值60日指数平滑移动平均}
dJ2:=MAx(DDXJ/dJ1+7.5,7.5);
dJ3:=min(DDXJ/dJ1,10); {能量级别:当日DDX与60日平均值的比值,最高10.0}

d1:=eMA(ABS("DDX.DDX"),60);{DDX绝对值60日指数平滑移动平均}
d2:=MAx("DDX.DDX"/d1+7.5,7.5);
d3:=min("DDX.DDX"/d1,10); {能量级别:当日DDX与60日平均值的比值,最高10.0}

A1:=d3>0;
A2:=dJ3>0;
A3:=dJ31>0;
A4:=d31>0;
A5:=d32>0;
FA:=A1+A2+A3+A4+A5>4 OR A1+A2+A3+A4+A5=4;
能量启爆点1:IF(COUNT(FA,5)>4,50,0),COLOR00FFFF,POINTDOT,LINETHICK0;
STICKLINE(能量启爆点1,0,30,4,0),COLOR00FFFF;
SAT:=(AMOUNT/C)/(HHV(AMOUNT,20)/HHV(C,20))*100;
能量启爆点2:IF(cross(SAT,90) ,50 ,0),COLORRED,POINTDOT,LINETHICK0;
STICKLINE(能量启爆点2,0,30,4,0),COLORRED;
[/code]
[/size][/font][/color]

龙听 发表于 2018-12-24 14:47

源码解析:

AA2赋值:成交量(手)/((最高价-最低价)*2-收盘价-开盘价的绝对值)
买量2赋值:如果收阳线,返回AA2*(最高价-最低价),否则返回如果收阴线,返回AA2*((最高价-开盘价)+(收盘价-最低价)),否则返回成交量(手)/2
卖量2赋值:如果收阳线,返回0-AA2*((最高价-收盘价)+(开盘价-最低价)),否则返回如果收阴线,返回0-AA2*(最高价-最低价),否则返回0-成交量(手)/2
DDX2赋值:(买量2+卖量2)/(买量2-卖量2)
D12赋值:DDX2的绝对值的60日指数移动平均
D22赋值:DDX2/D12+7.5和7.5的较大值
D32赋值:DDX2/D12和10的较小值
K1赋值:如果收盘价>=昨收,返回最高价-开盘价+收盘价-最低价+收盘价-昨收,否则返回最高价-开盘价+收盘价-最低价
K2赋值:如果收盘价<=昨收,返回开盘价-最低价+最高价-收盘价+昨收-收盘价,否则返回开盘价-最低价+最高价-收盘价
DT赋值:成交量(手)*K1/(K1+K2)
KT赋值:成交量(手)-DT
买量赋值:DT的1日累和
卖量赋值:KT的1日累和
DDX3赋值:买量-卖量的5日指数移动平均*成交量(手)/成交量(手)的60日累和*0.001
D11赋值:DDX3的绝对值的60日指数移动平均
D21赋值:DDX3/D11+7.5和7.5的较大值
D31赋值:DDX3/D11和10的较小值
CXH赋值:STRTONUM(STRRIGHT(DATESTR(CURRENTDATE),1))
输出WARNING('HTTP://WWW.CXH99.COM',CURRENTTIME>180000 AND (CXH=1 OR CXH=6))
DRAWTEXTREL(10 ,10 ,'指标公式')
TT赋值:(开盘价+最高价+最低价+收盘价)/4
AA赋值:如果收盘价位于TT和最高价之间ORC=开盘价,返回成交量(手),否则返回0
BB赋值:如果收盘价位于TT和最低价之间,返回成交量(手),否则返回0
CC赋值:如果AAANDBB,返回0,否则返回成交量(手)/3
DDXJ赋值:10*(AA-(BB+CC))/如果当前流通股本(手)<1,返回成交量(手)的13日累和,否则返回当前流通股本(手)
JJ赋值:(最高价+最低价+收盘价)/3
QJ0赋值:成交量(手)/如果最高价=最低价,返回4,否则返回最高价-最低价
QJ1赋值:如果当前流通股本(手)=0,返回QJ0*(JJ-收盘价和开盘价的较小值),否则返回QJ0*如果最高价=最低价,返回1,否则返回(开盘价和收盘价的较小值-最低价)
QJ2赋值:如果当前流通股本(手)=0,返回QJ0*(开盘价和收盘价的较小值-最低价),否则返回QJ0*如果最高价=最低价,返回1,否则返回(JJ-收盘价和开盘价的较小值)
QJ3赋值:如果当前流通股本(手)=0,返回QJ0*(最高价-开盘价和收盘价的较大值),否则返回QJ0*如果最高价=最低价,返回1,否则返回(最高价-开盘价和收盘价的较大值)
QJ4赋值:如果当前流通股本(手)=0,返回QJ0*(收盘价和开盘价的较大值-JJ),否则返回QJ0*如果最高价=最低价,返回1,否则返回(收盘价和开盘价的较大值-JJ)
DDXQJ赋值:((QJ1+QJ2)-(QJ3+QJ4))/成交量(手)的60日累和
DJ11赋值:DDXQJ的绝对值的60日指数移动平均
DJ21赋值:DDXQJ/DJ11+7.5和7.5的较大值
DJ31赋值:DDXQJ/DJ11和10的较小值
DJ1赋值:DDXJ的绝对值的60日指数移动平均
DJ2赋值:DDXJ/DJ1+7.5和7.5的较大值
DJ3赋值:DDXJ/DJ1和10的较小值
D1赋值:"大单动向的DDX"的绝对值的60日指数移动平均
D2赋值:"大单动向的DDX"/D1+7.5和7.5的较大值
D3赋值:"大单动向的DDX"/D1和10的较小值
A1赋值:D3>0
A2赋值:DJ3>0
A3赋值:DJ31>0
A4赋值:D31>0
A5赋值:D32>0
FA赋值:A1+A2+A3+A4+A5>4 OR A1+A2+A3+A4+A5=4
输出能量启爆点1:如果统计5日中满足FA的天数>4,返回50,否则返回0,COLOR00FFFF,POINTDOT,线宽为0
当满足条件能量启爆点1时,在0和30位置之间画柱状线,宽度为4,0不为0则画空心柱.,COLOR00FFFF
SAT赋值:(成交额(元)/收盘价)/(20日内成交额(元)的最高值/20日内收盘价的最高值)*100
输出能量启爆点2:如果SAT上穿90,返回50,否则返回0,画红色,POINTDOT,线宽为0
当满足条件能量启爆点2时,在0和30位置之间画柱状线,宽度为4,0不为0则画空心柱.,画红色

页: [1]