英镑 2008-6-28 16:17
[06-28] 大智慧引用函数HHV和LLV的运用 (引)
[font=宋体][size=4][color=#0000ff]引用函数HHV和LLV的运用
1、引用函数HHV 最高值 求最高值。 用法:HHV(X,N),求N周期内X最高值,N=0则从第一个有效值开始。 例如:HHV(HIGH,30),表示求30日最高价。
2、引用函数LLV 最低值 求最低值。 用法:LLV(X,N),求N周期内X最低值,N=0则从第一个有效值开始。 例如:LLV(LOW,0),表示求历史最低价。
例1、如指标(主图)
CG:=Ma(C,18),color00ff00;{18日简单移动平均}
FL:=hhv(CG,3),COLOR00ff00;{取3日CG的最高值}
FL3:hhv(CG,9),COLOR00FF00,linethick2;{取9日CG的最高值,画绿色粗线}
FS3:if(CG<FL3,(CG-(FL3-CG)),FL3),COLORred,linethick2;{根据括号内所求的值及条件画红色粗线}。
例2、根据走势特征编制n日内创新高选股公式: [/color][/size][/font]
[font=宋体][size=4][color=#0000ff] hhv(high,n)=hhv(high,0) and barscount(c)>=n;
注:n为指标参数,可在参数设定范围内设定参数范围。HHV(x,n),求n周期内x最高值,n=0则从第一个有效值开始;barscount(x),将当前位置到n周期前的数值设为1,若x非0,则将当前位置到n周期前的数值设为1。如把N添上参数30就是30日内创新高。
例3、指标(副图)
{三线开花 n:1 100 20}
C0:=(h+l+c)/3;
a1:=HHV(C0,n);a2:=LLV(C0,n);a3:=a1-a2;[/color][/size][/font]
[size=12pt][font=宋体][size=4][color=#0000ff]a4:=ema((C0-a2)/a3,2)*100;
b1:=HHV(C0,4*n);b2:=LLV(C0,4*n);b3:=b1-b2;
b4:=ema((C0-b2)/b3,2)*100;
C1:=HHV(C0,16*n);C2:=LLV(C0,16*n);C3:=C1-C2;
C4:=ema((C0-C2)/C3,2)*100;
[/color][/size][/font][/size][font=宋体][size=4][color=#0000ff]短期相对价位:a4,color66d,linethick2;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]中期相对价位:b4,color6699ff,linethick2;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]长期相对价位:C4,color6600ff,linethick2;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]天线:95,linethick2,coloreeee33,pointdot;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]地线:5,linethick2,color33ee33,pointdot;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]中线:50,linethick2,coloreeeeee,pointdot;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]指标解析:
{[/color][/size][/font][font=宋体][size=4][color=#0000ff]三线开花 n:1 100 20}
C0[color=#0000ff]:=([/color][/color][color=#0000ff][size=12pt]最高价[/size][size=12pt]+[/size][size=12pt]最低价[/size][size=12pt]+[/size][/color][/size][/font][color=#0000ff][font=宋体][size=4]收盘价)/3;
a1:=[size=12pt]最高值[/size][size=12pt](C0,n);a2:=[/size][/size][/font][/color][font=宋体][size=4][color=#0000ff]最低值(C0,n);a3:=a1-a2;
a4:=[/color][/size][/font][color=#0000ff][font=宋体][size=4]指数平滑移动平均((C0-a2)/a3,2)*100;
b1:=[size=12pt]最高值[/size][size=12pt](C0,4*n);b2:=[/size][/size][/font][/color][font=宋体][size=4][color=#0000ff]最低值(C0,4*n);b3:=b1-b2;
b4:=[/color][/size][/font][color=#0000ff][size=4][font=宋体]指数平滑移动平均((C0-b2)/b3,2)*100;
C1:=[color=#0000ff]最高值[/color][size=12pt][color=#0000ff](C0,16*n);[/color][/size][/font][/size][/color]
[font=宋体][size=4][color=#0000ff][size=12pt]C2:=[/size][/color][/size][/font][font=宋体][size=4][color=#0000ff]最低值(C0,16*n);C3:=C1-C2;
C4:=[/color][/size][/font][font=宋体][size=4][color=#0000ff]指数平滑移动平均((C0-C2)/C3,2)*100;
[/color][/size][/font][font=宋体][size=4][color=#0000ff][color=#0000ff]短期相对价位:a4,color66d,linethick2[/color];
[/color][/size][/font][font=宋体][size=4][color=#0000ff]中期相对价位:b4,color6699ff,linethick2;
[/color][/size][/font][font=宋体][size=4][color=#0000ff]长期相对价位:C4,color6600ff,linethick2;
[size=12pt]天线[/size][size=12pt]:95,linethick2,coloreeee33,[/size][/color][/size][/font][font=宋体][size=4][color=#0000ff]点状线;
[size=12pt]地线[/size][size=12pt]:5,linethick2,color33ee33,[/size][/color][/size][/font][font=宋体][size=4][color=#0000ff]点状线;
[size=12pt]中线[/size][size=12pt]:50,linethick2,coloreeeeee,[/size][/color][/size][/font][font=宋体][size=4][color=#0000ff]点状线;
[size=12pt]例[/size][size=12pt]4[/size][size=12pt]、选股指标[/size][size=12pt]n[/size][/color][/size][/font][font=宋体][size=4][color=#0000ff]日内创新低
[/color][/size][/font][font=宋体][size=4][color=#0000ff] llv(low,n)=llv(low,0) and barscount(close)>=n;
[size=12pt]注[/size][size=12pt]n[/size][size=12pt]为指标参数,可在参数设定范围内设定参数范围。[/size][size=12pt]Llv(x,n)[/size][size=12pt],求[/size][size=12pt]n[/size][size=12pt]周期内[/size][size=12pt]x[/size][size=12pt]最低值,[/size][size=12pt]n=0[/size][size=12pt]则从第一个有效值开始;[/size][size=12pt]barscount(x)[/size][size=12pt]第一个有效数据到当前的天数,例如,[/size][size=12pt]barscount(close)[/size][/color][/size][/font][font=宋体][size=4][color=#0000ff]以于日线数据取得上市以来总交易日数。
[/color][/size][/font][font=宋体][size=4][color=#0000ff]以上这两个函数在指标编写中被广泛采用。[/color][/size][/font]
大智慧诊断指标编写 引
[b][size=4][color=#0000ff]大智慧的诊断指标形同于飞狐、分析家的解盘指标,都是通过文字来提供当前盘面个股的趋势、均线、基本面、K线形态等技术指标的演化状态的,这对盘面分析很有帮助。[/color][/size][/b][b][size=4][color=#0000ff]
诊断指标是通过引用技术指标来完成文字诊断的。此外,还要用到文字诊断字符串输出函数,下面分别介绍所用到的函数:[/color][/size][/b][b][size=4][color=#0000ff]
1、IFS 字符串IF函数 用法:IFS(A>B,’返回A’,’返回[/color][/size][/b][b][size=4][color=#0000ff]B’);
该函数返回一个字符串,上例表示:[/color][/size][/b][b][size=4][color=#0000ff]
如果A大于B,则返回’返回A’串,否则返回’返回B’串;[/color][/size][/b][b][size=4][color=#0000ff]
2、STR 数据到字符串转换函数 用法[/color][/size][/b][b][size=4][color=#0000ff]:STR(X,N);
该函数返回一个字符串.上例子表示:范围精度为N的X的字符串[/color][/size][/b][b][size=4][color=#0000ff];
诊断指标分两部分组成,前一部分是指标公式,后一部分是文字诊断。下面我们用实例来说明指标的编制[/color][/size][/b][b][size=4][color=#0000ff]:
{基本面 参数[/color][/size][/b][b][size=4][color=#0000ff] n1:1 999 50 n2:1 999 10 p1:1 999 20 p2:1 999 50 s1:1,99999,40000;s2:1,99999,10000}
m1:=FINANCE(33);{每股收益[/color][/size][/b][b][size=4][color=#0000ff]}
m2:=FINANCE(34);{每股净资产[/color][/size][/b][b][size=4][color=#0000ff]}
m3:=CAPITAL/1000000;{流通盘[/color][/size][/b][b][size=4][color=#0000ff]}
m4:=FINANCE(34);{净资产[/color][/size][/b][b][size=4][color=#0000ff]}
m5:=FINANCE(18);{公积金[/color][/size][/b][b][size=4][color=#0000ff]}
m6:=FINANCE(32);{未分配利润[/color][/size][/b][b][size=4][color=#0000ff]}
c1:=c/ref(ema(c,30),30);
c2:=indexc/ref(ema(indexc,30),30);
l1:=c1/c2*10-10;
c3:=c/ma(c,60);
c4:=indexc/ma(indexc,60);
l2:=c3/c4*10-10;
c5:=c/ma(c,120);
c6:=indexc/ma(indexc,120);
l3:=c5/c6*10-10;
L4:=MA(L1+L2+L3,5);
DIFF:="MACD.DIFF"(12,26,9);
DEA:="MACD.DEA"(12,26,9);
MACD:="MACD.MACD"(12,26,9);
K:="KD.K"(17,4,4);
D:="KD.D"(17,4,4);
{以上部分是公式,不能设有返回值,也就是全用":="赋值符。以下部分是引用上面的公式所做的文字诊断[/color][/size][/b][b][size=4][color=#0000ff]}
’【理想解盘】[/color][/size][/b][b][size=4][color=#0000ff]’+
’该股为[/color][/size][/b][b][size=4][color=#0000ff]’+
IFS(FINANCE(33)>=N1/100,’绩优、’,’’)+IFS(FINANCE(33)<N1/100 AND FINANCE(33)>=N2/100,’中等业绩、’,’’)+IFS(FINANCE(33)<N2/100 AND FINANCE(33)>=0,’绩差、’,’’)+IFS(FINANCE(33)<0,’亏损、[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DYNAINFO(39)<=P1 AND DYNAINFO(39)>0,’低市盈率、’,’’)+IFS(DYNAINFO(39)>P1 AND DYNAINFO(39)<=P2,’中等市盈率、’,’’)+IFS(DYNAINFO(39)>P2,’高市盈率、’,’’)+IFS(FINANCE(7)>=S1,’大盘股。’,’’)+IFS(FINANCE(7)<S1 AND FINANCE(7)>=S2,’中盘股。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(FINANCE(7)<S2,’小盘股。’,’’)+’流通盘(万)’+str(m3,4)+’。每股净资产为’+str(m4,2)+’,收益为’+str(m1,2)+’,市盈率为’+str(c/m1,3)+’,市净率为’+str(c/m2,2)+’,公积金为’+str(m5,2)+’,未分配利润为’+str(m6,2)+’。[/color][/size][/b][b][size=4][color=#0000ff]’+
{’’之间的汉字作为字符串输出会显示在评价窗口中,str函数把数字转化为字符串输出。数据到字符串转换函数。[/color][/size][/b][b][size=4][color=#0000ff]
STR 用法:STR(X,N);该函数返回一个字符串.此例子表示:范围精度为N的X的字符串[/color][/size][/b][b][size=4][color=#0000ff];}
{’ ’+}
IFS(REF(L4,1)>0 AND REF(L4,1)>REF(L4,2),’该股中长期走势强于大盘,且近期继续走强。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(REF(L4,1)>0 AND REF(L4,1)<=REF(L4,2),’该股中长期走势强于大盘,但近期有所走弱。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(REF(L4,1)<=0 AND REF(L4,1)>REF(L4,2),’该股中长期走势弱于大盘,但近期有所转强。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(REF(L4,1)<=0 AND REF(L4,1)<=REF(L4,2),’该股中长期走势弱于大盘,且近期继续走弱。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF>=0,’MACD指标显示该股处于多头行情中’,’MACD指标显示该股处于空头行情中[/color][/size][/b][b][size=4][color=#0000ff]’)+
IFS(DIFF>=0 AND MACD>=0 AND MACD>REF(MACD,1),’且有加速上涨趋势。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF>=0 AND MACD>=0 AND MACD<=REF(MACD,1),’但上涨趋势有所减缓,短线投资者可逢高卖出,但当回落至均线或其他支撑位时应及时回补。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF>=0 AND MACD<0 AND MACD>=REF(MACD,1),’,目前正处于回落整理阶段,但整理即将结束,可在均线或其他支撑位附近逢低买入,但当整理完成后选择再次向下突破时应注意及时止损。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF>=0 AND MACD<0 AND MACD<REF(MACD,1),’,目前正处于回落整理阶段,且回落有加速趋势。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF<0 AND MACD<=0 AND MACD<REF(MACD,1),’且有加速下跌趋势。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF<0 AND MACD<=0 AND MACD>=REF(MACD,1),’但下跌趋势有所减缓,可在W&R指标大于90时逢低买入,但有可能再次加速下跌,注意及时止损。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF<0 AND MACD>0 AND MACD>REF(MACD,1),’,目前正处于反弹阶段,投资者应保持谨慎。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(DIFF<0 AND MACD>0 AND MACD<REF(MACD,1),’,短线反弹已经结束,应继续坚持谨慎原则。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(CROSS(DIFF,0),’该股今日从空头市场转换为多头行情。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(CROSS(0,DIFF),’该股今日从多头市场转换为空头行情。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(K>80 AND CROSS(D,K)=0,’KD指标提示该股已经处于超买状态,如果KD指标死叉应及时卖出。[/color][/size][/b][b][size=4][color=#0000ff]’,’’)+
IFS(K<20 AND CROSS(K,D)=0,’KD指标提示该股已经处于超卖状态,如果KD指标金叉应及时买入。’,’’)+[/color][/size][/b]
[b][font=Arial][size=4][color=#0000ff][size=12pt]IFS(CROSS(K,D) AND LLV(K,3)<20,’KD[/size][size=12pt]低位金叉,建议买入。[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]’,’’)+
IFS(CROSS(D,K) AND HHV(K,3)>80,’KD[/size][size=12pt]高位死叉,建议卖出。[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]’,’’)
{[/size][size=12pt]每条语句以[/size][size=12pt]“+”[/size][size=12pt]符号结束,指标最后一句没有[/size][size=12pt]“+”[/size][size=12pt]的符号。[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]}
[/size][size=12pt]注意:引用技术指标要准确无误以外,还要注意格式,否则不能通过测试。为了让朋友更明白一些,再举一例:[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]
{KDJ[/size][size=12pt]解盘[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]}
K:="KD.K"(17,4,4);
D:="KD.D"(17,4,4);
’[/size][size=12pt]【理想解盘】[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]’+
IFS(K>80 AND CROSS(D,K)=0,’KD[/size][size=12pt]指标提示该股已经处于超买状态,如果[/size][size=12pt]KD[/size][size=12pt]指标死叉应及时卖出。[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]’,’’)+
IFS(K<20 AND CROSS(K,D)=0,’KD[/size][size=12pt]指标提示该股已经处于超卖状态,如果[/size][size=12pt]KD[/size][size=12pt]指标金叉应及时买入。[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]’,’’)+
IFS(CROSS(K,D) AND LLV(K,3)<20,’KD[/size][size=12pt]低位金叉,建议买入。[/size][/color][/size][/font][/b][b][font=Arial][size=4][color=#0000ff][size=12pt]’,’’)+
IFS(CROSS(D,K) AND HHV(K,3)>80,’KD[/size][size=12pt]高位死叉,建议卖出。[/size][/color][/size][/font][/b][size=12pt][b][font=Arial][size=4][color=#0000ff]’,’’)[/color] [/size][/font][/b][/size]