指标公式编写235例实战大全

来源:百度文库 编辑:神马文学网 时间:2024/04/28 08:51:02
0001--主图显示代码及板块
一、显示板块
例一:
DRAWTEXT(BARPOS=SYSPARAM(2),H,'\N所属板块:'+BLKNAME),ALIGN4,COLORYELLOW;
例二:
DRAWTEXT(SYSPARAM(2)=BARPOS,C,'所属板块:'+BLKNAME),ALIGN4,COLORYELLOW;
例三:
DRAWTEXT(SYSPARAM(2)=BARSCOUNT(C),H,'[所属版块]:'+BLKNAME),ALIGN4,COLORYELLOW;
二、显示代码及板块
S:=STKLABEL;
DRAWTEXT(SYSPARAM(2)=BARPOS,C,S),ALIGN4,COLORYELLOW;
DRAWTEXT(BARPOS=SYSPARAM(2),H,'\N 所属板块:'+BLKNAME),ALIGN4,COLORYELLOW;{N与所属板块之间空六格,以显示代码}
-------------------------------------------------------------------------------
0002--主图显示成交量
前四例可实际使用,后三例的思路不错,但量柱过高,部分遮住K线,有待完善。
例一:
BB:=HHV(VOL,SYSPARAM(3)-SYSPARAM(2));
HH:=SYSPARAM(4);
LL:=SYSPARAM(5);
TT:=IF(HH-LL<=2.5,0.25,IF(HH-LL<=5,0.8,IF(HH-LL<=10,2,IF(HH-LL<=20,3,IF(HH-LL<=31,4,IF(HH-LL<=41,5,IF(HH-LL<=50,6,IF(HH-LL<=60,7,IF(HH-LL<=70,8,IF(HH-LL<=80,9,1))))))))));
MA(V/BB*0.9*TT+LL,5)-0.04;
MA(V/BB*0.9*TT+LL,10)-0.04;
MA(V/BB*0.9*TT+LL,34)-0.04;
STICKLINE(C>=REF(C,1),V/BB*0.9*TT+LL-0.04,LL-0.04,4,1)COLOR9090EE;
STICKLINE(C< REF(C,1 ),V/BB*0.9*TT+LL-0.04,LL-0.04,4,1)COLORBLUE;
STICKLINE(C>=O,C,O,8,0),COLOR0055AA;
STICKLINE(C<=O,C,O,8,0),COLOR006600;
STICKLINE(C>=O,C,O,5,0),COLOR0077CC;
STICKLINE(C>=O,C,O,3,0),COLOR0099DD;
STICKLINE(C>=O,H,L,0,0),COLOR00BBFF;
STICKLINE(C<=O,C,O,5,0),COLOR009900;
STICKLINE(C<=O,C,O,3,0),COLOR00BB00;
STICKLINE(C<=O,H,L,0,0),COLOR00EE00
例二:
BB:=HHV(VOL,SYSPARAM(3)-SYSPARAM(2));
HH:=SYSPARAM(4);
LL:=SYSPARAM(5);
TT:=IF(HH-LL<4,0.5,1);
STICKLINE(C>=REF(C,1),VOL/BB*0.8*TT+LL,LL,4,1)COLOR9090EE;
STICKLINE(C< REF(C,1 ),VOL/BB*0.8*TT+LL,LL,4,1)COLORBLUE;
STICKLINE(C>=O,C,O,8,0),COLOR0055AA;
STICKLINE(C<=O,C,O,8,0),COLOR006600;
STICKLINE(C>=O,C,O,5,0),COLOR0077CC;
STICKLINE(C>=O,C,L,3,0),COLOR0099DD;
STICKLINE(C>=O,H,L,0,0),COLOR00BBFF;
STICKLINE(C<=O,C,O,5,0),COLOR009900;
STICKLINE(C<=O,C,O,3,0),COLOR00BB00;
STICKLINE(C<=O,H,L,0,0),COLOR00EE00
例三:
A1:=VOL;
A2:=VOL/CAPITAL*100/15;
A3:=SYSPARAM(5);
A4:=A3-0.3;
STICKLINE(C>0 AND C>REF(C,1),A4,A4+A2,7,1),COLORRED;
STICKLINE(C>0 AND C<=REF(C,1),A4,A4+A2,7,0),COLORCCFF99;
DRAWNUMBER(SYSPARAM(1)=BARPOS AND C>0,A4,A1,1),COLOR00FFFF;
DRAWTEXT(SYSPARAM(1)=BARPOS,A4,'成交量:'),COLOR00FFFF,ALIGN2;
{A2中的15可调;A4中的0.3可调}
例四:
可以调节量柱的高度,不会覆盖K线。使用时,请打开光标。注意,在“管理→系统选项→图形→主图坐标仅随K线变动”处不要打钩。亦显示换手率的数值。
A1:=VOL/CAPITAL*100/15;
A2:=SYSPARAM(5);
A3:=A2-0.3;
STICKLINE(C>=O,A3,A3+A1,7,1),COLORRED;
STICKLINE(C< O,A3,A3+A1,7,0),COLORCCFF99;
换:VOL/CAPITAL*100,LINETHICK0,COLORRED;
例五:
STICKLINE(C>REF(C,1),VOL*0.00001+SYSPARAM(5),SYSPARAM(5),8,1)COLORRED;
STICKLINE(C< REF(C,1),VOL*0.00001+SYSPARAM(5),SYSPARAM(5),8,0)COLORCYAN;
VMA5:MA(VOL*0.00001+SYSPARAM(5),5);
VMA15:MA(VOL*0.00001+SYSPARAM(5),15);
{可通过修改“V*0.00001”中的“0.00001”进行优化}
例六:
STICKLINE(C>REF(C,1)AND C<10,VOL*0.000001+SYSPARAM(5),SYSPARAM(5),8,1)COLORRED;
STICKLINE(C< REF(C,1)AND C<10,VOL*0.000001+SYSPARAM(5),SYSPARAM(5),8,0)COLORCYAN;
{主图一般用百分比坐标,加限定不是好的解决办法}
例七:
MA5:MA(C,P1); { P1:5 P2:10 P3:20 P4:30 N:0.6 M:1}
MA10:MA(C,P2);
MA20:MA(C,P3);
MA30:MA(C,P4);
现价: DYNAINFO(7),COLORWHITE,LINETHICK1 POINTDOT;
STICKLINE(C>O,O,C,7,0),COLORRED;
STICKLINE(C>O,O,C,2,0),COLORB0B0FF;
STICKLINE(C>O,O,C,1,0),COLORYELLOW;
STICKLINE(C>O,L,H,0.1,0),COLORYELLOW;
STICKLINE(C< O,O,C,7,0),COLORFF2020;
STICKLINE(C< O,O,C,4,0),COLORFF6600;
STICKLINE(C< O,O,C,2,0),COLORCYAN;
STICKLINE(C< O,L,H,0.1,0),COLORCYAN;
STICKLINE(C=O AND C>=REF(C,1),O,C,7,0),COLORRED;
STICKLINE(C=O AND C>=REF(C,1),O,C,4,0),COLORB0B0FF;
STICKLINE(C=O AND C>=REF(C,1),O,C,2,0),COLORYELLOW;
STICKLINE(C=O AND C>=REF(C,1),L,H,0.1,0),COLORYELLOW;
STICKLINE(C=O AND C< REF(C,1),O,C,7,0),COLORFF2020;
STICKLINE(C=O AND C< REF(C,1),O,C,4,0),COLORFF6600;
STICKLINE(C=O AND C< REF(C,1),O,C,2,0),COLORCYAN;
STICKLINE(C=O AND C< REF(C,1),L,H,0.1,0),COLORCYAN;
YYTTGG:=BARSCOUNT(HHV(V,0));
BB:=HHV(VOL,SYSPARAM(3)-SYSPARAM(2));//画面中的最大成交量
LL:=SYSPARAM(5);//主图可见K线最低价
STICKLINE(C>=REF(C,1),VOL/BB+LL*M,LL*M,8,1)COLOR50CCEE;
STICKLINE(C< REF(C,1),VOL/BB+LL*M,LL*M,8,0)COLORBLUE;
-------------------------------------------------------------------------------
0003--预测全天成交量、换手率
例一:
根据分时成交量预测
IF(OPENMINUTES(CURRENTTIME)=1,V,(V/OPENMINUTES(CURRENTTIME))*240);
例二:
预测量:STICKLINE(DYNAINFO(7)=CLOSE AND DYNAINFO(10)=AMOUNT,VOL,MAX(VOL,DYNAINFO(17)*REF(MA(VOL,5),1)),7,1),COLORGREEN;
例三:
STICKLINE(DYNAINFO(7)=C AND DYNAINFO(10)=AMOUNT,DYNAINFO(17)*REF(MA(VOL,5),1),0,4,1);
DRAWTEXT(DYNAINFO(7)=C AND DYNAINFO(10)=AMOUNT,V,'←实际V'),COLORRED;
例四:
预换手%:MAX(VOL,DYNAINFO(17)*REF(MA(VOL,5),1))/CAPITAL*100,COLORFFFF00;
-------------------------------------------------------------------------------
0004--收盘线(主图)
IF(DYNAINFO(7)>0,DYNAINFO(7),MA(C,3));
-------------------------------------------------------------------------------
0005--时间周期线示例(主图叠加)
INPUT:N(5,5,100);//参数定义
ZIG(1,N);//高点
FF:=PEAKBARS(1,N,1);
FF:=IF(FF<6,PEAKBARS(1,N,2),FF);
BARST:=SYSPARAM(1);
VARIABLE:ZQ[序列数据量/2]:=1.236;
ZQ[2]:=1.309;
ZQ[3]:=1382;
ZQ[4]:=1.5;
ZQ[5]:=1.618;
ZQ[6]:=1.746;
ZQ[7]:=2;
ZQ[8]:=2.618;
ZQ[9]:=3;
ZQ[10]:=3.236;
ZQ[11]:=4.236;
ZQ[12]:=5.236;//周期线间隔比例,可另行定义
TJ:=FF[BARST]=BARST-BARPOS;
FOR I=1 TO 12 DO TJ:=TJ OR BARPOS-BARST=ROUND((ZQ-1)*FF[BARST]+0.5);
VERTLINE(TJ),POINTDOT,COLORMAGENTA;
必须打开十字光标才可以正常使用。自动寻找高点,可另加参数,改成高低点两用。
公式含义:当K线与高点的时间间隔为十字光标与高点的时间间隔的等于指定比例时,显示竖线。即所谓的时间预测,如果您有好的测试方法,可以仿此代码编制。
这段代码,进行适当的改造,可以向未来延伸,有兴趣的可以自行研究(提示:使用SHIFT函数)。
-------------------------------------------------------------------------------
0006--BACKSET()函数的高级用法
问题:如何在最后一根K线的前第6天,作上标记?
1、先建立一个名为BACKSET-TEST的公式,代码如下:
ISLASTBAR{该周期是否最后一个周期。最后一个周期返回值为1,其余为0}
观察指标线的图形,正如注释所述,最后一天显示为1,这个1我们可理解为信号(条件)成立。其余时间,指标的数值为0,可理解为信号(条件)不成立。
2、巧用BACKSET()函数:
1BACDSET(X,N)注释:向前赋值,若X非0则把当前周期及前N-1周期的数值设置为1;
2示例:把信号向前移。
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:BACKSET(TJ1,6);
观察TJ2指标线图,发现最后6天的TJ2信号都是1,即一个高度为1的矩形。公式中,还无法判断哪天是倒数第6天。
3、显然倒数第6天,是上面矩形的前沿,如何在公式中,表达这个矩形的前沿?
容易想到的办法:
1倒数第6天的当天,TJ2为1,更早的1天TJ2=0,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:TJ2 AND REF(TJ2,1)=0;
2倒数第6天的当天,TJ2为1,更早的1天TJ2=0,即当天TJ2比早一天的TJ2更大,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:TJ2>REF(TJ2,1);
3倒数第6天的当天,TJ2为1,更早的1天TJ2=0,可以想像为TJ2指标线上穿了一条高度为0.5的水平线,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:CROSS(TJ2,0.5);
4巧用FILTER()过滤函数,FILTER(X,N),若X非0,可以让X保持当天的值不变,且过滤其后N个周期使之数值为0。
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:FILTER(TJ2,5);{第1次的TJ2保持为1不变,其后的5个周期过滤为0}
这样就初步找到了4种方法,可以标记倒数第6天,若想用图标来标记的话,代码例举如下:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:=TJ2>REF(TJ2,1);
DRAWICON(TJ3,L,1);
-------------------------------------------------------------------------------
0007--MACD金死叉间最大、最小值
A1:=CROSS("MACD.MACD",0);
A2:=BARSLAST(A1);
A3:=HHVBARS("MACD.MACD" ,A2+1);
A4:=BACKSET(REF(A3>=1,1) AND "MACD.MACD"<0,A3);
A5:=BACKSET(REF(A4=0,1) AND A4=1,2);
高值:IF(FILTER(A5,2),"MACD.MACD",0);
DRAWICON(高值>0,高值,4);
B1:=CROSS(0,"MACD.MACD");
B2:=BARSLAST(B1);
B3:=LLVBARS("MACD.MACD" ,B2+1);
B4:=BACKSET(REF(B3>=1,1) AND "MACD.MACD">0,B3);
B5:=BACKSET(REF(B4=0,1) AND B4=1,2);
低值:IF(FILTER(B5,2),"MACD.MACD",0);
DRAWICON(低值<0,低值,5);
-------------------------------------------------------------------------------
0008--曲线在N天内的平均变化率
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N);B:=MA(C,M);R:=C/REF(C,1)-1;等等}
FA:=(A/REF(A,N)-1)/N;
FB:=(B/REF(B,N)-1)/N;
FR:=(R/REF(R,N)-1)/N;
-------------------------------------------------------------------------------
0009--变动角
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
FA:=(A/REF(A,N)-1)/N;
FB:=(B/REF(B,N)-1)/N;
FR:=(R/REF(R,N)-1)/N;
∮A:=ATAN(FA);
∮B:=ATAN(FB);
∮R:=ATAN(FR);
-------------------------------------------------------------------------------
0010--曲线上相距N天的两点的连线的斜率
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
KA:=(A-REF(A,N))/N;
KB:=(B-REF(B,N))/N;
KR:=(R-REF(R,N))/N;
-------------------------------------------------------------------------------
0011--倾角
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
KA:=(A-REF(A,N))/N;
KB:=(B-REF(B,N))/N;
KR:=(R-REF(R,N))/N;
∠A:=ATAN(KA);
∠B:=ATAN(KB);
∠R:=ATAN(KR);
-------------------------------------------------------------------------------
0012--交叉点
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
CAB:=CROSS(A,B);{交叉}
JAB:=LONGCROSS(A,B,N);{维持-交叉}
JYA:=BETWEEN(A,N,M);{介于}
FWA:=RANGE(A,N,M);{范围}
-------------------------------------------------------------------------------
0013--下拐点(由下向上转)
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
KA:=(A-REF(A,N))/N;
∠A:=ATAN(KA);
XD1:=LLVBARS(A,N)=M;{以N日最低点}
XD2:=REF(COUNT(A-REF(A,1)<=0,N)=N,M) AND COUNT(A-REF(A,1)>0,M)=M;{以M日变化量的正负}
XD3:=REF(COUNT(∠A-REF(∠A,1)<=0,N)=N,M) AND ∠A>0;{以当日变化角的正负}
-------------------------------------------------------------------------------
0014--上拐点(由上向下转)
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
KA:=(A-REF(A,N))/N;
∠A:=ATAN(KA);
SD1:=HHVBARS(A,N)=M;{以N日最低点}
SD2:=REF(COUNT(A-REF(A,1)>=0,N)=N,M) AND COUNT(A-REF(A,1)<0,M)=M;{以当日变化量的正负}
SD3:=REF(COUNT(∠A-REF(∠A,1)>=0,N)=N,M) AND ∠A<0;{以当日变化角的正负}
-------------------------------------------------------------------------------
0015--位置(求得交叉点/拐点到当前的周期)
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
CAB:=CROSS(A,B);{交叉}
WZ1:=BARSLAST(CAB);{第一(交叉)点的位置}
WZ2:=REF(WZ1,WZ1+1)+WZ1+2;{第二(交叉)点的位置}
WZ3:=REF(WZ1,WZ2+1)+WZ2+2;{第三(交叉)点的位置}
WZ4:=REF(WZ1,WZ3+1)+WZ3+2;{第四(交叉)点的位置}
WZ5:=REF(WZ1,WZ4+1)+WZ4+2;{第五(交叉)点的位置}
{WZN:=REF(WZ1,WZ(N-1)+1)+WZ(N-1)+2;}
-------------------------------------------------------------------------------
0016--曲线A叠加曲线B
{设A,B,R为三条曲线;N,M等为参数。如:A:MA(C,N) ; B:=MA(C,M); R:=C/REF(C,1)-1;等等}
F:=A/REF(A,1)-1;{A的变化率}
JS:=REF(B,BARSCOUNT(C));{叠加位置(初始)}
DJ:(SUM(F,0)+1)*JS;{叠加曲线(初始位置)}
JD:=REF(B,BARSLAST(条件));{叠加位置(定点)}
DJ:=(SUM(F,0)+1)*JD;{叠加曲线(预定位置)}
-------------------------------------------------------------------------------
0017--任意两条指标线在某数以下(或以上)两次金叉的通式
JM:=CROSS("指标名称.指标线1","指标名称.指标线2");
JMCOUNT:=COUNT(JM,BARSLAST("指标名称.指标线1(或指标线2)"大于或小于某数));
JMTJ:40*("指标名称.指标线1(或指标线2)"小于或大于某数));
DRAWTEXT (JMTJ,40,'…………二次金叉');
条件选股:60*(JMTJ AND …………),COLORGREEN;
例一:
MACD在0轴线以下二次金叉
JM:=CROSS("MACD.DIFF","MACD.DEA");
JMCOUNT:=COUNT(JM,BARSLAST("MACD.DEA">=0));
JMTJ:40*("MACD.DEA"<0 AND COUNT(JMCOUNT=2,21)=1);
DRAWTEXT (JMTJ,40,'MACD在0轴线以下二次金叉');
条件选股:60*(JMTJ AND SLOPE(MA(C,5),2)>0),COLORGREEN;
DRAWTEXT (条件选股,50,'5日3%成功率:44.71%');
例二:
KD在60轴线以下二次金叉
JM:=CROSS("KD.K","KD.D");
JMCOUNT:=COUNT(JM,BARSLAST("KD.D">=60));
JMTJ:40*("KD.D"<60 AND COUNT(JMCOUNT=2,21)=1);
DRAWTEXT (JMTJ,"KD.D",'KD在60轴线以下二次金叉');
条件选股:60*(JMTJ AND SLOPE(MA(C,20),3)>0),COLORGREEN;
DRAWTEXT (条件选股,50,'5日3%成功率:50.3%');
例三:
SLOWKD在30轴线以下二次金叉
JM:=CROSS("SLOWKD.K","SLOWKD.D");
JMCOUNT:=COUNT(JM,BARSLAST("SLOWKD.D">=30));
JMTJ:28*("SLOWKD.D"<30 AND COUNT(JMCOUNT=2,21)=1);
DRAWTEXT (JMTJ,28,'SLOWKD在30轴线以下二次金叉');
条件选股:50*(JMTJ AND SLOPE(MA(C,20),2)>0),COLORGREEN;
-------------------------------------------------------------------------------
0018--今收盘对于N日内最低收盘价的涨幅(%)
(C-LLV(C,N))/LLV(C,N)*100;
-------------------------------------------------------------------------------
0019--今收盘对于N日内最高收盘价的跌幅(%)
(HHV(C,N)-C)/HHV(C,N)*100;
-------------------------------------------------------------------------------
0020--股价在过去N日内运行空间的相对位置
(C-LLV(L,N))/(HHV(H,N)-LLV(L,N))*100;
-------------------------------------------------------------------------------
0021--股价上方N1%至N2%处的筹码(%)
AA:=WINNER(C+C*N2/100)*100;
BB:=WINNER(C+C*N1/100)*100;
AA-BB
-------------------------------------------------------------------------------
0022--股价下方N1%至N2%处的筹码(%)
(WINNER(C-C*N1/100)-WINNER(C-C*N2/100))*100;
-------------------------------------------------------------------------------
0023--收盘价N%处的套牢盘
100-(WINNER(C*N/100))*100;
-------------------------------------------------------------------------------
0024--收盘价N%处的获利盘
WINNER(C*N/100)*100;
-------------------------------------------------------------------------------
0025--下影线
(MIN(C,O)-L)/(H-L);
-------------------------------------------------------------------------------
0026--上影线
(H-MAX(C,O))/(H-L)
-------------------------------------------------------------------------------
0027--本周期的涨跌幅
(C-REF(C,1))/REF(C,1)*100;
-------------------------------------------------------------------------------
0028--振幅
(H-L)/L*100;
-------------------------------------------------------------------------------
0029--均线金叉
CROSS(MA(C,N),MA(C,M));{N< M}
-------------------------------------------------------------------------------
0030--均线死叉
CROSS(MA(C,M),MA(C,N));{N< M}
-------------------------------------------------------------------------------
0031--均线多头排列
A1:=MA(C,N1);
A2:=MA(C,N2);
A3:=MA(C,N3);
A4:=MA(C,N4);
COUNT(A1>A2 AND A2>A3 AND A3>A4,3);
-------------------------------------------------------------------------------
0032--均线空头排列
A1:=MA(C,N1);
A2:=MA(C,N2);
A3:=MA(C,N3);
A4:=MA(C,N4);
COUNT(A1< A2 AND A2< A3 AND A3< A4,3);
-------------------------------------------------------------------------------
0033--N日均线向下
AA:=MA(C,N);
BB:=REF(AA,1);
AA< BB
-------------------------------------------------------------------------------
0034--N日均线向上
AA:=MA(C,N);
BB:=REF(AA,1);
AA>BB
-------------------------------------------------------------------------------
0035--N日均线走平
AA:=MA(C,N);
BB:=REF(AA,1);
AA=BB
-------------------------------------------------------------------------------
0036--向前N日至M日出现过均线死叉(P1< P2)
AA:=MA(C,P1);
BB:=MA(C,P2);
CC:=REF(CROSS(BB,AA),N);
COUNT(CC,M);
-------------------------------------------------------------------------------
0037--今日成交量大于N日以来的均量
VOL>MA(VOL,N);
-------------------------------------------------------------------------------
0038--低位密集
A1:=COST(85);
A2:=COST(15);
A3:=A1-A2;
A4:=(A1+A2)/2;
A5:=A3/A4*100<10;
B1:=HHV(H,120);
B2:=LLV(L,120);
B3:=B1-B2;
B4:=(A4-B2)< B3/2;
A5 AND B4;
-------------------------------------------------------------------------------
0039--换手率
VOL/CAPITAL*100;
-------------------------------------------------------------------------------
0040--N日盈亏
V1:=VOL/SUM(VOL,N);
V2:=DMA(CLOSE,V1);
V3:(CLOSE-V2)/V2*100;
-------------------------------------------------------------------------------
0041--曲线叠加
指标线的叠加,是为了方便观看和比较,没什么其他的意义。
一、对指标曲线的变化幅度放大
此法,一线变形,另一线不变,但变形线的走势与原线完全相似。
举例:C叠加V
BC:=HHV(C,N)-LLV(C,N);//N一般取常用主图上的K线数量
BV:=HHV(V,N);
BI:=BC/BV;//叠加比
B:=BI[DATACOUNT];//最后一根K线的叠加比,保证叠加比前后统一
成交量:V,VOLSTICK;
F:=C/REF(C,1);
JC:=REF(C,1)*(1+A*F)*B/A;//A-放大倍数,将C的涨跌幅度F放大
JL:=LLV(JC,N);//平移量。请去掉JC句的=看JL的作用
收盘价:C,LINETHICK0,COLORYELLOW;//只显示数值,不画线
PARTLINE(C>0,JC-JL[DATACOUNT]),COLORYELLOW;//收盘价趋势线,只画线,不显示数值
通式:
曲线X叠加曲线Y
BX:=HHV(X,N)-LLV(X,N);
BY:=HHV(Y,N)-LLV(Y,N);
BI:=BX/BY;
B:=BI[DATACOUNT];
FX:=X/REF(X,1);
JX:=REF(X,1)*(1+A*FX)*B/A;
XL:=LLV(JX,N);
曲线Y:Y;
曲线X:X,LINETHICK0;//曲线X的值
PARTLINE(C,JX-XL[DATACOUNT]);//曲线X的线
二、百分比叠加
把两曲线的波动幅度划成百分比进行叠加
此法,两线都变形,但走势都与原线完全相似。
举例:C叠加V
HV:=HHV(V,N);
DV:=HV[DATACOUNT];
BV:=100/DV;
V*BV,VOLSTICK;
HC:=HHV(C,N);
LC:=LLV(C,N);
BC:=100/(HC[DATACOUNT]-LC[DATACOUNT]);
(C-LC[DATACOUNT])*BC;
通式一:
曲线X,曲线Y
XH:=HHV(X,N);
XL:=LLV(X,N);
XDH:=XH[DATACOUNT];
XDL:=XL[DATACOUNT];
BX:=100/(XDH-XDL);
曲线X:(X-XDL)*BX;
YH:=HHV(Y,N);
YL:=LLV(Y,N);
YDH:=YH[DATACOUNT];
YDL:=YL[DATACOUNT];
BY:=100/(YDH-YDL);
曲线Y:(Y-YDL)*BY;
通式二:
X曲线+Y曲线
N:=SYSPARAM(3)-SYSPARAM(2);
X:=.........; {.........为X曲线定义}
XH:=HHV(X,N);
XL:=LLV(X,N);
XDH:=XH[SYSPARAM(3)];
XDL:=XL[SYSPARAM(3)];
BX:=100/(XDH-XDL);
曲线X:(X-XDL)*BX;
Y:=.........;{.........为Y曲线定义}
YH:=HHV(Y,N);
YL:=LLV(Y,N);
YDH:=YH[SYSPARAM(3)];
YDL:=YL[SYSPARAM(3)];
BY:=100/(YDH-YDL);
曲线Y:(Y-YDL)*BY;
三、固定位置叠加
此法应用不多,仅举例。
例一:
主图成交量(V叠加C)
{M:960,1,2000}
R0:=M/1000;R:=(L-R0*SYSPARAM(5))/V;
R1:=LLV(R,SYSPARAM(3)-SYSPARAM(2));R2:=R1[SYSPARAM(3)];
R3:=LLV(L-R2*V,SYSPARAM(3)-SYSPARAM(2));
R4:=R3[SYSPARAM(3)];R5:=(R2*V+R4)*0.995;
STICKLINE(C>=REF(C,1),R5,R0*SYSPARAM(5),6,1)COLORRED;
STICKLINE(C< REF(C,1),R5,R0*SYSPARAM(5),6,0)COLORCYAN;
PARTLINE(V>=0,R0*SYSPARAM(5)) COLORWHITE;
PARTLINE(R5>0,MA(R5,5));
PARTLINE(R5>0,MA(R5,10));
PARTLINE(R5>0,MA(R5,20));
例二:
INPUT:N(10,2,999);
M:=SYSPARAM(3)-SYSPARAM(2);
X:=C;
Y:=SUM(IF(CLOSE>REF(CLOSE,1),VOL/CAPITAL,IF(CLOSE< REF(CLOSE,1),-VOL/CAPITAL,0)),0);
XH:=HHV(X,M); XL:=LLV(X,M); XDH:=XH[SYSPARAM(3)]; XDL:=XL[SYSPARAM(3)];
BX:=100/(XDH-XDL);
收盘:C,LINETHICK0,;
收盘↑:PARTLINE(X>REF(X,1),(X-XDL)*BX),COLORRED;
收盘↓:PARTLINE(X< REF(X,1),(X-XDL)*BX),COLORCYAN;
YH:=HHV(Y,M); YL:=LLV(Y,M); YDH:=YH[SYSPARAM(3)]; YDL:=YL[SYSPARAM(3)];
BY:=100/(YDH-YDL);
TY:=(Y-YDL)*BY;
OBV值:Y*1000,LINETHICK0,COLOR007BFF;
OBV线↑:PARTLINE(Y>REF(Y,1),(Y-YDL)*BY),COLORYELLOW;
OBV线↓:PARTLINE(Y< REF(Y,1),(Y-YDL)*BY),COLOR009F00;
A1:=REF(TY,N)=HHV(TY,2*N+1); B1:=FILTER(A1,N); C1:=BACKSET(B1,N+1); HD:=FILTER(C1,N);
A2:=REF(TY,N)=LLV(TY,2*N+1); B2:=FILTER(A2,N); C2:=BACKSET(B2,N+1); LD:=FILTER(C2,N);
AA:=REF(TY,BARSLAST(HD)); BB:=REF(TY,BARSLAST(LD));A1:=REF(Y,BARSLAST(HD))*1000; B1:=REF(Y,BARSLAST(LD))*1000;
T1:=BARSLAST(HD)< BARSLAST(LD) AND NOT(HD) ;
T2:=BARSLAST(HD)>BARSLAST(LD) AND NOT(LD);
PARTLINE(T1,AA),COLORMAGENTA,LINETHICK2;
PARTLINE(T2,BB),COLORGREEN,LINETHICK2;
DRAWNUMBER(T1=0 AND REF(T1,1)>0,REF(AA,1)+0.1,A1,2);
DRAWNUMBER(T2=0 AND REF(T2,1)>0,REF(BB,1)+0.1,B1,2);
DRAWNUMBER(ISLASTBAR AND T1>0,REF(AA,1)+0.1,A1,2),COLORYELLOW;
DRAWNUMBER(ISLASTBAR AND T2>0,REF(BB,1)+0.1,B1,2),COLORMAGENTA;
-------------------------------------------------------------------------------
0042--均线变色
MA05:MA(CLOSE,5);
MA30:MA(CLOSE,30);
IF(MA05< MA30,MA05,MA30),COLORGREEN;
IF(MA05< MA30,MA30,MA05),COLORRED;
IF(MA05>MA30,MA30,MA30),COLORBLUE;
DRAWICON(CROSS(MA05,MA30),L*0.98,4);
DRAWICON(CROSS(MA30,MA05),H*1.02,5);
-------------------------------------------------------------------------------
0043--基本配色:白红峰
白红峰 ((16色)白色-红色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLORFFFFFF;{白色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOREEEEFF;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLORDDDDFF;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLORCCCCFF;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLORBBBBFF;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLORAAAAFF;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR9999FF;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR8888FF;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR7777FF;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR6666FF;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR5555FF;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR4444FF;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR3333FF;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR2222FF;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR1111FF;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR0000FF;{红色}
-------------------------------------------------------------------------------
0044--基本配色:白晶峰
白晶峰 ((16色)白色-晶红色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLORFFFFFF;{白色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLORFFEEFF;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLORFFDDFF;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLORFFCCFF;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLORFFBBFF;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLORFFAAFF;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLORFF99FF;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLORFF88FF;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLORFF77FF;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLORFF66FF;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLORFF55FF;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLORFF44FF;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLORFF33FF;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLORFF22FF;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLORFF11FF;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLORFF00FF;{晶红色}
-------------------------------------------------------------------------------
0045--基本配色:白蓝峰
白蓝峰 ((16色)白色-蓝色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLORFFFFFF;{白色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLORFFEEEE;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLORFFDDDD;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLORFFCCCC;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLORFFBBBB;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLORFFAAAA;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLORFF9999;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLORFF8888;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLORFF7777;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLORFF6666;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLORFF5555;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLORFF4444;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLORFF3333;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLORFF2222;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLORFF1111;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLORFF0000;{蓝色}
-------------------------------------------------------------------------------
0046--基本配色:白绿峰
白绿峰 ((16色)白色-绿色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLORFFFFFF;{白色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOREEFFEE;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLORDDFFDD;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLORCCFFCC;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLORBBFFBB;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLORAAFFAA;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR99FF99;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR88FF88;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR77FF77;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR66FF66;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR55FF55;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR44FF44;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR33FF33;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR22FF22;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR11FF11;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR00FF00;{绿色}
-------------------------------------------------------------------------------
0047--基本配色:淡紫峰
淡紫峰 ((16色)淡蓝色-紫色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLORFFFFCC;{淡蓝色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLORFFEECC;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLORFFDDCC;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLORFFCCCC;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLORFFBBCC;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLORFFAACC;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLORFF99CC;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLORFF88CC;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLORFF77CC;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLORFF66CC;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLORFF55CC;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLORFF44CC;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLORFF33CC;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLORFF22CC;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLORFF11CC;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLORFF00CC;{紫色}
-------------------------------------------------------------------------------
0048--基本配色:黄褐峰
黄褐峰 ((16色)黄色-绿色-褐色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLOR00FFFF;{黄色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOR00FFEE;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLOR00FFDD;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLOR00FFCC;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLOR00FFBB;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLOR00FFAA;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR00FF99;{绿色}
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR00EE99;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR00DD99;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR00CC99;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR00BB99;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR00AA99;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR009999;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR008899;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR007799;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR006699;{褐色}
-------------------------------------------------------------------------------
0049--基本配色:黄红峰
黄红峰 ((16色)黄色-红色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLOR00FFFF;{黄色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOR00EEFF;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLOR00DDFF;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLOR00CCFF;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLOR00BBFF;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLOR00AAFF;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR0099FF;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR0088FF;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR0077FF;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR0066FF;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR0055FF;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR0044FF;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR0033FF;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR0022FF;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR0011FF;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR0000FF;{红色}
-------------------------------------------------------------------------------
0050--基本配色:黄绿峰
黄绿峰 ((16色)黄色-绿色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLOR00FFFF;{黄色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOR00FFEE;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLOR00FFDD;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLOR00FFCC;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLOR00FFBB;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLOR00FFAA;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR00FF99;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR00FF88;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR00FF77;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR00FF66;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR00FF55;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR00FF44;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR00FF33;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR00FF22;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR00FF11;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR00FF00;{绿色}
-------------------------------------------------------------------------------
0051--基本配色:灰色峰
灰色峰 ((16色)白色-黑色)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLORFFFFFF;{白色}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOREEEEEE;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLORDDDDDD;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLORCCCCCC;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLORBBBBBB;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLORAAAAAA;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR999999;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR888888;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR777777;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR666666;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR555555;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR444444;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR333333;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR222222;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR111111;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR000000;{黑色}
-------------------------------------------------------------------------------
0052--基本配色:绿蓝峰
绿蓝峰 ((16色)翠绿-深蓝)
VarA:=EMA(REF(CLOSE,1),4);
色彩峰:=(SMA(MAX(CLOSE-VarA,0),6,1)/SMA(ABS(CLOSE-VarA),6,1)*100);
STICKLINE(色彩峰>0,0,色彩峰,5,0),COLOR66FF00;{翠绿}
STICKLINE(色彩峰>0,0,色彩峰*0.9,5,0),COLOR66EE00;
STICKLINE(色彩峰>0,0,色彩峰*0.85,5,0),COLOR66DD00;
STICKLINE(色彩峰>0,0,色彩峰*0.8,5,0),COLOR66CC00;
STICKLINE(色彩峰>0,0,色彩峰*0.75,5,0),COLOR66BB00;
STICKLINE(色彩峰>0,0,色彩峰*0.7,5,0),COLOR66AA00;
STICKLINE(色彩峰>0,0,色彩峰*0.65,5,0),COLOR669900;
STICKLINE(色彩峰>0,0,色彩峰*0.6,5,0),COLOR668800;
STICKLINE(色彩峰>0,0,色彩峰*0.55,5,0),COLOR667700;
STICKLINE(色彩峰>0,0,色彩峰*0.5,5,0),COLOR666600;
STICKLINE(色彩峰>0,0,色彩峰*0.45,5,0),COLOR665500;
STICKLINE(色彩峰>0,0,色彩峰*0.4,5,0),COLOR664400;
STICKLINE(色彩峰>0,0,色彩峰*0.35,5,0),COLOR663300;
STICKLINE(色彩峰>0,0,色彩峰*0.3,5,0),COLOR662200;
STICKLINE(色彩峰>0,0,色彩峰*0.25,5,0),COLOR661100;
STICKLINE(色彩峰>0,0,色彩峰*0.2,5,0),COLOR660000;{深蓝}
-------------------------------------------------------------------------------
0053--随机K线最高、最低价向右平行线
DRAWSL(SYSPARAM(1)=BARPOS,REF(L,SYSPARAM(1)=SUM(1,0)-1),0,0,1),COLORGREEN;
DRAWSL(SYSPARAM(1)=BARPOS,REF(H,SYSPARAM(1)=SUM(1,0)-1),0,0,1),COLORRED;
-------------------------------------------------------------------------------
0054--显示无数条线
例一:
{先显示200条黄色的}
A1:POLYLINE(C>0,C+0.01),COLORYELLOW;
A2:=POLYLINE(C>0,C+0.02);
A3:=POLYLINE(C>0,C+0.03);
……
A199:=POLYLINE(C>0,C+1.99):
A200:POLYLINE(C>0,C+2) COLORYELLOW;
{再显示200条绿色的}
B1:POLYLINE(C>0,C+2.01) COLORGREEN;
B2:=POLYLINE(C>0,C+2.02) ;
B3:=POLYLINE(C>0,C+2.03) ;
……
B199:=POLYLINE(C>0,C+3.99):
B200:POLYLINE(C>0,C+4) COLORGREEN;
{想显示别的颜色继续……}
例二:
{先显示200条黄色的}
A1:=POLYLINE(C>0,C+0.01);
A2:=POLYLINE(C>0,C+0.02);
A3:=POLYLINE(C>0,C+0.03);
……
A199:=POLYLINE(C>0,C+1.99);
A200:=POLYLINE(C>0,C+2);
A1 OR A2 OR A3 OR……OR A199 OR A200,COLORYELLOW;
{再显示200条绿色的}
B1:=POLYLINE(C>0,C+2.01);
B2:=POLYLINE(C>0,C+2.02) ;
B3:=POLYLINE(C>0,C+2.03) ;
……
B199:=POLYLINE(C>0,C+3.99):
B200:=POLYLINE(C>0,C+4) ;
B1 OR B2 OR B3 OR……OR B199 OR B200,COLORGREEN;
{想显示别的颜色继续……}
-------------------------------------------------------------------------------
0055--底背离
LLV(L,60)=L) AND NOT(LLV(DEA,60)=DEA);
-------------------------------------------------------------------------------
0056--顶背离
HHV(H,60)=H) AND NOT(HHV(DEA,60)=DEA);
-------------------------------------------------------------------------------
0057--N次金叉、死叉
0轴上二次金叉
COUNT(CROSS(DIF,DEA) AND DEA>0,20)=2 AND CROSS(DIF,DEA) AND
DEA>0;
0轴上三次金叉
COUNT(CROSS(DIF,DEA) AND DEA>0,20)=3 AND CROSS(DIF,DEA) AND
DEA>0;
0轴上四次金叉
COUNT(CROSS(DIF,DEA) AND DEA>0,20)=4 AND CROSS(DIF,DEA) AND DEA>0;
二次金叉
EXPLAIN(COUNT(CROSS(DIF,DEA),20)=2 AND CROSS(DIF,DEA);
二次死叉
COUNT(CROSS(DEA,DIF),20)=2 AND CROSS(DEA,DIF);
-------------------------------------------------------------------------------
0058--5分钟副图显示15分钟K线
建公式:0015
C15:CLOSE;
O15:OPEN;
H15:HIGH;
L15:LOW;
建公式:十五K线
C15:="0015.C15#MIN15";
O15:="0015.O15#MIN15";
H15:="0015.H15#MIN15";
L15:="0015.L15#MIN15";
TI:=OPENMINUTES(TIME)=10 OR OPENMINUTES(TIME)=25 OR OPENMINUTES(TIME)=40 OR OPENMINUTES(TIME)=55 OR OPENMINUTES(TIME)=70 OR OPENMINUTES(TIME)=85 OR OPENMINUTES(TIME)=100 OR OPENMINUTES(TIME)=115 OR OPENMINUTES(TIME)=130 OR OPENMINUTES(TIME)=145 OR OPENMINUTES(TIME)=160 OR OPENMINUTES(TIME)=175 OR OPENMINUTES(TIME)=190 OR OPENMINUTES(TIME)=205 OR OPENMINUTES(TIME)=220 OR OPENMINUTES(TIME)=235;
HH15:=IF(TI,H15,C15);
LL15:=IF(TI,L15,C15);
STICKLINE(C15>O15,C15,O15,10,0),COLORRED;
STICKLINE(C15>O15 AND H15>C15,HH15,C15,0.1,0),COLORRED;
STICKLINE(C15>O15 AND O15>L15,O15,LL15,0.1,0),COLORRED;
STICKLINE(C15<=O15,C15,O15,10,0),COLORGREEN;
STICKLINE(C15<=O15 AND C15>L15,C15,LL15,0.1,0),COLORGREEN;
STICKLINE(C15<=O15 AND H15>O15,HH15,O15,0.1,0),COLORGREEN;
注:以大陆股市为例,四小时,其他市场如超过四小时,可在中间语句“TI:=”中以15为系数顺序加足,如:OR 250 OR 265……等等。
-------------------------------------------------------------------------------
0059--移动成本
不知道函数算法,计算误差在所难免。调整参数“%”可看到不同的移动成本。
///筹码%
INPUT:%(90,1,100);
A:=AMOUNT/V/100;
成本:FLOOR(COST(50-%/2)*100)/100,COLORYELLOW,LINETHICK0;
~:CEILING(COST(50+%/2)*100)/100,COLORYELLOW,LINETHICK0;
集中度:INTPART((~-成本)/(~+成本)*1000)/10,COLORGREEN;
平均成本:ROUND(COST(50)*100)/100,LINETHICK0;
穿透力:(WINNER(C)-REF(WINNER(C),1))/V*CAPITAL,LINETHICK0;//计算误差大
//穿透力2:(WINNER(C)-WINNER(O))/V*CAPITAL,LINETHICK0;//这一写法还是误差大
获利比例:ROUND(WINNER(C)*1000)/10,LINETHICK0;
-------------------------------------------------------------------------------
0060--妙用SUMBARS()函数
SUMBARS(X,N)
函数的用法如下:
向前累加到指定值到现在的周期数。
用法:
SUMBARS(X,A)
将X向前累加直到大于等于A,返回这个区间的周期数
例如:
SUMBARS(VOL,CAPITAL)
1、设计一个指标,计算当日成交量是几天内的最高成交量?
2、设计一个指标,计算当日最高价是几天内的最高价?
提示:直接用HHV()函数无法得到正确结果。
例一:
B:=HHV(H,0);
A:=IF(BARPOS=1,B[DATACOUNT]*1.2,H);
价:SUMBARS(REF(A,1)-A,0);
U:=HHV(V,0);
S:=IF(BARPOS=1,U[DATACOUNT]*1.2,V);
量:SUMBARS(REF(S,1)-S,0);
或:
VH:=HHV(VOL,0);
FV:=IF(BARPOS=1,VH[DATACOUNT]*1.2,VOL); //VH[DATACOUNT]是历史最高成交量
量创新高周期数:SUMBARS(REF(FV,1)-FV,0);
{这里的关键是 REF(FV,1)-FV ,想想看写成 FV-REF(FV,1) 行不行?}
另一种写法:
VH:=HHV(VOL,0);
FV:=VOL;
FV[1]:=VH[DATACOUNT]*1.2; //VH[DATACOUNT]是历史最高成交量
量创新高周期数:SUMBARS(REF(FV,1)-FV,0);
{这里的关键是 REF(FV,1)-FV ,想想看写成 FV-REF(FV,1) 行不行?}
代码已经成功了,原理是什么呢?
假设某日成交量是3日内的最大成交量,则必有:
REF(VOL,3)-VOL>=0
等价于:
(REF(VOL,3)-REF(VOL,2))+(REF(VOL,2)-REF(VOL,1))+(REF(VOL,1)-VOL) >=0
意思就是说,“昨成交量与今成交量之差”逐日累加,直到某日累加和大于等于0,则这之间的天数,就是所要求的日数。
我们再来看看SUMBARS()函数的含义:
SUMBARS(X,A):将X向前累加直到大于等于A,返回这个区间的周期数。
显然上面的式子:
(REF(VOL,3)-REF(VOL,2))+(REF(VOL,2)-REF(VOL,1))+(REF(VOL,1)-VOL)>=0
可以写成:
SUMBARS(REF(VOL,1)-VOL, 0);
为何第1周期的成交量要替换成比所有成交量都大的数值?最后,再来思考一个问题,把题目中的求“最大”,改成求“最小”,即多少天内是最小的?
例二:
B:=HHV(H,0);
A:=IF(BARPOS=1,9999,H);
Z:SUMBARS(REF(A,1)-A,0);
DRAWNUMBER(BARPOS=SYSPARAM(1),1,Z,0)ALIGN4,COLORWHITE;
U:=HHV(V,0);
S:=IF(BARPOS=1,999999999999,V)
Y:SUMBARS(REF(S,1)-S,0);
DRAWNUMBER(BARPOS=SYSPARAM(1),1,Y,0)ALIGN3,COLORYELLOW;
例三:
HH:=IF(BARSCOUNT(C)=1,9999,H);
ZH:SUMBARS(REF(HH,1)-HH,0);//价创了N周期新高
VH:=IF(BARSCOUNT(C)=1,99999999,V);
HV:SUMBARS(REF(VH,1)-VH,0);//量创了N周期新高
LL:=IF(BARSCOUNT(C)=1,0,L);
ZL:SUMBARS(LL-REF(LL,1),0);//价创了N周期新低
VL:=IF(BARSCOUNT(C)=1,0,V);
LV:SUMBARS(VL-REF(VL,1),0);//量创了N周期新低
附注:
用99999999等具体数值,最好是尽可能大的数值(比如单精数的上限),否则仍有可能无法全部完成计算,比如上证指数的年线,成交量最大时,仍然超过了99999999。
倒数第6天的最高价格怎么表示?
FH:=HIGH;
FH[DATACOUNT-5]; //倒数第6天的最高价格。
[DATACOUNT]
返回K线的数量,即总共有多少根K线。
-------------------------------------------------------------------------------
0061--取得K线的序号
取得K线的序号,正序有下面几种方法:(从1数起)
BARPOS;
SX:BARSCOUNT(CLOSE);
SY:SUM(1,0);
DATACOUNT;{不随光标变动,只显示最后K线序号}
逆序可用下列方法取得:(从1数起)
(DATACOUNT-BARPOS)+1;
(DATACOUNT-BARSCOUNT(CLOSE))+1;
(DATACOUNT-SUM(1,0))+1;
-------------------------------------------------------------------------------
0062--变量宣告
指定叙述:经过指定宣告后,飞狐才认识AA、BB、CC,否则会出现"未定义的标示符号"。所谓"定义",程序语言的用语,就叫做"变量宣告"。
AA:OPEN;{宣告OPEN,指定给AA→输出的表达式}
BB:HIGH,LINETHICK0;{宣告HIGH,指定给BB→输出的表达式→秀数值但不秀线图}
CC:=CLOSE;{宣告CLOSE,指定给CC→不输出的表达式→不秀数值也不秀线图}
DD:(AA+BB+CC)/3;{;分号,告诉程序要换行执行了}
EE:=(AA+CC)/2;
PARTLINE(CLOSE>0,EE);{秀线图但不秀数值}
注:{ }大括号内或在//后面,可用来输入公式批注。
-------------------------------------------------------------------------------
0063--跨周期引用数据
(一)指针线公式的运算,大部份都是代入开、高、低、收、量等数据去运算的。
(二)开、高、低、收、量又分成下面四种型式出现:
开、高、低、收、量(基本的日K线数据)
开、高、低、收、量(周K线数据)
开、高、低、收、量(月K线数据)
开、高、低、收、量(年K线数据)
(三)所以当指针线公式运算,要代入下面数据时:
开、高、低、收、量(周K线数据)
开、高、低、收、量(月K线数据)
#WEEK 和 #MONTH 就会派上用场。
(四)举例:
公式A.建立一个专门被用来引用(QUOTE)的公式区。
公式名称:QU
A1:(OPEN+HIGH+LOW+CLOSE)/4;
说明:上面公式的运算,是代入开、高、低、收(当前周期K线数据)运算的。
公式B.
公式名称:AA
AA:"QU.A1#WEEK";
说明:将下面公式的运算,代入开、高、低、收(周K线数据)运算。
(OPEN+HIGH+LOW+CLOSE) / 4
公式C.
公式名称:BB
BB:"QU.A1#MONTH";
说明:将下面公式的运算,代入开、高、低、收(月K线数据)运算。
(OPEN+HIGH+LOW+CLOSE)/4
附注:
可供引用的周期类型有:
MIN1,MIN5,MIN15,MIN30,MIN60,DAY,WEEK,MONTH
分别表示将1,5,15,30,60分钟K线数据,以及日,周,月K线数据,代入被引用的公式,进行运算。
意义:
可将大周期内跑的数据,引用到小周期内来跑。将小周期内跑的数据,引用到大周期内来跑,就会有问题,因为时间横坐标不一样了。
公式(1):先建立即将被引用的表达式
将公式建立在:技术指针 ( ●主图叠加 ○主图 )
公式名称:NH
AA:=HIGH< REF(HIGH,1);{不输出的表达式,如果被引用还是会变成不输出的表达式}
BB:=BARSLAST(AA=1);
CC:REF(HIGH,BB); {输出的表达式,如果被引用还是会变成输出的表达式}
说明:
上面公式的运算,是以当周期时间数列数据运算的。
公式(2):
将公式建立在:技术指针 ( ●主图叠加 ○主图 )
公式名称:NHH
AA:"NH.AA#WEEK";{不输出的表达式}
BB:"NH.BB#WEEK";
CC:"NH.CC#WEEK";{输出的表达式}
DRAWNUMBER(ISLASTBAR,CC,CC,2);
说明:
上面公式的运算,是以周周期时间数列数据运算的。
-------------------------------------------------------------------------------
0064--未来数据、未知数据
写公式,首先要对已知数据(过去式)、未知数据(未完成式、现在进行式)有通盘的认知。
可将"未来"分为两种情况:
1、实时行情中:在一根K线。
以实时行情中的当前日K线为例。除了O之外,其它H、L、C全有未来之嫌。因为在收盘之前,拉高、打压是司空见惯的事,谁也不能保证H、L不会创出当天的新高和新低,更不用说C了。又如日线周期公式"C>REF(C,1);",前一分钟信号成立,后一分钟可能信号就不成立了。另外,如引用了周K和月K数据,因为当前周K和月K还在变动之中,所以也是未来资料。
2、盘后中:在多根K线。
因为在盘后,日K中的四大要素O、H、L、C就没有未来之可能了。在盘后,除了周五之外,引用的周K指针也是未来数据。除了在月末,引用的月K指针也是未来数据。
总而言之,指针公式就分这两种:
线图信号的确定→全都用已知数据(过去式)来决定。
线图信号的确定→有用到未知数据(未完成式、现在进行式)来决定。
ZIG函数
ZX:ZIG(CLOSE,8);
最近这次峰点、谷点的确定,也常处在未完成式的状态中。
打个比喻,线图信号的确定→有用到未知数据(未完成式、现在进行式),例如,在实时盘中一根日K线的收盘价变来变去,指针线图当然随之而起舞。
ZIG函数只是把格局放大,N的日K组合而成的一根多日K线,这一根多日K线的收盘价变来变去,指针线图当然随之而起舞。
-------------------------------------------------------------------------------
0065--主图KD
在主图上,坐标是以K线的价格为主。如何将在0与100中游走的KD指针附加上去,这是写作指针的基本逻辑观念的运用。
PARAM#1( N,9,2,100 )
PARAM#2( M1,3,1,40 )
PARAM#3( M2,3,1,40 )
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100 LINETHICK0;{:=运算过程不显示值与图}
K:SMA(RSV,3,1),LINETHICK0,COLORWHITE;{LINETHICK0只显值不显图}
D:SMA(K,3,1),LINETHICK0,COLORYELLOW;
HH:=SYSPARAM(4);{主图可见K线最高价}
LL:=SYSPARAM(5);{主图可见K线最低价}
KK:=K/100*(HH-LL)+LL;
DD:=D/100*(HH-LL)+LL;
PARTLINE(1=1,KK),COLORWHITE; {条件成立时,则显示图线形}
PARTLINE(C>0,DD),COLORYELLOW;
C;{显示收盘价的值与图线形}
PARTLINE(C>=REF(C,1),C),COLORRED;{显示收盘价的图改成涨红跌绿联机图}
PARTLINE(C< REF(C,1),C),COLORGREEN;
-------------------------------------------------------------------------------
0066--描绘K线
例一:普通
将下列公式建立在:技术指针 ( ○主图叠加 ●主图 )
公式名称:KL
STICKLINE( ISUP , HIGH , LOW , 0.1 , 0 ) , COLORRED ;
STICKLINE( ISUP , CLOSE , OPEN , 8 , 1 ) , COLORRED ;
STICKLINE( ISDOWN , HIGH , LOW , 0.1 , 0 ) , COLORCYAN ;
STICKLINE( ISDOWN , CLOSE , OPEN , 8 , 0 ) , COLORCYAN ;
STICKLINE( ISEQUAL AND C>REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ) , COLORRED ;
STICKLINE( ISEQUAL AND C>REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ) , COLORRED ;
STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ) , COLORCYAN ;
STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ) , COLORCYAN ;
X:=BARSCOUNT( CLOSE ) ;
{以下是描绘第一个交易日的K线,以补前面含盖的不足}
STICKLINE( ISEQUAL AND X = 1 , HIGH, LOW, 0.1, 0 ) , COLORRED ;
STICKLINE( ISEQUAL AND X = 1 , CLOSE , OPEN , 8 , 0 ) , COLORRED ;
说明:
ISUP函数:相当于 IF( CLOSE>OPEN , 1 , 0 )。
ISEQUAL函数:相当于 IF( CLOSE=OPEN , 1 , 0 )。
ISDOWN函数:相当于 IF( CLOSE < OPEN , 1 , 0 )。
STICKLINE函数,画出来的对象有重叠覆盖性:→后画的对象可覆盖先画的对象。
例二:配色
STICKLINE( ISUP , HIGH , LOW , 0.1 , 0 ),COLOR04FEFC ;
STICKLINE( ISUP , CLOSE , OPEN , 8 , 0 ),COLOR0466FC ;
STICKLINE( ISUP , CLOSE , OPEN , 3 , 0 ),COLOR04FEFC ;
STICKLINE( ISDOWN , HIGH , LOW , 0.1 , 0 ),COLORFCFE04 ;
STICKLINE( ISDOWN , CLOSE , OPEN , 8 , 0 ),COLORFC6604 ;
STICKLINE( ISDOWN , CLOSE , OPEN , 3 , 0 ),COLORFCFE04 ;
STICKLINE( ISEQUAL AND C>REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ),COLOR04FEFC ;
STICKLINE( ISEQUAL AND C>REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ),COLOR0466FC ;
STICKLINE( ISEQUAL AND C>REF( C , 1 ) , CLOSE , OPEN , 3 , 0 ),COLOR04FEFC ;
STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ),COLORFCFE04 ;
STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ),COLORFC6604 ;
STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , CLOSE , OPEN , 3 , 0 ),COLORFCFE04 ;
X:=BARSCOUNT( CLOSE ) ;
{以下是描绘第一个交易日的K线,以补前面含盖的不足}
STICKLINE( ISEQUAL AND X = 1 , HIGH, LOW, 0.1, 0 ),COLOR04FEFC ;
STICKLINE( ISEQUAL AND X = 1 , CLOSE , OPEN , 8 , 1 ),COLOR0466FC ;
STICKLINE( ISEQUAL AND X = 1 , CLOSE , OPEN , 3 , 1 ),COLOR04FEFC ;
-------------------------------------------------------------------------------
0067--分时K线当天K线序号
范例:开盘第一根分时K线,指定一个值=1给它,其它为0。
XA:REF(DATE,1)<>DATE, STICK;
范例:每天的分时K线,指定它的当天K线序号给它
XA:=REF(DATE,1)<>DATE, STICK;
XB:BARSLAST(XA=1) + 1 ,STICK;
应用:每天在分时K线,累计成交张数
XA:=REF(DATE,1)<>DATE , STICK;
XB:=BARSLAST(XA=1) + 1 ,STICK;
SV:SUM( VOL , XB ) ;
范例:标记今天分时K线的今天K线序号。过了午夜12点,就又要等早盘开盘后序号数字才会出现
XA:=CURRENTDATE=DATE ;
XB:=REF(XA , 1)<>XA ;
XC:HHVBARS(XB , 0) + XA ;
应用:13均线今天当下最后数值向后延申,画平台线。
XA:=CURRENTDATE=DATE ;
XB:=REF(XA , 1)<>XA ;
XC:=HHVBARS(XB , 0) + XA ;
XD:=MA(C,13);
XE:=REFX(XD , 300);
XF:IF(XC>=0 , XE , 0) ,LINETHICK0,COLOR99FFFF;
PARTLINE(XC>=1 , XF) ,COLOR99FFFF;
-------------------------------------------------------------------------------
0068--系统参数函数
这组函数,应用在取得当前可视主图区内的一些数字信息,如下所示:
1.当前十字光标所在位置,那根K线的序号;
2.当前可视主图区,最初那根K线的序号;
3.当前可视主图区,最后那根K线的序号;
4.当前可视主图区,最高价;
5.当前可视主图区,最低价。
注:但须调出十字光标后,这组函数才能发生作用。否则回传的值是不确定的。
SYSPARAM(1)
SYSPARAM(2)
SYSPARAM(3)
SYSPARAM(4)
SYSPARAM(5)
函数:SYSPARAM(1)
说明: 回传当前 十字光标所在位置那根K线的序号
函数:SYSPARAM(2)
说明: 回传当前可视主图区 最初那根K线的序号
函数:SYSPARAM(3)
说明: 回传当前可视主图区 最后那根K线的序号
函数:SYSPARAM(4)
说明: 回传当前可视主图区 最高价
函数:SYSPARAM(5)
说明: 回传当前可视主图区 最低价
范例:
将公式建立在:技术指针 ( ●主图叠加 ○主图 )
SS:=SYSPARAM( 1 ) ;
DD:=SUM( 1 , 0 ) ;
CC:CLOSE * 1.07 , LINETHICK0 , COLORYELLOW ;
PARTLINE( SS>=DD , CC ) , COLORYELLOW ;
注:
DD:SUM( 1 , 0 ) ;
SS:SYSPARAM( 1 ) ;
上面两者,显然有明显的不同之处。
1.DD是一组变量型时间数列,代表K线的序号。
2.SS是隐含有N组常数型时间数列(N=这支股票的K线总数)。
DD:SUM(1,0)
以数学的二维空间F(X)=Y表示:Y=X
SS:SYSPARAM(1)
以数学的二维空间F(X)=Y表示,其中A属正整数:Y=A
SUM(1,0)=SYSPARAM(1)意指,下面两条线交叉成立的那一点:
Y=X
Y=A
范例:
MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,13);
XA:=CROSS(MA1,MA2) ;
XB:IF(XA=1,SUM(1,0),0);{条件成立时回传它的K线序号}
-------------------------------------------------------------------------------
0069--概率统计
COUNT,计数。SUM,总数、和。
当数组为逻辑运算判断的结果时,COUNT和SUM的返回值是一样的。一般习惯上,对于逻辑运算信号,用COUNT统计,返回其它数值的,用SUM统计。
当COUNT统计一般数值时,数组大于等于1时,计入;小于1时,不计入。这两个函数,主要用于统计。
用COUNT(CROSS(MA(C,5),MA(C,10)),0);就可以统计出全部的五天均线上穿十天均线的金叉数。
用SUM(CROSS(MA(C,5),MA(C,10)),0);和以上得出的结果应该是一样的。
股市的不随机规律,隐藏在统计概率之中。用这两个函数,可以统计很多概率性的规律。
比如,以两天的收盘价相比,昨天是下跌的,今天的下跌的概率是多少?
A:=C< REF(C,1);
B:=REF(A,1) AND C>REF(C,1);{昨天下跌,今天上涨}
D:=REF(A,1) AND C=REF(C,1);{昨天下跌,今天平盘}
E:=REF(A,1) AND C< REF(C,1);{昨天下跌,今天下跌}
F:=COUNT(B,0)+COUNT(D,0)+COUNT(E,0);
上升概率:100*COUNT(B,0)/F;
下跌概率:100*COUNT(E,0)/F;
平盘概率:100*COUNT(D,0)/F;
从两市指数看,昨天下跌,今天下跌的概率始终大于50%。那么连跌两天之后,第三天收盘的各种概率是多少?
A:=C< REF(C,1) AND REF(C,1)< REF(C,2);
B:=REF(A,1) AND C>REF(C,1);{前两天下跌,今天上涨}
D:=REF(A,1) AND C=REF(C,1);{前两天下跌,今天平盘}
E:=REF(A,1) AND C< REF(C,1);{前两天下跌,今天下跌}
F:=COUNT(B,0)+COUNT(D,0)+COUNT(E,0);
上升概率:100*COUNT(B,0)/F;
下跌概率:100*COUNT(E,0)/F;
平盘概率:100*COUNT(D,0)/F;
从指数的输出看,概率更明显了。连跌三天之后呢?
A:=C< REF(C,1) AND REF(C,1)< REF(C,2) AND REF(C,2)< REF(C,3);
B:=REF(A,1) AND C>REF(C,1);{前三天下跌,今天上涨}
D:=REF(A,1) AND C=REF(C,1);{前三天下跌,今天平盘}
E:=REF(A,1) AND C< REF(C,1);{前三天下跌,今天下跌}
F:=COUNT(B,0)+COUNT(D,0)+COUNT(E,0);
上升概率:100*COUNT(B,0)/F;
下跌概率:100*COUNT(E,0)/F;
平盘概率:100*COUNT(D,0)/F;
规律就更明显了。
不要小看这些数据。虽然没有有些“高手”做出的成功率达百分之九十左右的公式那么夸张,但很有意义的。要知道股市中的随机因素太多,平衡性很强,稍稍的统计偏向,足可作为有用的参考。
这只是简单的例子,用这两个函数,可以做出很多的有用的统计数据。多数的交易系统的"胜率",可以由此统计出来。
统计:
A:=CROSS(C,MA(C,3));
B:=CROSS(MA(C,3),C);
D:B*(C-REF(C,BARSLAST(A)));
月:SUM(D,20);
季:SUM(D,60);
半:SUM(D,120);
年:SUM(D,250);
总和:SUM(D,0);
-------------------------------------------------------------------------------
0070--五彩K线常用颜色
黑色 COLORBLACK 蓝色 COLORBLUE
棕色 COLORBROWN 青色 COLORCYAN
灰色 COLORGRAY 绿色 COLORGREEN
晶红 COLORMAGENTA 红色 COLORRED
白色 COLORWHITE 黄色 COLORYELLOW
-------------------------------------------------------------------------------
0071--分析家公式设定注意事项
参数 最多四个参数,每个有最大和最小及缺省值,须有自己名称
注释 用大括号括起来放在被注释语句之后
公式名称 由字母或数字组成,在同类公式中必须唯一,最多九个字符
中间公式 使用":="来定义名字,不能与系统提供的函数同名
Param#1-4 对应于参数1-4,大小写敏感
坐标线位置 最多七个,用分号分隔
组合公式设置 小公式间用分号隔开
绘图参数使用 将其插入到指标公式的后面,用逗号分隔开
区分多条指标线 在指标公式前写上名称并加上一个冒号
指标线名字的使用 可以当函数名用
指标线绘制的极限 可同图显示16条指标线
五彩颜色参数使用 将其插入到指标公式的后面,用逗号分隔开
-------------------------------------------------------------------------------
0072--交易系统公式交易类型
ENTERLONG  多头买入           ENTERSHORT  空头买入
EXITLONG   多头卖出           EXITSHORT   空头卖出
-------------------------------------------------------------------------------
0073--可供引用的周期类型
MIN1   1分钟线  MIN60   60分钟线
MIN5   5分钟线  DAY     日线
MIN15  15分钟线 WEEK    周线
MIN30  30分钟线 MONTH   月线
-------------------------------------------------------------------------------
0074--引用表达式
引用指标公式                   公式名称.指标线名称(参数表)
引用交易系统公式               SYSTEM.公式名称.交易类型(参数表)
引用条件选股公式               EXPLORER.公式名称(参数表)
跨周期引用公式                 各种类型公式名称#周期类型(参数表)
引用任意股票的数据             股票代码$数据名称
引用扩展数据                   EXTDATA(N) 分析家N=1-11 飞狐N=1-13
引用横向统计日线数据(1-N)      ESTDATA(N)
引用类函数第二个变量参数       类函数名称(第一参数,变量名或变量表达式)
-------------------------------------------------------------------------------
0075--符号一览表
符号  名称      举例                  符号       名称          举例
+      加       X + Y                  &&        并且       X>Y && Y>Z
-      减       X - Y                  ||        或者       X>Y || Y>Z
*      乘       X * Y                  $        修饰符号    000014$CLOSE
/      除       X / Y                  (         括号      HIGH/(CLOSE+OPEN)
<     小于      X < Y                  )        反括号     HIGH/(CLOSE+OPEN)
>     大于      X > Y                  ,         逗号        MA(Close,3)
<=  小于等于    X <= Y                 :         输出       输出:CLOSE+OPEN
>=  大于等于    X >= Y                 :=        赋值       变量1:=HIGH
=     等于      X = Y                  "        双引号       "000014$OPEN"
{}  注释符号   {注释部分}              .         点号          KDJ.K
//  注释符号   //注释部分              ;         分号         A:=CLOSE;
AND   并且     X>Y AND Y>Z             #       变周期符号   TMP1:=CLOSE#WEEK
OR    或者     X>Y OR Y>Z              ##      变周期前一     VOL##DAY
<>     非       X <> Y                 '         单引号       '大阳线'
-------------------------------------------------------------------------------
0076--横向统计
函数:ESTDATA(N)
描述:取得横向统计日线数据(1-N)
类别:扩展数据
参数:N
说明:在[横向统计管理]中定义并计算数据(本函数仅在日线分析周期有效)。
用基本公式做出的主图公式和副图公式,显示在个股或指数中,是纵向的,遍历当时显示的个股或指数中的每根K线。然后指标大小、变化、交叉情况等,都体现在某一个股或指数中。甲股和乙股,哪个KDJ中的K值大?用纵向变量(指标),原来就一点招数都没有。又比如,两市A股中,今天有几只个股的收盘价在10日均线之上,用纵向变量(指标)也没有办法,因为纵向变量(指标)只能在某一个股或指数中才可以比较。而多股间横向的比较和统计,是很有参考价值的。所以,相对于原来的纵向变量(指标),就有了横向变量这一说。
横向指标用在公式中,也是遍历每根K线的,与一般的基本函数的遍历有点不同,因为它的数据来源不同,是对应于每根K线的日子以及哪个日子中对应板块中的个股数和选择条件等。
横向统计涉及全场数据的计算,而且可以增加到数千项之多,运算量惊人,目前无法做到实时刷新(动态显示),只能手工刷新(建议盘后进行)。
横向变量主要用于盘后。要动态刷新,目前没有即时刷新的设置,可能考虑到计算量较大吧。要是不怕麻烦,过几分钟就刷新一下(刷新一次,就相当于重新计算一遍),也可以看到"动态"涨跌值排名。
横向变量在公式中的输出,与K线的日子有绝对的关系,与当时显示的个股或指数没有多大关系,在某个股中的输出和其他任一个股中的输出都一样。
横向变量所用的统计方法,是对所选板块中的个股或指数,进行全盘的统计。最近所加的"最大值"、"最小值"是两个极值,是对排序头尾的取值。而要取横向排序中的第二名、第三名,单用横向变量目前还做不到。但不排除此功能以后会开发出来。
排名名次要用扩展数据!横向变量目前做不到。
如果做横向变量或扩展数据,在当时选择的计算周期如果是日线,则今天刷新,"原本排列"就保存在昨天。横向变量实际上即是横向的,从时间上又是纵向的。
扩展数据是横向的,引用时从时间上又是纵向的。
-------------------------------------------------------------------------------
0077--扩展数据
函数:EXTDATA(N)
描述:取得日线扩展数据(1-13); 分析家N取1--11
类别:扩展数据
参数:N取1--13
说明:在[扩展数据管理]中定义并计算数据(本函数仅在日线分析周期有效)。
有些数据,非常重要,可是随着时间的推移,就再也找不到了。比如说某个股一天之中的总成交次数,又比如说某个股在上个月的1号,涨幅排名是第几?这些信息,要么以后就查不到了,要么在公式中也无法引用。而扩展数据库能解决这些问题。扩展数据库能够随日线保存这些数据,而且是计算好了的结果,所以引用时速度也很快。
扩展数据有两个用处:1、保存计算值。2、保存计算值的排名结果。目前飞狐的扩展数据,可以最多做13个。太多了好像也没有多大意思,因为扩展数据计算历史数据有点慢,而且也较占空间。历史的数据量大,当然慢了。可是计算好之后,以后只要更新当天的,速度还是较快的。计算扩展数据,某个股,一个交易日,一次只能得到一个结果数据,而且所选之指标,也应该是唯一的。
想保存所有分笔成交记录?扩展数据是做不到的。
缺省数据:某一天,或者说个股停盘等原因,没有计算结果,系统就将缺省数据保存到扩展数据库中。
在进行排序时,有两种排序方式,一种为0-N自然排序,一种为1-1000归一化排序,区别在于:自然排序按自然数来排列名次,排名在第几结果就是几,第一名,返回0;第二名,返回1;第N名,返回N-1。而归一化排序时将排序归一化到0-1000之间,第一位为0,最后一位为1000,采用公式"排名*1000/参加排名的股票数"来进行计算。归一化排序的好处是,不随股票数目的增加而对排序结果有较大的影响。
怎么引用扩展数据?EXTDATA(N);N指引用第几组扩展数据,从1到13。比如把分笔成交次数的扩展数据建立在第一组中,引用时,就用EXTDATA(1);这个公式,在某个股中,就输出此股在当天的总成交次数。扩展数据,有横向的性质,特别是用排名时。同时又是纵向的,只要有数据,以前的日子里,也可以返回所得值。而且从理论上说,扩展数据库是可以永远保存的。由于计算量较大,目前扩展数据不支持即时刷新。不过可以手工刷新。
-------------------------------------------------------------------------------
0078--峰点公式
为了能找到合适的COND,用于举例子,先介绍一组概念:
高点:在2N+1根K线中,中间这根K线的H,要大于等于左右N根K线的H。在N+1根K线中,有等高点出现,取最先出现的。
低点:在2N+1根K线中,中间这根K线的L,要小于等于左右N根K线的L。在N+1根K线中,有等低点出现,取最先出现的。
峰点:高点和低点,合称为峰点。
这个定义,意合于技术分析的老祖宗道氏:"只要平均指数的最高点超过了前期的最高点,它就处于牛市时期;当最低点低于前期的最低点时,它处于熊市时期。"这里我们撇开向上、向下分形和分形峰状点等概念,以免把概念复杂化。
也为了不让公式一来就过于复杂,我们先取N为2来做公式。简介到后面,可以看到,N是可以作为峰点公式的参数进行调整的。
公式名称:FENG2
公式说明:供引用
公式内容:
{峰点参数暂定为2}
A:=REF(H,2);{中间K线的最高价}
B:=A>=REF(H,4) AND A>=REF(H,3) AND A>=REF(H,1) AND A>=H;{中间K线的最高价大于等于两边共四根K线的最高价}
D:=BACKSET(B,3);{将当前位置和之前2个周期的数值设为1}
HD:FILTER(D,2);{找到高点后,过滤掉其后2周期内可能出现的等高点。输出高点}
A2:=REF(L,2);{中间K线的最低价}
B2:=A2<=REF(L,4) AND A2<=REF(L,3) AND A2<=REF(L,1) AND A2<=L;{中间K线的最低价小于等于两边共四根K线的最低价}
D2:=BACKSET(B2,3);{将当前位置和之前2个周期的数值设为1}
LD:FILTER(D2,2);{找到低点后,过滤掉其后2周期内可能出现的等低点。输出低点}
{后面有些例子,就从这个公式中引用信号。}
用法: DRAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标。15种图标编码为1-15(1-3为小脸,4-5为上下箭头,6-7为红绿小旗,8-9为三角形,10-12为信号灯,13-15为O、X、四方形)。TYPE为字符串时可显示用户自制BMP图。
示例:DRAWICON(CLOSE>OPEN,LOW,4)表示当收阳时在最低价位置画4号图标。
DRAWICON(C>O, L, 'MyBMP')表示当收阳时在最低价位置画FmlDLL子目录下的自制图标MyBMP.BMP。
1、COND条件,一般是指判断的结果,不是0就是1。如用其它数据,大于等于1的,条件满足;小于1,条件就不满足。
2、TYPE图标,现在已经有12种,用下面的公式,在000829上可以全部显示出来。当TYPE取大于等于12的数时,都显示黄球。
当TYPE取0时,显示的是笑脸(这个公式中没有做进去,自己可以试一下)。
B:="FENG2.HD";
D:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
A:=D>REF(D,1);
DRAWICON(REF(A,1),1.05*H,1);
DRAWICON(REF(A,2),1.05*H,2);
DRAWICON(REF(A,3),1.05*H,3);
DRAWICON(REF(A,4),1.05*H,4);
DRAWICON(REF(A,5),1.05*H,5);
DRAWICON(REF(A,6),1.05*H,6);
DRAWICON(REF(A,7),1.05*H,7);
DRAWICON(REF(A,8),1.05*H,8);
DRAWICON(REF(A,9),1.05*H,9);
DRAWICON(REF(A,10),1.05*H,10);
DRAWICON(REF(A,11),1.05*H,11);
DRAWICON(REF(A,12),1.05*H,12);
DRAWICON(REF(A,13),1.05*H,13);
DRAWICON(REF(A,14),1.05*H,100);{主图叠加}
当红球和绿球连续显示时,立体感会强一些。
DRAWICON(C>=MA(C,30),MA(C,30),10);
DRAWICON(C< MA(C,30),MA(C,30),11);{主图叠加}
3、PRICE是用于定位图标的位置的。一般用1.01*H,或者0.99*L等。现在可用ALIGN(0-5)指定对齐位置。
用这个公式来试(主图叠加)
B:="FENG2.HD";
D:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
A:=D>REF(D,1);
E:=REF(H,1);
DRAWICON(A,E,10),ALIGN0;
DRAWICON(A,E,11),ALIGN1;
DRAWICON(A,E,12),ALIGN2;
DRAWICON(A,E,3),ALIGN3;
DRAWICON(A,E,4),ALIGN4;
DRAWICON(A,E,5),ALIGN5;
可以初步得出结论:
ALIGN0:信号出现在PRICE的正中;
ALIGN1:信号出现在PRICE下边(十分靠近);
ALIGN2:信号出现在PRICE上边(十分靠近);
ALIGN3:信号出现在主图的中间;
ALIGN4:信号出现在主图的最上边;
ALIGN5:信号出现在主图的最下边;
在高低点上作图标,可以使高低点更明确了。
A:="FENG2.LD";
B:="FENG2.HD";
DRAWICON(A,L,11),ALIGN1;
DRAWICON(B,H,10),ALIGN2;{主图叠加}
4、可以自由调用MyBMP.BMP图到显示位置,大大增强了输出的效果。你只要看到好看的图,可以随时抓拍过来,做成BMP文件,放到FmlDLL子目录下,就可以调用了。
A:="FENG2.LD";
B:="FENG2.HD";
DRAWICON(A,L,'PIG'),ALIGN1;
DRAWICON(B,H,'PIG'),ALIGN2;{主图叠加。如果你没有PIG.BMP文件,则不可显示。}
DRAWICON(1,MA(C,5),'S28');
DRAWICON(1,MA(C,10),'S31');
DRAWICON(1,MA(C,20),'S14');
DRAWICON(1,MA(C,30),'S25');{主图叠加。如果你没有PIG.BMP文件,则不可显示。}
举个例子:
A:="FENG2.LD";
B:="FENG2.HD";
DRAWICON(A,L,11),ALIGN1;
DRAWICON(B,H,10),ALIGN2;
D:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
E:=D>REF(D,1);
F:=BACKSET(E,REF(BARSLAST(B),1)+2);
G:=F>REF(F,1);
DRAWLINE(G,H,E,H,1),pointdot,linethick1,coloryellow;{主图叠加}
这根线有些趋势线的意思了。由于趋势线的主观性颇强,只有多设参数才能满足多数人的要求。
DRAWLINE画出的线,应该比手工画出的线精确一些(DRAWLINE画线的灵敏度,要比手工画线低,所以说DRAWLINE画出的线精确,就未必对)。
主要用于画斜线,水平线我们一般可以另想办法。因为在图中显示直线,并非DRAWLINE的"专利"。
比如:
A:="FENG2.LD";
B:="FENG2.HD";
D:=BACKSET(ISLASTPERIOD,BARSLAST(A)+1);
E:=D>REF(D,1);
F:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
G:=F>REF(F,1);
前高:REF(H,BARSLAST(G));
前低:REF(L,BARSLAST(E));{主图叠加}
说明:在图形上显示数字
用法: DRAWNUMBER(COND,PRICE,NUMBER,PRECISION),当COND条件满足时,在PRICE位置书写数字NUMBER(可以为常数或数组序列),PRECISION为小数显示位数(取值范围0-3)。可ALIGN0-5定义对齐方式。
示例:DRAWNUMBER(CLOSE/OPEN>1.08,HIGH,(CLOSE-REF(C,1))/REF(C,1)*100,2)表示当日涨幅大于8%时在最高价位置显示涨幅(相对开盘价的百分比)。
这个函数的特色是,在NUMBER位置可以放变量。
NUMBER,数字。DRAWNUMBER是DRAWTEXT的"兄弟",也可以用ALIGN(0-5)来定义水平位置,方法相同。
A:="FENG2.LD";
B:="FENG2.HD";
DRAWICON(A,L,11),ALIGN1;
DRAWICON(B,H,10),ALIGN2;
D1:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
E1:=D1>REF(D1,1);{离目前最近的一个高点}
D2:=BACKSET(E1,REF(BARSLAST(B),1)+2);
E2:=D2>REF(D2,1);{倒数第二个高点}
DRAWTEXT(E1,H*1.02,'高点价:'),COLORGREEN,ALIGN2;
DRAWNUMBER(E1,H*1.02,H,2),COLORGREEN,ALIGN1;
DRAWTEXT(E2,H*1.02,'高点价:'),COLORYELLOW,ALIGN2;
DRAWNUMBER(E2,H*1.02,H,2),COLORYELLOW,ALIGN1;{主图叠加}
A:="FENG2.LD";
B:="FENG2.HD";
DRAWICON(A,L,11),ALIGN1;
DRAWICON(B,H,10),ALIGN2;
D1:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
E1:=D1>REF(D1,1);{离目前最近的一个高点}
D2:=BACKSET(E1,REF(BARSLAST(B),1)+2);
E2:=D2>REF(D2,1);{倒数第二个高点}
D3:=BACKSET(E2,REF(BARSLAST(B),1)+2);
E3:=D3>REF(D3,1);{倒数第三个高点}
DRAWTEXT(E1,H*1.01,'☆TEXT:'),COLORRED,ALIGN0;
DRAWTEXT(E2,H*1.01,'★TEXT:'),COLORGREEN,ALIGN1;
DRAWTEXT(E3,H*1.01,'?TEXT:'),COLORYELLOW,ALIGN2;{主图叠加}
描述:绘制折线段
类别:绘图
说明:在图形上绘制折线段
用法: POLYLINE(COND,PRICE),当COND条件满足时,以PRICE位置为顶点画折线连接。
示例:POLYLINE(HIGH>=HHV(HIGH,10),HIGH)表示在创10天新高点之间画折线。
POLY,多个的。
支持POINTDOT、LINETHICK、COLOR、SHIFT这四个描述函数。
A:="FENG2.LD";
B:="FENG2.HD";
DRAWICON(A,L,11),ALIGN1;
DRAWICON(B,H,10),ALIGN2;
POLYLINE(A,L),POINTDOT,COLORGREEN;
POLYLINE(B,H),LINETHICK2,COLORMAGENTA;{主图叠加}
参数可调整的峰点公式:
A:=REF(H,N)=HHV(H,2*N+1);{当前位置N天之前的最高价是最近2*N+1根K线中的最高价}
B:=FILTER(A,N); {当高点附近有等高的K线出现时,会影响后续高点的判断,所以要过滤}
D:=BACKSET(B,N+1);{将当前位置及前N周期的数值设为1,所以要用N+1}
HD:=FILTER(D,N); {当高点附近有等高的K线出现,取第一个,过滤掉后面N个周期之内出现的}
A2:=REF(L,N)=LLV(L,2*N+1);{求低点的过程与求高点的过程同理}
B2:=FILTER(A2,N);
D2:=BACKSET(B2,N+1);{参数N:1,3,999}
LD:=FILTER(D2,N);{主图叠加}
DRAWICON(HD,H,10),ALIGN2;{在高点附近显示红球}
DRAWICON(LD,L,11),ALIGN1;{在低点附近显示绿球}
可以说,这个公式用了未来函数BACKSET,但是用在日K线中,盘后是没有未来数据的,因为引用的全是已经发生过的不可变的数据了。
至于即时盘中的未来数据,那是说不到底的事,基本所有的公式,都有即时盘中未来数据。
红球绿球作为峰点标志,在显示K线不多的情况下,还比较清楚。但当K线数较多时,因为球的大小是不变的,所以看起来比较乱。故可用以下公式:
A:=REF(H,N)=HHV(H,2*N+1); B:=FILTER(A,N); D:=BACKSET(B,N+1); HD:=FILTER(D,N);
A2:=REF(L,N)=LLV(L,2*N+1);B2:=FILTER(A2,N); D2:=BACKSET(B2,N+1);LD:=FILTER(D2,N);
STICKLINE(REF(HD,1),REF(H,1),REF(H,1),18,0),COLORMAGENTA;
STICKLINE(REF(LD,1),REF(L,1),REF(L,1),18,0),COLORGREEN;
函数:HHVBARS(X,N)
描述:上一高点位置
类别:引用
参数:X为数组,N为计算周期
返回:返回数组
说明:求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计
示例:HHVBARS(HIGH,0)求得历史新高到当前的周期数
HHV、HHVBARS这两个函数一起用,可以找到当前N天中的最高点。
A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);
B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}
REF(H,BARSLAST(B));
DRAWICON(B,H,1),ALIGN2;{主图叠加。N:30,1,9999}
函数:LLVBARS(X,N)
描述:上一低点位置
类别:引用
参数: 无
返回: 无
说明:求N周期内X最低值到当前周期数,N=0表示从第一个有效值开始统计
示例:LLVBARS(HIGH,10)求得10日最低点到当前的周期数
当前N天之内的最高点和最低点就一目了然了:
A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);
B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}
REF(H,BARSLAST(B));
DRAWICON(B,H,1),ALIGN2;
A2:=BACKSET(ISLASTPERIOD,LLVBARS(L,N)+1);
B2:=COUNT(A2,N)=1;{取得前N个周期内的最低点位置}
REF(L,BARSLAST(B2));
DRAWICON(B2,L,2),ALIGN1;{主图叠加。N:30,1,9999}
这个公式求前期高低点,在600036等次新股上试调整参数就露马脚了,并不完善。问题出在HHVBARS起算点等原因上。
下面这个公式可以说是完美解决方案:
HH:HHV(H,N),LINETHICK2;
LL:LLV(L,N),LINETHICK2;{主图叠加,参数N:30,1,9999}
当N个周期之内,有两个最高价,即有等高的情况出现,HHVBARS会返回哪个最高价到当前的周期数呢?
用副图公式观察一下,N取10:
HHVBARS(H,N);
我们可以得出结论,返回的是前一个最高价到当前的周期数。同样,当在N个周期之内,有两个等低的最低价出现时,LLVBARS会返回前一个最低价到当前的周期数。
-------------------------------------------------------------------------------
0079--窄幅整理
(HHV(C,20)-LLV(C,20)/C<0.08;
-------------------------------------------------------------------------------
0080--N天前到M天前之间的最高价
REF(HHV(H,20),40);
0081--某时间段最高价
HH:=IF(YEAR=1998 AND MONTH>=8 AND MONTH<=12,H,0);
HHV(HH,0);{此例求1998年8月1日到1998年12月31日间的最高价}
-------------------------------------------------------------------------------
0082--二十日内是否有过涨停
TT:=C/REF(C,1)>1.095;
COUNT(TT,20)>0;
-------------------------------------------------------------------------------
0083--放量创新高
AA:=MA(V,5);
BB:=REF(AA,2);
CC:=HHV(C,30);
AA/BB>2 AND C=CC;
-------------------------------------------------------------------------------
0084--突破长期平台整理
V1:=MA(V,5);
V2:=V/REF(V1,1);
PZ1:=MA(C,150);
PZ2:=HHV(H,150);
PZ3:=LLV(L,150);
PZ4:=(PZ2-PZ1)/PZ1;
PZ5:=(PZ1-PZ3)/PZ1;
PZ:=REF(PZ4,1)<0.15 AND REF(PZ5,1)<0.15;
TP1:=HHV(H,150);
TP:=H=TP1;
V2>=2 AND PZ AND TP
-------------------------------------------------------------------------------
0085--尾盘大单拉升或打压
AA:=TIME>=145500;
BB:=SUM(V,0)/240;//当天均量
CC:=SUM(V,10)/10;//10分钟内的成交均量
DD:=REF(C,10);
AA AND CC/BB>3 AND C/DD>1.02;
-------------------------------------------------------------------------------
0086--MACD柱状体变宽语法
Moving Average Convergence/Divergence , MACD , 移动平均收敛/发散指针
Param(LONG , 26 ,20 100)
Param(SHORT , 12 , 5 ,40)
Param(M , 9 , 2 , 60)
DIFF:EMA( CLOSE , SHORT ) - EMA( CLOSE , LONG) ,LINETHICK0,COLOR99FFFF;
DEA:EMA( DIFF , M ) ,LINETHICK0,COLORFF9966;
MACD: 2 * ( DIFF - DEA ) ,LINETHICK0,COLOR9966FF;
STICKLINE(MACD>0,0,MACD,6,1) ,COLOR9966FF;
STICKLINE(MACD<=0,0,MACD,6,1) ,COLORCCFF66;
PARTLINE(C>0,DIFF) ,COLOR99FFFF;
PARTLINE(C>0,DEA) ,COLORFF9966;
英译:
DIFF=Difference = 差异=差离值
DEA=Difference Exponential Average= 差异的指数平滑移动平均=差离值平均值
MACD=Moving Average Convergence/Divergence = 移动平均收敛/发散
利用快速和慢速两条指数平滑移动平均线,计算两者之间的差离值DIFF
再利用差离值DIFF,来计算差离值平均值DEA
本公式MACD柱状,即可明显体现出了DIFF与DEA两者的收敛交会与发散分离的情况,
用以研判买进或卖出的时机
-------------------------------------------------------------------------------
0087--傅立叶变换
用法:FFT(X , N)
傅立叶变换,对数列X进行傅立叶变换,或变换处理后反变换
示例:
当N=0时,对数列X进行傅立叶变换;
当N=1时,对数列X进行傅立叶变换后,再反变换回来,与原X一致;
当N>1时,对数列X进行傅立叶变换后,舍去周期小于N的成分后再反变换回来;
傅立叶变换是最常用的积分变换。原理和对数变换等差不多,广泛应用于工程技术领域。可傅立叶变换的算法,涉及高等数学的微积分知识,非三言两语说得清楚。
傅立叶变换的应用方面:把FFT(CLOSE,30),在主图中上移、下移之后,可以构成非常光滑的信道。
AA:FFT(CLOSE,30);
XX:AA*1.05;
YY:AA*0.95;
-------------------------------------------------------------------------------
0088--周期切换
函数: DATATYPE
别名: DATAPERIOD,、数据周期类型
用法:
DATATYPE
回传值竹范围为0-11
分别表示分笔成交、1分钟、5分钟、15分钟、30分钟、60分钟、
日、周、月、年、多日、多分钟
范例:切换到日线时跑最高价、切换到周线时跑最低价。考虑到什么周期秀什么线的问题
XH:=IF( DATATYPE=6 , 1 , 0 ) ;
XL:=IF( DATATYPE=7 , 1 , 0 ) ;
AA:=MA(C , XH)/MA(C , XH) ;
BB:=MA(C , XL)/MA(C , XL) ;
HH:=HIGH ;
LL:=LOW ;
日线最高价:AA*HH , COLORGREEN ;
周线最低价:BB*LL , COLORYELLOW ;
范例:切换到指数类STKTYPE=0 跑10均线,切换到个股类STKTYPE=5 跑30均线。
XA:=IF( STKTYPE=0 , 1 , 0 ) ;
XB:=IF( STKTYPE=5 , 1 , 0 ) ;
AA:=IF( XA=1 , MA(C,10) , 0 ) ;
BB:=IF( XB=1 , MA(C,30) , 0 ) ;
指针线:AA+BB ;
范例:标记当天分时K线的当天K线序号。过了午夜12点,就又要等早盘开盘后序号数字才会出现
XA:=CURRENTDATE=DATE ;
XB:=REF(XA , 1)<>XA ;
XC:HHVBARS(XB , 0) + XA ;
应用:13均线当天当下最后数值向后延申,画平台线。
XA:=CURRENTDATE=DATE ;
XB:=REF(XA , 1)<>XA ;
XC:=HHVBARS(XB , 0) + XA ;
XD:=MA(C,13);
XE:=REFX(XD , 300);
XF:IF(XC>=0 , XE , 0) ,LINETHICK0,COLOR99FFFF;
PARTLINE(XC>=1 , XF) ,COLOR99FFFF;
-------------------------------------------------------------------------------
0089--公历农历
范例:公历日期
YY:=YEAR*10000;
MM:=MONTH*100;
DD:=DAY ;
公历日期:YY+MM+DD ,LINETHICK0;
范例:农历日期
LY:=LYEAR*10000;
LM:=LMONTH*100;
LD:=LDAY;
农历日期:LY+LM+LD ,LINETHICK0;
范例:两个日期相差天数→横坐标切换→自然日坐标和交易日坐标效果不一样
两日期相差天数A: DATEDIFF(1020929,1021003),LINETHICK0;
两日期相差天数B: DATEDIFF(LSOLARTERMDATE(1), DATE),LINETHICK0;
范例:9点:30分:59秒以前的分时K线,指定一个值=1给它,其它为=0
N:=30;
XA:IF((HOUR=8) OR (HOUR=9 AND MINUTE>=0 AND MINUTE<=N) , 1 , 0 ) , STICK ;
上面和下面的语法,其意义相同:
范例:9点:30分:59秒 以前的分时K线 ,指定一个值=1给它,其它为=0
N:=30;
XA:(HOUR=8) OR (HOUR=9 AND MINUTE>=0 AND MINUTE<=N) , STICK ;
范例:开盘第一根分时K线,指定一个值=1给它,其它为0
XA:REF(DATE,1)<>DATE , STICK;
范例:每天的分时K线,指定它的当天K线序号给它
XA:=REF(DATE,1)<>DATE , STICK;
XB:BARSLAST(XA=1) + 1 ,STICK;
-------------------------------------------------------------------------------
0090--添加自己的特色指针子选单
方法如下:
在C:\CHIEFOX\SYSTEM\下建立SPECINDI.INI文件,例如其内容如下:
[特色指针]
追涨体系=0,RSI;0,KDJ;
条件选股=0,BIAS;3,K110;2,BIAS
打开记事本,输入上面文字后,存盘时记得扩展名由TXT→改为INI
批注:
各指针间以分号相隔。
指针名称逗号前的数字表示公式类型:
0:技术指针,1:条件选股 2:交易系统 3:五彩K线
再启动看看:
功能选单:特色→特色指针,将会出现子选单"追涨体系"、"条件选股"。
-------------------------------------------------------------------------------
0091--5日均线转折价
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK27
参数PARAM( N,5,2,300 )
MMA:MA( CLOSE , N ) ;
RMA:=REF( MMA , 1 ) ;
MMB:=MA( CLOSE , N-1 ) ;
RMB:=REF( MMB , 1 ) ;
均线今转折:( RMA * N ) - ( RMB * ( N-1) ) , LINETHICK5 , POINTDOT ;
均线明转折:( MMA * N ) - ( MMB * ( N-1 ) ) , LINETHICK5 , POINTDOT ;
说明:
1. REF( X , N ) 函数:将线图 X 向右平移 N 周期。
2. X , SHIFT N 函数:将线图 X 向右平移 N 周期。(这两者之间的差别验证看看就知道了)
3.
收盘站在转折价之上→均线将走正斜率。
收盘等于转折价→均线将走零斜率。
收盘落入转折价之下→均线将走负斜率。
5日均线
使CROSS(CLOSE , MA( CLOSE , 5 ) )成立转折价
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK40
参数PARAM( N,5,2,300 )
MMA:MA (CLOSE , N ) ;
TT:=MA( C , N-1 ) ;
DD:=REF( TT , 1 ) ;
PARTLINE( CLOSE>0, DD ) , CROSSDOT , COLOR6A9BFF ;
PARTLINE( CLOSE>0 , TT ) , CROSSDOT , COLORFFAB60 ;
EXPLAINEX( CLOSE>0 , '均线今转折 ' , DD , 2 , 0 ) , COLOR6A9BFF;
EXPLAINEX( CLOSE>0 , '均线明转折 ' , TT , 2 , 0 ) , COLORFFAB60 ;
说明:
BB=MA( C , 4 )
RB=REF( BB , 1 )

今转折价为 CC
CC=(4*RB) / 5 + (CC) / 5
5*CC=4*RB + CC ;
4*CC=4*RB
CC=RB
同理可证:

明转折价为MM
MM=BB
5日均线
使CROSS(CLOSE , MA( CLOSE , 5 ) )成立 转折价(含周均线)
将公式建立在:技术指针( ○主图 ●主图叠加 ) 先建立即将被引用的表达式
公式名称:KKK45
参数PARAM( N,5,2,300 )
MMA:MA (CLOSE , N ) ;
TT:MA( C , N-1 ) ;
DD:REF( TT , 1 ) ;
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK45.1
参数PARAM( N,5,2,300 )
MMA:"KKK45.MMA"(N) ;
MMW:"KKK45.MMA#WEEK"(N) ;
TT:="KKK45.TT"(N) ;
DD:="KKK45.DD"(N) ;
WT:="KKK45.TT#WEEK"(N) ;
WD:="KKK45.DD#WEEK"(N) ;
PARTLINE( CLOSE>0, DD ) , CROSSDOT , COLOR6A9BFF ;
PARTLINE( CLOSE>0 , TT ) , CROSSDOT , COLORFFAB60 ;
PARTLINE( CLOSE>0, WD ) , CROSSDOT , COLOR88FB66 ;
PARTLINE( CLOSE>0, WT ) , CROSSDOT , COLORB982FD;
EXPLAINEX( CLOSE>0 , '均线今转折 ' , DD , 2 , 0 ) , COLOR6A9BFF;
EXPLAINEX( CLOSE>0 , '均线明转折 ' , TT , 2 , 0 ) , COLORFFAB60 ;
EXPLAINEX( CLOSE>0 , '\N均线今周转折 ' , WD , 2 , 0 ) , COLOR88FB66 ;
EXPLAINEX( CLOSE>0 , '均线下周转折 ' , WT , 2 , 0 ) , COLORB982FD ;
-------------------------------------------------------------------------------
0092--平均真实波幅 ATR BANDS
METASTOCK FORMULAS
ATR BANDS
STDHA := MOV(C,20,E)+2*ATR(20) ;
STDLA := MOV(C,20,E)-2*ATR(20) ;
STDHA;
STDLA
真实波幅TRUE RANGE是以下三者最大的一项:
(A). 当天最高价至最低价的幅度。
(B). 当天最高价至昨天收盘价的幅度。
(C). 当天最低价与昨天收盘价的幅度。
公式名称:KKK43
将公式建立在:技术指针 ( ○主图 ●主图叠加 )
RC:=REF( C , 1 ) , LINETHICK0 ;
XA:=IF( RC>H , RC , 0 ) ;
XB:=IF( H>=RC AND RC>L , H , 0 ) ;
XC:=IF( RC<=L , H , 0 ) ;
XD:=XA+XB+XC ;
YA:=IF( RC>H , L , 0 ) ;
YB:=IF( H>=RC AND RC>L , L , 0 ) ;
YC:=IF( RC<=L , RC , 0 ) ;
YD:=YA+YB+YC ;
ATR:=SMA( (XD - YD) , 20 , 1 ) ;
STDHA:EMA( C , 20 ) + 2*ATR ;
STDLA:EMA( C , 20 ) - 2*ATR ;
-------------------------------------------------------------------------------
0093--SYSPARAM(1)函数的说明
SYSPARAM(1)函数:主要应用在,线图会随十字游标的移动而变化。
公式名称:KKK12
将公式建立在:技术指针 ( ○主图 ●主图叠加 )
SS:=SYSPARAM( 1 ) ;
DD:=SUM( 1 , 0 ) ;
CC:CLOSE * 1.07 , LINETHICK0 , COLORYELLOW ;
PARTLINE( SS>=DD , CC ) , COLORYELLOW ;
注:
DD:SUM( 1 , 0 ) ;
SS:SYSPARAM( 1 ) ;
上面两者,显然有明显的不同之处。
1. DD是一条变量型时间数列→代表K线的序号下标。
2. SS是一组包含N 条的常数型时间数列( N=这支股票的K线总数)。
-------------------------------------------------------------------------------
0094--真实波幅AND平均真实波幅。
真实波幅TRUE RANGE是以下三者最大的一项:
(A). 当天最高价至最低价的幅度。
(B). 当天最高价至昨天收盘价的幅度。
(C). 当天最低价与昨天收盘价的幅度。
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK36
收盘价:CLOSE , POINTDOT , LINETHICK6 ;
RC:REF( C , 1 ) , LINETHICK0 ;
XA:=IF( RC>H , RC , 0 ) ;
XB:=IF( H>=RC AND RC>L , H , 0 ) ;
XC:=IF( RC<=L , H , 0 ) ;
XD:XA+XB+XC ;
YA:=IF( RC>H , L , 0 ) ;
YB:=IF( H>=RC AND RC>L , L , 0 ) ;
YC:=IF( RC<=L , RC , 0 ) ;
YD:YA+YB+YC ;
ATR:SMA( ( XD - YD ) , 14 , 1 ) , LINETHICK0 ;
真实波幅TRUE RANGE是以下三者最大的一项:
(A). 当天最高价至最低价的幅度。
(B). 当天最高价至昨天收盘价的幅度。
(C). 当天最低价与昨天收盘价的幅度。
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK36
收盘价:CLOSE , POINTDOT , LINETHICK6 ;
RC:REF( C , 1 ) , LINETHICK0 ;
XA:=IF( RC>=H , RC , 0 ) ;
XB:=IF( RC< H , H , 0 ) ;
XD:XA+XB ;
YA:=IF( RC>L , L , 0 ) ;
YB:=IF( RC<=L , RC , 0 ) ;
YD:YA+YB ;
TR:SMA( ABS( XD - YD ) , 14 , 1 ) , LINETHICK0 ;
-------------------------------------------------------------------------------
0095--条件成立当日低点向后划水平线直到水平线跌破。
条件A,例如CROSS( K , 80 ),
在 条件A 成立的当天取当根K棒的“最低价X”作为“水平直线”的起点,然后一直随着未来的K棒自动向右延伸,“直到”有一天的“收盘价小于”当初条件成立时的那个“最低价X”时,这一条“水平直线”便到了终点。
将下面公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK29
参数PARAM( N,9,1,100 )
参数PARAM( M1,3,2,40 )
参数PARAM( M2,3,2,40 )
RSV:=( CLOSE-LLV(LOW,N) ) / ( HHV(HIGH,N)-LLV(LOW,N) ) * 100 ;
K:=SMA( RSV , M1 , 1 ) , COLORRED ;
D:=SMA( K , M2 , 1 ) , COLORYELLOW ;
AA:=CROSS( K , 80 ) ;
BB:=BARSLAST( AA=1 ) ;
DD:=REF( LOW , BB ) ;
EE:=CROSS( DD , CLOSE ) ;
FF:=SUM( EE , BB ) ;
GG:=( REF( FF , 1 )=0 AND FF=1 ) ;
HH:=( REF(DD,1)=DD ) ;
PARTLINE( HH=1 , DD ) ;
DRAWLINE( AA=1 , DD , GG=1 , DD , 0 ) , COLORC080FF ;
-------------------------------------------------------------------------------
0096--分析周期切换→均线参数自动切换(1)
日线 MA5,MA10,MA20,MA30,MA72
周线 MA6,MA12,MA24,MA72
其它周期参数,自行类推。
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK25.2 (完成品)
XA:=IF( DATAPERIOD=6 , 5 , 0 ) ;
XB:=IF( DATAPERIOD=6 , 10 , 0 ) ;
XC:=IF( DATAPERIOD=6 , 20 , 0 ) ;
XD:=IF( DATAPERIOD=6 , 30 , 0 ) ;
XE:=IF( DATAPERIOD=6 , 72 , 0 ) ;
TT:=SUM( 1 , 0 ) ;
A1:=ISLASTBAR ;
A2:=BACKSET( A1=1 , TT-4 ) ;
A3:=BARSLAST( A2=1 ) ;
X1:=A3 + 1 ;
MA5:MA( C , XA ) * X1 ;
B1:=ISLASTBAR ;
B2:=BACKSET( B1=1 , TT-9 ) ;
B3:=BARSLAST( B2=1 ) ;
X2:=B3 + 1 ;
MA10:MA( C , XB ) * X2 ;
C1:=ISLASTBAR ;
C2:=BACKSET( C1=1 , TT-19 ) ;
C3:=BARSLAST( C2=1 ) ;
X3:=C3 + 1 ;
MA20:MA( C , XC ) * X3 ;
D1:=ISLASTBAR ;
D2:=BACKSET( D1=1 , TT-29 ) ;
D3:=BARSLAST( D2=1 ) ;
X4:=D3 + 1 ;
MA30:MA( C , XD ) * X4 ;
E1:=ISLASTBAR ;
E2:=BACKSET( E1=1 , TT-71 ) ;
E3:=BARSLAST( E2=1 ) ;
X5:=E3 + 1 ;
MA72:MA( C , XE ) * X5 ;
YA:=IF( DATAPERIOD=7 , 6 , 0 ) ;
YB:=IF( DATAPERIOD=7 , 12 , 0 ) ;
YC:=IF( DATAPERIOD=7 , 24 , 0 ) ;
YD:=IF( DATAPERIOD=7 , 72 , 0 ) ;
A11:=ISLASTBAR ;
A22:=BACKSET( A11=1 , TT-5 ) ;
A33:=BARSLAST( A22=1 ) ;
Y1:=A33 + 1 ;
MB6:MA( C , YA ) * Y1 ;
B11:=ISLASTBAR ;
B22:=BACKSET( B11=1 , TT-11 ) ;
B33:=BARSLAST( B22=1 ) ;
Y2:=B33 + 1 ;
MB12:MA( C , YB ) * Y2 ;
C11:=ISLASTBAR ;
C22:=BACKSET( C11=1 , TT-23 ) ;
C33:=BARSLAST( C22=1 ) ;
Y3:=C33 + 1 ;
MB24:MA( C , YC ) * Y3 ;
D11:=ISLASTBAR ;
D22:=BACKSET( D11=1 , TT-71 ) ;
D33:=BARSLAST( D22=1 ) ;
Y4:=D33 + 1 ;
MB72:MA( C , YD ) * Y4 ;
说明:
只显示后面15(预设)天的线图(不使用VBS):
将下列公式建立在:技术指针 ( ●主图 ○主图叠加 )
公式名称:KKK17.1
参数PARAM( N、15、1、300 )
AA:=ISLASTBAR ;
BB:=BACKSET( AA=1 , N ) ;
Y:=BARSLAST( BB=1 ) ;
X:=Y + 1 ;
OO:OPEN * X ;
MM:MA( CLOSE , 5 ) * X ;
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK25 (半成品)
XA:=IF( DATAPERIOD=6 , 5 , 0 ) ;
XB:=IF( DATAPERIOD=6 , 10 , 0 ) ;
XC:=IF( DATAPERIOD=6 , 20 , 0 ) ;
XD:=IF( DATAPERIOD=6 , 30 , 0 ) ;
XE:=IF( DATAPERIOD=6 , 72 , 0 ) ;
MA5:MA( C , XA ) ;
MA10:MA( C , XB ) ;
MA20:MA( C , XC ) ;
MA30:MA( C , XD ) ;
MA72:MA( C , XE ) ;
YA:=IF( DATAPERIOD=7 , 6 , 0 ) ;
YB:=IF( DATAPERIOD=7 , 12 , 0 ) ;
YC:=IF( DATAPERIOD=7 , 24 , 0 ) ;
YD:=IF( DATAPERIOD=7 , 72 , 0 ) ;
MB6:MA( C , YA ) ;
MB12:MA( C , YB ) ;
MB24:MA( C , YC ) ;
MB72:MA( C , YD ) ;
注:
当前分析周期类型: DATAPERIOD ;
DATAPERIOD 函数 → 回传值的范围介于 0 -- 10 之间 。分别代表 当前分析周期类型。
0 → 分笔成交
1 → 1 分钟线
2 → 5 分钟线
3 → 15分钟线
4 → 30分钟线
5 → 60分钟线
6 → 日线
7 → 周线
8 → 月线
9 → 年线
10 → 多日线
小技巧:
在图形分析窗口可用 键盘精灵 切换分析周期。
-------------------------------------------------------------------------------
0097--分析周期切换→均线参数自动切换(2)
日线 MA5,MA10,MA20,MA30,MA72
周线 MA6,MA12,MA24,MA72
其它周期参数,自行类推。
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK25.5 (完成品)
XA:=( DATAPERIOD=6 )*5 ;
XB:=( DATAPERIOD=6 )*10 ;
XC:=( DATAPERIOD=6 )*20 ;
XD:=( DATAPERIOD=6 )*30 ;
XE:=( DATAPERIOD=6 )*72 ; {常数型 时间数列 ,将之代入 MA函数 会正确}
MA5:MA( C , XA ) ;
MA10:MA( C , XB ) ;
MA20:MA( C , XC ) ;
MA30:MA( C , XD ) ;
MA72:MA( C , XE ) ;
YA:=( DATAPERIOD=7 )*6 ;
YB:=( DATAPERIOD=7 )*12 ;
YC:=( DATAPERIOD=7 )*24 ;
YD:=( DATAPERIOD=7 )*72 ;
MB6:MA( C , YA ) ;
MB12:MA( C , YB ) ;
MB24:MA( C , YC ) ;
MB72:MA( C , YD ) ;
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK25 (半成品)
XA:=IF( DATAPERIOD=6 , 5 , 0 ) ;
XB:=IF( DATAPERIOD=6 , 10 , 0 ) ;
XC:=IF( DATAPERIOD=6 , 20 , 0 ) ;
XD:=IF( DATAPERIOD=6 , 30 , 0 ) ;
XE:=IF( DATAPERIOD=6 , 72 , 0 ) ;
{有点变量型时间数列的味道,因为IF函数在做怪,将之代入MA函数会失真}
MA5:MA( C , XA ) ;
MA10:MA( C , XB ) ;
MA20:MA( C , XC ) ;
MA30:MA( C , XD ) ;
MA72:MA( C , XE ) ;
YA:=IF( DATAPERIOD=7 , 6 , 0 ) ;
YB:=IF( DATAPERIOD=7 , 12 , 0 ) ;
YC:=IF( DATAPERIOD=7 , 24 , 0 ) ;
YD:=IF( DATAPERIOD=7 , 72 , 0 ) ;
MB6:MA( C , YA ) ;
MB12:MA( C , YB ) ;
MB24:MA( C , YC ) ;
MB72:MA( C , YD ) ;
注:
当前分析周期类型: DATAPERIOD ;
PP:( DATAPERIOD=6 ) ; { PP为常数型时间数列 }
-------------------------------------------------------------------------------
0098--调用某某公式内的时间数列线
公式名称:BB
SS:=HIGH< REF( HIGH , 1 ) ; {不输出的表达式,如果被引用还是会变成不输出的表达式}
RR:REF( HIGH , 6 ) ; {输出的表达式,如果被引用还是会变成输出的表达式}
公式名称: BBQ
TT:"BB.SS" ; {不输出的表达式}
PP:"BB.RR" ; {输出的表达式}
1. 调用公式BB内的SS时间数列。调用公式BB内的RR时间数列。
2. 当SS线内存有预设参数时,例如有两个参数,可视情况写成PP:"BB.SS"(N,M) 。
3. 例如 K:="KD.K"( 10 , 4 , 0 ) ; → 调用公式 KD 内的 K 时间数列 。
3. 例如 D:="KD.D"( 10 , 4 , 4 ) ; → 调用公式 KD 内的 D 时间数列 。
4. 例如 K:="KD.K" ; → 使用公式 KD 预设的参数 ,( 9 , 3 , 0 )。
4. 例如 K:="KD.D" ; → 使用公式 KD 预设的参数 ,( 9 , 3 , 3 )。
公式名称:KD
参数PARAM( N,9,1,100 )
参数PARAM( M1,3,2,40 )
参数PARAM( M2,3,2,40 )
RSV:=( CLOSE-LLV( LOW , N ) ) / ( HHV( HIGH , N )-LLV( LOW , N ) )*100 ;
K:SMA( RSV , M1 , 1 ) ; {K数列内包含了两个参数因子:N,M1}
D:SMA( K , M2 , 1 ) ; {D数列内包含了三个参数因子:N,M1,M2}
(1) 多头: 周线9K>9D时选出日线9K>9D的股票
(2) 空头: 周线9K<9D时选出日线9K<9D的股票
公式A. 先建立即将被引用的表达式
建立一个专门被用来引用(QUOTE)的公式区。
将公式建立在:技术指针( ●主图 ○主图叠加 )
公式名称:KDD
参数PARAM( N,9,1,100 )
参数PARAM( M1,3,2,40 )
参数PARAM( M2,3,2,40 )
RSV:=( CLOSE-LLV(LOW,N) ) / ( HHV(HIGH,N)-LLV(LOW,N) ) * 100 ;
K:SMA( RSV , M1 , 1 ) , COLORRED ;
D:SMA( K , M2 , 1 ) , COLORYELLOW ;
公式B.
将公式建立在:技术指针( ●主图 ○主图叠加 )
公式名称:KDD1
K:"KDD.K" ;
D:"KDD.D" ;
WK:"KDD.K#WEEK" ;
WD:"KDD.D#WEEK" ;
公式B.
将公式建立在:条件选股
公式名称:KDD2(多头)
K:="KDD.K" ;
D:="KDD.D" ;
WK:="KDD.K#WEEK" ;
WD:="KDD.D#WEEK" ;
K>D AND WK>WD
公式C.
将公式建立在:条件选股
公式名称:KDD3(空头)
K:="KDD.K" ;
D:="KDD.D" ;
WK:="KDD.K#WEEK" ;
WD:="KDD.D#WEEK" ;
K< D AND WK< WD
-------------------------------------------------------------------------------
0099--三角函数AND角度线
∠A 的对边长度 = A
∠B 的对边长度 = B
∠C 的对边长度 = C → 斜边
u=3.14159
1 度 = ( u / 180 ) 弧度
∠B = 22.5 度 = ( 1 / 8 ) * u 弧度
∠B = 45 度 = ( 1 / 4 ) * u 弧度
SIN( B ) = B / C
COS( B ) = A / C
TAN( B ) = B / A → B = A * TAN( B )
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK30
AA:=SUM( 1 , 0 ) - 1 ;
BB22: AA * TAN( ( 1 / 8 ) * 3.14159 ) ;
BB45: AA * TAN( ( 1 / 4 ) * 3.14159 ) ;
将公式建立在:技术指针( ○主图 ●主图叠加 )
公式名称:KKK30.1
参数PARAM( N、45、0、80 )→预设为45度。
AA:=SUM( 1 , 0 ) - 1 ;
BB: AA* TAN( N * ( 3.14159 / 180 ) ) ;
-------------------------------------------------------------------------------
0100--个股和大盘联动K线
渗入“总报酬率”的观念,就可画出个股和大盘联动K线。
公式名称:KKK4
将公式建立在:技术指针 ( ○主图 ●主图叠加 )
参数PARAM( N,30,1,300 )
参数PARAM( M,1,0,1 )
AA:=SUM( 1 , 0 ) ;
BB:=IF( AA=1 , 1 , 0 ) ;
TT:=ISLASTBAR ;
DD:=BACKSET( TT=1 , N + 1 ) ;
EE:=BACKSET( TT=1 , N ) , LINETHICK0 ;
FF:=IF( DD>EE , 1 , 0 ) ;
GG:=IF( M=1 , FF , BB ) ;
PP:=BARSLAST( GG=1 ) , LINETHICK0; ;
X:=REF( INDEXC , PP ) ;
Y:=REF( CLOSE , PP ) ;
OO:( INDEXO / X ) * Y , LINETHICK0 ;
HH:( INDEXH / X ) * Y , LINETHICK0 ;
LL:( INDEXL / X ) * Y , LINETHICK0 ;
CC:( INDEXC / X ) * Y , LINETHICK0 ;
CC%:( INDEXC / X ) - 1 , LINETHICK0 ; { 基准日至今,大盘总报酬率 }
DC%:( CLOSE / Y ) - 1 , LINETHICK0 ; { 基准日至今,个股总报酬率 }
STICKLINE( CC>OO , HH , LL , 0.1 , 0 ) , COLORRED ;
STICKLINE( CC>OO , CC , OO , 7 , 1 ) , COLORRED ;
STICKLINE( CC<=OO , HH , LL , 0.1 , 0 ) , COLORCYAN ;
STICKLINE( CC<=OO , CC , OO , 7 , 0 ) , COLORCYAN ;
说明:
1. 从后面算来(第N+1日) 为基准日。例如,N=10;
2. 求算从后面算来(N日)→个股和大盘指数的联动K线:
(每日大盘开盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价
(每日大盘最高盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价
(每日大盘最低盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价
(每日大盘收盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价
3. 公式的用意是:
以基准日为基准至今:大盘总报酬率多少,个股的总报酬率就多少。联动在一起。
公式技巧(0101~0200)
---------------------------------------------------------------
0101--含职工股
FINANCE(8)>0
---------------------------------------------------------------
0102--次新中小
N(1,255,30)
BARSCOUNT(C)< N AND
FINANCE(7)<=10000
---------------------------------------------------------------
0103--收盘大于开盘
CLOSE>=DYNAINFO(4)
---------------------------------------------------------------
0104--涨跌幅度
N(0,0.1,0.05)
DYNAINFO(14)>=N
---------------------------------------------------------------
0105--小盘选股
CAPITAL<=500000 AND FINANCE(33)>=0.01 AND CLOSE<=30
---------------------------------------------------------------
0106--低市盈率选股
N(10,30,30)
DYNAINFO(39)<=N
选择市盈率较小的股票.
市盈率小于PARAM#1
---------------------------------------------------------------
0107--业绩选股
N(0,100,0.4)
FINANCE(33)>N
业绩选股,每股收益在0.4元以上
每股收益在PARAM#1元以上
---------------------------------------------------------------
0108--小盘股
N(700,50000,3000)
FINANCE(7)<=N
选择流通股较小的股票
流通股小于PARAM#1万股
---------------------------------------------------------------
0109--大盘股
N(15000,30000,20000)
FINANCE(7)>=N
流通股大于PARAM#1万股
---------------------------------------------------------------
0110--净资产收益率选股
N(0,300,20)
FINANCE(37)>(N/100)
净资产收益率高于N的股票
净资产收益率大于百分之PARAM#1
---------------------------------------------------------------
0111--B股板块
FINANCE(5)>0
含有B股的股票
选择含B股的股票
---------------------------------------------------------------
0112--无国家股板块
FINANCE(2)=0
国家股为零的股票.
选择不含国家股的股票
---------------------------------------------------------------
0113--每股净资产选股
N(1,5,2.5)
FINANCE(34)>N
选出每股净资产大于N元的股票.
每股净资产大于PARAM#1元
---------------------------------------------------------------
0114--每股未分配利润选股
N(0.1,2,1)
FINANCE(32)>N
每股未分配利润大于N的股票
每股未分配利润大于PARAM#1元
---------------------------------------------------------------
0115--股东权益比率选股
N(1,100,50)
FINANCE(36)>(N/100)
股东权益比率大于N的股票.
股东权益比率大于百分之PARAM#1
---------------------------------------------------------------
0116--每股公积选股
N(1,4,2)
FINANCE(18)>N
每股公积金大于PARAM#1元
---------------------------------------------------------------
0117--举牌概念股
N(1,100,50)
FINANCE(7)/FINANCE(1)>=(N/100)
流通股在总股本中的比重很大的股票,这类股票相对来说更容易被收购和举牌,因此被市场称为举牌概念股.
流通股占总股本的比重高于PARAM#1%,有被收购和举牌的概念.
---------------------------------------------------------------
0118--指数效应股
M(1,100,10)
FINANCE(7)/FINANCE(1)<=(M/100)
流通股占总股本的比例小于M%,这类股票对指数的影响比较大,容易成为主力拉抬指数的工具.
流通股占总股本的比重低于PARAM#1%,这类股票对指数的影响比较大.
---------------------------------------------------------------
0119--H股板块
FINANCE(6)>0
选择含有H股的股票,该板块具有明显的联动效应.
选择含有H股的股票.
---------------------------------------------------------------
0120--含转配股
FINANCE(9)>0
选择含有转配股的股票,这类股票在特定的时候具有一定的联动效应.
选择含有转配股的股票.
---------------------------------------------------------------
0121--主营业务利润率选股
N(1,100,30)
FINANCE(21)/FINANCE(20)>=(N/100)
主营业务利润率高于N的股票,主营业务利润率越高则说明主营业务越鲜明,公司的发展越稳健.
主营业务利润率大于PARAM#1%
---------------------------------------------------------------
0122--市净率选股
N(1,50,5)
C/FINANCE(34)< N
市净率=市价/每股净资产
市净率>N
市净率越低公司股价越有被低估的可能,这类股票从理论上讲具有更高的安全性.
市价/每股净资产小于PARAM#1倍,该比率越低,从基本分析来看理论上越安全.
---------------------------------------------------------------
0123--流动比率选股
N(0.1,5,1)
FINANCE(11)/FINANCE(15)>N
流动比率大于N的股票
流动资产/流动负债大于PARAM#1倍,该比率越大其财务风险在一定程度上越小.
---------------------------------------------------------------
0124--次新股选股
N(1,60,30)
BARSCOUNT(C)< N
次新股选股
上市时间在N个交易日(缺损值为30个交易日)的股票
上市天数小于PARAM#1天,选出近期上市的新股.
---------------------------------------------------------------
0125--上市时段选股
Y(1990,2000,1999)M1(1,12,4)M2(1,12,4)
COUNT(BARSCOUNT(C)=1 AND YEAR=Y AND MONTH>=M1 AND MONTH<=M2,0)
寻找Y年M2月到M1月上市的股票,即寻找一定时间
段上市的股票。如:寻找1999年4月份上市的股票,可输入参数
Y:1999
M1:4
M2:4
在PARAM#1年PARAM#2月至PARAM#3月上市的股票
---------------------------------------------------------------
0126--涨幅选股
N(0.01,0.1,0.03)
DYNAINFO(14)>=N
选择目前涨幅大于N的股票,这类股票有可能成为今天的强势股,特别是在开市有一段时间并且大盘呈现一路阴跌的情况下.
选择当前涨幅大于PARAM#1的股票
---------------------------------------------------------------
0127--委比选股
N(0.5,1,0.5)
DYNAINFO(15)>N
选择当前委比大于等于N的股票,委比越大则说明买盘越强劲,(但这也不是绝对的,有可能被人为操纵).
选择当前委比大于PARAM#1的股票
---------------------------------------------------------------
0128--委差选股
N(1,9999,200)
DYNAINFO(16)>N
选择(委买量-委卖量)的差为正数并且大于N手的股票,差值越大买盘越强.
选择当前(委买量-委卖量)大于PARAM#1手的股票(参数取正值)
---------------------------------------------------------------
0129--内外盘选股(上涨)
DYNAINFO(22)>DYNAINFO(23) AND C>REF(C,1)
内盘大于外盘,股票仍上涨。这类股票存在一定异动,有庄家活动的可能.
内盘大于外盘,股票仍上涨。
---------------------------------------------------------------
0130--内外盘选股(下跌)
DYNAINFO(23)>DYNAINFO(22) AND C< REF(C,1)
外盘大于内盘,股价仍下跌.这类股票存在一定异动,有庄家活动的可能.
外盘大于内盘,股价仍下跌.
---------------------------------------------------------------
0131--阶段涨幅选股
D1(900101,1331231,990504)D2(900101,1331231,990802)P(-90,1000,20)
A:=HHV(IF(DATE=D1,C,0),0);
B:=HHV(IF(DATE=D2,C,0),0);
B/A>=(1+P/100)
选择某一阶段中一定涨幅的股票
PARAM#1日——PARAM#2日涨幅大于PARAM#3%的股票
---------------------------------------------------------------
0132--即时量比选股
N(1,100,1)
DYNAINFO(17)>=N
选择量比大于N的股票
当前的量比大于PARAM#1的股票
---------------------------------------------------------------
0133--大手笔成交选股(买)
N(1,10000,200)
BUYVOL>=N
主动性买盘成交量大于N的股票
(只能在分笔成交周期中使用)
当前主动性买盘的单比成交大于PARAM#1的股票
---------------------------------------------------------------
N(1,10000,200)
SELLVOL>N
当前主动性卖盘的单比成交量大于PARAM#1的股票
---------------------------------------------------------------
0135--买盘大手笔挂单
N(1,10000,1000)
(BIDVOL(1)+BIDVOL(2)+BIDVOL(3))>=N
选择买盘中挂有大手笔的股票
(仅用于分笔成交周期中)
当前买盘中的三笔挂单之和大于等于PARAM#1的股票
---------------------------------------------------------------
0136--卖盘大手笔挂单
N(1,10000,1000)
(ASKVOL(1)+ASKVOL(2)+ASKVOL(3))>=N
选择卖盘中挂有大手笔的股票
(仅用于分笔成交周期中)
当前卖盘中三笔挂单之和大于等于PARAM#1的股票
---------------------------------------------------------------
0137--换手率选股
N(0.01,100,5)
DYNAINFO(37)>=N/100
单日换手率大于N的股票
当前换手率大于等于PARAM#1%的股票
---------------------------------------------------------------
0138--涨速选股
N(0.01,100,1)
DYNAINFO(24)>=N/100
选择当前涨速大于N的股票
当前五分钟涨速大于等于PARAM#1%的股票
---------------------------------------------------------------
0139--振幅选股
N(0.1,100,5)
DYNAINFO(13)>=N/100
选择今日振幅在N的股票
当前振幅大于等于PARAM#1%的股票
---------------------------------------------------------------
0140--股价-均价选股
DYNAINFO(7)>DYNAINFO(11)
分时图中目前股价高于均价的股票
---------------------------------------------------------------
0141--N日内创新高
N(2,10,3)
HHV(HIGH,N)=HHV(HIGH,0) AND BARSCOUNT(C)>=N
选择PARAM#1日内创出历史新高的股票
---------------------------------------------------------------
0142--N日内创新低
N(1,5,3)
LLV(L,3)=LLV(L,0) AND BARSCOUNT(C)>=N
选择PARAM#1日内创出历史新低的股票
---------------------------------------------------------------
0143--M日内阴线多于阳线
M(3,300,30)N(50,100,60)
COUNT(OPEN>CLOSE,M)/M >= N/100
PARAM#1日内阴线数量超过PARAM#2%
---------------------------------------------------------------
0144--M日内阳线多于阴线
M(3,300,30)N(50,100,60)
COUNT(OPEN< CLOSE,M)/M >= N/100
PARAM#1日内阳线数量超过PARAM#2%
---------------------------------------------------------------
0145--N日内上涨多于下跌
N(1,300,120)M(50,100,60)
COUNT(C>REF(C,1),M)/M >= N/100
PARAM#1日内上涨(收盘价高于昨收)的天数超过PARAM#2%
---------------------------------------------------------------
0146--N日内下跌多于上涨
N(1,300,120)M(50,100,60)
COUNT(C< REF(C,1),N)/N >= M/100
PARAM#1日内下跌(收盘价低于昨收)的天数超过PARAM#2%
---------------------------------------------------------------
0147--连续N天收阳线
N(3,10,7)
UP:=CLOSE>OPEN;
COUNT(UP,N)=N
连续N天收阳线
选择连续PARAM#1个交易日收阳线的股票
---------------------------------------------------------------
0148--连续N天收阴线
N(3,10,5)
DOWN:=OPEN>CLOSE;
COUNT(DOWN,N)=N
连续N日收阴线
选择连续PARAM#1个交易日收阴线的股票
---------------------------------------------------------------
0149--连续N天上涨
N(3,20,5)
COUNT(C>REF(C,1),N)=N
选择连续N个交易日都上涨的股票
选择连续PARAM#1个交易日上涨的股票
---------------------------------------------------------------
0150--连续N日下跌
N(3,20,5)
COUNT(C< REF(C,1),N)=N
N日内收盘价为连续下跌的股票
选择连续PARAM#1日都下跌的股票
---------------------------------------------------------------
0151--首次创新高
BARSSINCE(C>HHV(IF(BARSCOUNT(C)=1,HIGH,0),0))+1=1
选择上市后首次创出新高的的股票
---------------------------------------------------------------
0152--创历史新高
HHV(CLOSE,0)=CLOSE
收盘价创历史新高
---------------------------------------------------------------
0153--创历史新低
LLV(CLOSE,0) = CLOSE
收盘价价创历史新低
---------------------------------------------------------------
0154--单日放量
N(0.1,100,15)
A:=VOL/CAPITAL>=(N/100);
A AND (NOT(REF(A,1)))
单日换手率大于N%
单日换手率大于PARAM#1%
---------------------------------------------------------------
0155--阶段缩量
N(1,100,5)N1(1,100,10)
SUM(VOL,N1)/CAPITAL<=(N/100)
N1日内换手率小于百分之N
PARAM#2个周期的阶段换手率小于PARAM#1%
---------------------------------------------------------------
0156--阶段放量
N(1,100,10)N1(1,100,5)
SUM(VOL,N1)/CAPITAL>=(N/100)
N1日内换手率大于百分之N
PARAM#2个周期的阶段换手率小于PARAM#1%
---------------------------------------------------------------
0157--持续放量
M(1,100,3)
B:=VOL>REF(VOL,1);
COUNT(B,M)=M
成交量连续M日放大
今日成交量大于昨日成交量,这种情况连续PARAM#1天出现.
---------------------------------------------------------------
0158--持续缩量
M(1,100,3)
B:=VOL< REF(VOL,1);
COUNT(B,M)=M
成交量连续M日缩小
今日成交量小于昨日成交量,这种情况连续PARAM#1天出现.
---------------------------------------------------------------
0159--间隔放量
N(20,60,30)N1(0.1,100,4)N2(1,100,2)N3(1,100,3)
A:=MA(VOL,5);
BARSCOUNT(C)>=N AND HHV(A,N)< N1*LLV(A,N)
AND COUNT(VOL>N2*A,N)>N3
成交量分布比较均匀,偶尔有所放大,但马上又缩小.如果发生在底部区域,且盘整时间较长,则很有可能是庄家的吸货行为.
PARAM#1日内五日均量的最大值小于最小值的PARAM#2倍,
成交量大于等于五日均量的PARAM#3倍的情况发生的次数多于PARAM#4次
即:
成交量分布比较均匀,偶尔有所放大,但马上又缩小.如果发生在底部区域,且盘整时间较长,则很有可能是庄家的吸货行为.
---------------------------------------------------------------
0160--放量上攻
N(0.1,10,1)N1(1,10,3)N2(1,1000,20)N3(1,100,5)
UP:=REF(C,1)< C ;
A:= (C-REF(C,1))/REF(C,1)>=(N/100) ;
SUM(VOL,N1)/CAPITAL>=(N2/100) AND COUNT(VOL>REF(VOL,1),N3)=N3 AND COUNT(A,N3)=N3
为庄家的拉升行为,可谨慎介入.
成交量连续PARAM#4日放大,且每日股价涨幅均大于PARAM#1%;
PARAM#2日内换手率大于PARAM#3%
0161--温和放量上攻
N(2,10,3)N1(1,40,10)
UP:=MAX(C,OPEN)>REF(MAX(C,OPEN),1);
A:=VOL>REF(VOL,1);
COUNT(IF((UP AND A),1,0),N)=N AND C>OPEN
AND (C-REF(MAX(C,OPEN),1))/REF(MAX(O,C),1)<=(3/100)
AND VOL/CAPITAL<=(N1/100)
连续PARAM#1个周期放大并保持上涨势头
当日换手率小于 PARAM#2%
---------------------------------------------------------------
0162--突然放量
N(1,300,10)M(1,40,3)
VOL>REF(HHV(VOL,N),1)*M
成交量较前N周期的最大成交量增大M倍
当前成交量高于PARAM#1个周期中最大成交量的PARAM#2倍
---------------------------------------------------------------
0163--平台整理
N(1,100,30)N1(1,100,11)
COUNT(CLOSE,0)>N AND (HHV(CLOSE,N)-LLV(CLOSE,N))/LLV(CLOSE,N)<=(N1/100)
N天振动幅度在M%的股票
平台整理PARAM#1个周期
平台整理幅度PARAM#2%
---------------------------------------------------------------
0164--尾盘打压
N(0,20,2)
HOUR>14 AND MINUTE>56 AND CLOSE/REF(CLOSE,2) <= 1-N/100
本指标仅适用于1分钟线
14:56以后2分钟跌幅超过PARAM#1%
---------------------------------------------------------------
0165--尾盘拉升
N(0,20,2)
HOUR>14 AND MINUTE>56 AND CLOSE/REF(CLOSE,2) >= 1+N/100
14:56以后2分钟涨幅超过PARAM#1%
---------------------------------------------------------------
0166--盘中逆势走强股
N(930,1500,930)M(930,1500,1030)
A:=HHV(IF(TIME=N,INDEXC,0),0);
B:=HHV(IF(TIME=M,INDEXC,0),0);
D:=HHV(IF(TIME=N,C,0),0);
E:=HHV(IF(TIME=M,C,0),0);
E/D>B/A
选择当天某一时段中走势强于大盘的股票
时间PARAM#1点——PARAM#2点之间涨幅高于大盘涨幅的股票
---------------------------------------------------------------
0167--突破长期盘整
N(10,60,30)N1(5,50,30)
REF(((HHV(H,N)-LLV(L,N))/LLV(L,N)),1)<=(N1/100)
AND C>=REF(HHV(H,N),1) AND BARSCOUNT(C)>N
前PARAM#1日在上下PARAM#2%的幅度内整理,今日突破。
---------------------------------------------------------------
0168--阶段强势股
N(700101,1341231,990519)N1(700101,1341231,990913)
A:=SUM(IF(DATE-N=0,INDEXC,0),0);
B:=SUM(IF(DATE-N1=0,INDEXC,0),0);
E:=SUM(IF(DATE-N=0,C,0),0);
F:=SUM(IF(DATE-N1=0,C,0),0);
((F-E)/E)>((B-A)/A)
选择某一阶段内走势强于大盘的股票.
PARAM#1日--PARAM#2日之间涨幅高于大盘的股票
---------------------------------------------------------------
0169--阶段弱势股
N(700101,1341231,990519)N1(700101,1341231,990913)
A:=SUM(IF(DATE=N,INDEXC,0),0);
B:=SUM(IF(DATE=N1,INDEXC,0),0);
E:=SUM(IF(DATE=N,C,0),0);
F:=SUM(IF(DATE=N1,C,0),0);
((F-E)/E)<((B-A)/A)
PARAM#1日--PARAM#2日之间涨幅小于大盘的股票
---------------------------------------------------------------
0170--大盘同步选股
N(1,100,10)M(1,100,50)
COUNT((C>O AND INDEXC>INDEXO) OR (C< O AND INDEXC< INDEXO),N)/N > M/100
PARAM#1周期中与大盘走势相同(同收阴线或同收阳线)的比例超过PARAM#2%
---------------------------------------------------------------
0171--N日内强势股
N(1,300,20)M(1,100,3)
A:=(C-REF(O,N))/REF(O,N);
B:=(INDEXC-REF(INDEXO,N))/REF(INDEXO,N);
A>B AND A/B>=M
PARAM#1日涨幅大于等于同期大盘涨幅的PARAM#2倍
0101--含职工股
FINANCE(8)>0
---------------------------------------------------------------
0172--均线多头排列
N(1,100,5)N1(1,1000,10)N2(1,1000,20)N3(1,1000,30)
MA(CLOSE,N)>MA(CLOSE,N1) AND MA(CLOSE,N1)>MA(CLOSE,N2)
AND MA(CLOSE,N2)>MA(CLOSE,N3) AND REF(MA(CLOSE,N),1)>REF(MA(CLOSE,N1),1) AND
REF(MA(CLOSE,N1),1)>REF(MA(CLOSE,N2),1) AND REF(MA(CLOSE,N2),1)>REF(MA(CLOSE,N3),1)
AND REF(MA(CLOSE,N),2)>REF(MA(CLOSE,N1),2) AND REF(MA(CLOSE,N1),2)>REF(MA(CLOSE,N2),2)
AND REF(MA(CLOSE,N2),2)>REF(MA(CLOSE,N3),2)
均线系统呈多头排列,多方占据一定优势.
PARAM#1,PARAM#2,PARAM#3,PARAM#4日均线呈多头排列
---------------------------------------------------------------
0173--均线空头排列
N(1,1000,5)N1(1,1000,10)N2(1,1000,20)N3(1,1000,30)
MA(CLOSE,N) < MA(CLOSE,N1) AND
MA(CLOSE,N1) < MA(CLOSE,N2) AND
MA(CLOSE,N2) < MA(CLOSE,N3) AND
REF(MA(CLOSE,N),1)< REF(MA(CLOSE,N1),1) AND
REF(MA(CLOSE,N1),1)< REF(MA(CLOSE,N2),1) AND REF(MA(CLOSE,N2),1)< REF(MA(CLOSE,N3),1)
AND REF(MA(CLOSE,N),2)< REF(MA(CLOSE,N1),2) AND REF(MA(CLOSE,N1),2)< REF(MA(CLOSE,N2),2)
AND REF(MA(CLOSE,N2),2)< REF(MA(CLOSE,N3),2)
均线系统呈空头排列,这时的形势不利与多方迅速组织起强有力的反攻.
PARAM#1,PARAM#2,PARAM#3,PARAM#4日均线呈空头排列
---------------------------------------------------------------
0174--强势整理
N(1,20,2)M(1,10,5)
A1:=ABS((C-REF(C,1))/REF(C,1))<=0.05
AND ABS((O-REF(C,1))/REF(C,1))<=0.05
AND C>=REF(C,1) AND L<=REF(H,1);
A2:=REF(C,1)>REF(O,1) AND (REF(C,1)/REF(O,1))>=1+N/100
AND REF(C,1)/REF(C,2)>=1.04 AND REF(C,1)>REF(C,2)
AND REF(C,1)>REF(C,3) AND REF(C,1)>REF(C,4)
AND REF(C,1)>REF(C,5) AND REF(C,1)>REF(C,6)
AND REF(C,1)>REF(C,7) AND REF(C,1)>REF(C,8)
AND REF(C,1)>REF(C,9);
A3:=IF(A1 AND A2,3,0);
A4:=BARSLAST(A1 AND A2);
A8:=REF(C,A4+1);
A5:=ABS((C-REF(C,1))/REF(C,1))<=0.03
AND ABS((O-REF(C,1))/REF(C,1))<=0.03;
A6:=(C>=A8 AND C/A8<=(1+M/100));
A4=COUNT(A5 AND A6,A4)
强势整理:一根实体超过N%的长阳,后面跟若干个振幅不超过M%的K线
强势整理:一根实体超过PARAM#1%的长阳,后面跟若干个振幅不超过PARAM#2%的K线
---------------------------------------------------------------
0175--高开大阴线
M(1,10,4)N(1,20,5)
OPEN>CLOSE AND OPEN/REF(C,1) >= 1+M/100 AND CLOSE/OPEN<=1-N/100
收盘为高开大阴线
跳空高开PARAM#1%,当日股价较开盘价跌幅大于PARAM#2
---------------------------------------------------------------
0176--低开大阳线
M(1,10,4)N(1,20,7)
OPEN< CLOSE AND OPEN/REF(C,1) <= 1-M/100 AND CLOSE/OPEN>=1+N/100
收盘为低开大阳线
跳空低开PARAM#1%,当日股价较开盘价涨幅大于PARAM#2
---------------------------------------------------------------
0177--跳空缺口选股
HIGH< REF(LOW,1) OR
LOW>REF(HIGH,1)
---------------------------------------------------------------
0178--大买单提取
N(1,1000,200)
SUM(IF(BUYVOL>=N,VOL,0),0)
提取今日主动性买盘成交量中的大手笔成交,并对其求和.
该指标的值越大,则说明当日多方的力量越强大.
统计主动性买盘成交量大于PARAM#1手的成交量总和
---------------------------------------------------------------
0179--今日大单笔数
N(1,10000,200)
COUNT(VOL>N,0)
统计今日大于N手的买卖单的笔数,笔数越多,则说明成交越活跃.
统计今日成交量大于PARAM#1手的数量
---------------------------------------------------------------
0180--大盘同步指标
N(1,1000,7)
COUNT((C>O AND INDEXC>INDEXO) OR (C< O AND INDEXC< INDEXO),N)/N
统计N日中和大盘保持一致,同收阳线或同收阴线的日数所占的比例,
用法:比例越接近1,该股和大盘走势越一致。
N(PARAM#1)天中与大盘走势保持一致,同收阳线和阴线的天数/N天
---------------------------------------------------------------
0181--大手笔之差
N(1,1000,100)N1(1,1000,100)
SUM(IF(BUYVOL>=N,VOL,0),0)-SUM(IF(SELLVOL>=N1,VOL,0),0)
求当日大手笔的买单与大手笔的卖单之差,该差值为正则说明多方占据优势,形势有利于多方,可看涨.该值越大多方优势月明显.
大于等于PARAM#1手的主动性买盘之和-
大于等于PARAM#2手的主动性卖单之和
---------------------------------------------------------------
0182--活跃股指标
MA(VOL,3)/CAPITAL
---------------------------------------------------------------
0183--阶段强势指标
N(1,300,20)
A:=COUNT(C>O AND INDEXC< INDEXO,N);
B:=COUNT(INDEXC< INDEXO,N);
D:A/B
A:N天中大盘收阴线个股收阳线的天数;
B;N天中大盘收阴线的天数;
D:A/B
D值越大则说明股票在这一阶段中走势越强.
PARAM#1天中大盘收阴线个股收阳线的天数/大盘收阴线的天数
---------------------------------------------------------------
0184--内外盘比率
SUM(BUYVOL,0)/SUM(SELLVOL,0)
统计今日的主动性买盘之和和主动性卖盘之和,并求前者与后者的比值.该比值大于1则说明多方占据一定优势,比值越大优势越明显,该股可谨慎看涨.
---------------------------------------------------------------
0185--内外盘之差
SUM(BUYVOL,0)-SUM(SELLVOL,0)
统计今日的主动性买盘之和和主动性卖盘之和,并求前者与后者的差值.该差值大于0则说明多方占据一定优势,差值越大优势越明显,该股可谨慎看涨.
---------------------------------------------------------------
0186--平均每笔成交
SUM(VOL,0)/BARSCOUNT(C)
用当日成交量除以当日成交笔数,求得当日平均每一笔成交的成交手数,该值越大,成交越活跃,庄家的活动越明显,
特别是当该比值前期一直很小,近期明显放大,庄家活动的迹象更加明显.如果出现在底部,则有可能是庄家在吸货.
---------------------------------------------------------------
0187--QHLSR阻力指标
QHL:=(C-REF(C,1))-(VOL-REF(VOL,1))*(REF(H,1)-REF(L,1))/REF(VOL,1);
A:=SUM(IF(QHL>0,QHL,0),5);
E:=SUM(IF(QHL>0,QHL,0),10);
B:=ABS(SUM(IF(QHL<0,QHL,0),5));
F:=ABS(SUM(IF(QHL<0,QHL,0),10));
D:=A/(A+B);
G:=E/(E+F);
QHL5: IF(SUM(IF(QHL>0,1,0),5)=5,1,IF(SUM(IF(QHL<0,1,0),5)=5,0,D)) ;
QHL10:G
---------------------------------------------------------------
0188--盘中强势指标
TIM:=IF(HOUR>12, (HOUR-13)*60+MINUTE+120,(HOUR-9)*60+MINUTE-30);
ZLB:= SUM(VOL,0)*240/TIM/DYNAINFO(38);
ZDL:ZLB*(SUM(BUYVOL,0)-SUM(SELLVOL,0))/(SUM(BUYVOL,0)+SUM(SELLVOL,0))*100
本指标只能用于分笔成交分析
---------------------------------------------------------------
0189--大卖单提取
N(1,1000,100)
SUM(IF(SELLVOL>=N,VOL,0),0)
提取今日主动性卖盘成交量中的大手笔成交,并对其求和.
该指标的值越大,则说明当日空方的力量越强大.
统计主动性卖盘成交量大于PARAM#1手的成交量总和
---------------------------------------------------------------
0190--阶段总成交额
N(700101,1341231,990901)N1(700101,1341231,990917)
SUM(IF(DATE>=N AND DATE<=N1,AMOUNT,0),0)
统计一段时间的总成交额
参数N为统计时间长度
PARAM#1--PARAM#2的成交额(前面日期必须小于等于后面日期)
---------------------------------------------------------------
0191--筑底指标
N1(5,250,125)N2(1,20,5)N3(5,60,20)
A:=COUNT(C>=REF(C,1),N1)/COUNT(C< REF(C,1),N1);
B:MA(A,N2);
D:MA(A,N3)
B值小于0.6时为很好的买点,股票在此筑底的可能性很大,可耐心持有.
统计PARAM#1日中收阳及收阴的比率为AA的PARAM#2日移动平均A的PARAM#3日移动平均
---------------------------------------------------------------
0192--阶段换手率
N(700101,1341231,990913)N1(700101,1341231,990917)
SUM(IF(DATE>=N AND DATE<=N1,VOL,0),0)/CAPITAL
统计一段时间的总换手率
参数N表示统计时间长度
PARAM#1--PARAM#2的换手率(前面日期必须小于等于后面日期)
---------------------------------------------------------------
0193--阶段涨幅
N(700101,1341234,990518)N1(700101,1341231,990917)
A:=HHV(IF(DATE=N1,CLOSE,0),0);
B:=HHV(IF(DATE=N,CLOSE,0),0);
UPR:(A/B-1)*100
统计一段时间来的股价涨幅
参数N为统计时间长度
PARAM#1--PARAM#2的涨幅(前面日期必须小于等于后面日期)
---------------------------------------------------------------
0194--阶段总成交量
N(700101,1341231,990601)N1(700101,1341231,990917)
SUM(IF(DATE>=N AND DATE<=N1,VOL,0),0)
统计一段时间的总成交量
参数N为统计时间长度
PARAM#1--PARAM#2的成交量(前面日期必须小于等于后面日期)
---------------------------------------------------------------
0195--外盘笔数、内盘笔数、总成笔数
外盘笔数:COUNT(BUYVOL,0);
内盘笔数:COUNT(SELLVOL,0);
总成笔数:BARSCOUNT(C);
---------------------------------------------------------------
0196--每笔手数、外内比率
每笔手数:SUM(VOL,0)/BARSCOUNT(C);
外内比率:SUM(BUYVOL,0)/SUM(SELLVOL,0);
---------------------------------------------------------------
0197--外内手差、大手之差
外内手差:SUM(BUYVOL,0)-SUM(SELLVOL,0);
大手之差:SUM(IF(BUYVOL>=N,VOL,0),0)-SUM(IF(SELLVOL>=N,VOL,0),0);{N:1,10000,100}
---------------------------------------------------------------
0198--外大手数、内大手数
外大手数:SUM(IF(BUYVOL>=N,VOL,0),0);{N:1,10000,100}
内大手数:SUM(IF(SELLVOL>=N,VOL,0),0);{N:1,10000,100}
---------------------------------------------------------------
0199--外内笔差、外大笔数
外内笔差:COUNT(BUYVOL,0)-COUNT(SELLVOL,0);
外大笔数:COUNT(BUYVOL>=N,0);{N:1,10000,100}
---------------------------------------------------------------
0200--内大笔数、大手笔差
内大笔数:COUNT(SELLVOL>=N,0);{N:1,10000,100}
大手笔差:COUNT(BUYVOL>=N,0)-COUNT(SELLVOL>=N,0);{N:1,10000,100}
公式技巧(0201~0235)
-----------------------------------------------------------------
0201--早晨之星
BACKSET(
REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND
REF(OPEN,1) < REF(CLOSE,2) AND
ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.03 AND
CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2),
3)
-----------------------------------------------------------------
0202--黄昏之星
BACKSET(
REF(CLOSE,2)/REF(OPEN,2) > 1.03 AND
REF(OPEN,1) > REF(CLOSE,2) AND
ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.02 AND
CLOSE/OPEN<0.97 AND CLOSE< REF(CLOSE,2),
3)
-----------------------------------------------------------------
0203--十字星
CLOSE=OPEN AND HIGH<>LOW
-----------------------------------------------------------------
0204--长十字
CLOSE=OPEN AND
HIGH/LOW > 1.03
-----------------------------------------------------------------
0205--垂死十字
CLOSE=OPEN AND
CLOSE=LOW AND
CLOSE<>HIGH
-----------------------------------------------------------------
0206--早晨十字星
BACKSET(
REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND
REF(OPEN,1) < REF(CLOSE,2) AND
REF(OPEN,1)=REF(CLOSE,1) AND
CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2),
3)
-----------------------------------------------------------------
0207--黄昏十字星
BACKSET(
REF(CLOSE,2)/REF(OPEN,2) > 1.05 AND
REF(OPEN,1) > REF(CLOSE,2) AND
REF(OPEN,1)=REF(CLOSE,1) AND
CLOSE/OPEN<0.95 AND CLOSE< REF(CLOSE,2),
3)
-----------------------------------------------------------------
0208--射击之星
MIN(OPEN,CLOSE)=LOW AND
HIGH-LOW > 3*(MAX(OPEN,CLOSE)-LOW) AND
CLOSE > MA(CLOSE,5)
-----------------------------------------------------------------
0209--倒转锤头
MIN(OPEN,CLOSE)=LOW AND
HIGH-LOW > 3*(MAX(OPEN,CLOSE)-LOW) AND
CLOSE < MA(CLOSE,5)
-----------------------------------------------------------------
0210--锤头
HIGH = MAX(OPEN,CLOSE) AND
HIGH-LOW > 3*(HIGH-MIN(OPEN,CLOSE)) AND
CLOSE < MA(CLOSE,5)
-----------------------------------------------------------------
0211--吊颈
HIGH = MAX(OPEN,CLOSE) AND
HIGH-LOW > 3*(HIGH-MIN(OPEN,CLOSE)) AND
CLOSE > MA(CLOSE,5)
-----------------------------------------------------------------
0212--穿头破脚
BACKSET(
(REF(CLOSE,1)/REF(OPEN,1)>1.03 AND
CLOSE/OPEN<0.96 AND
CLOSE< REF(OPEN,1) AND OPEN>REF(CLOSE,1))
OR
(REF(CLOSE,1)/REF(OPEN,1)<0.97 AND
CLOSE/OPEN>1.04 AND
CLOSE>REF(OPEN,1) AND OPEN< REF(CLOSE,1)),
2)
-----------------------------------------------------------------
0213--乌云盖顶
BACKSET(
REF(CLOSE,1)/REF(OPEN,1)>1.03 AND
CLOSE/OPEN<0.97 AND
OPEN>REF(CLOSE,1) AND
CLOSE< REF(CLOSE,1),
3)
-----------------------------------------------------------------
0214--曙光初现
BACKSET(
REF(CLOSE,1)/REF(OPEN,1)<0.97 AND
CLOSE/OPEN>1.03 AND
OPEN< REF(CLOSE,1) AND
CLOSE>REF(CLOSE,1),
2)
-----------------------------------------------------------------
0215--身怀六甲
BACKSET(
ABS(REF(CLOSE,1)-REF(OPEN,1))/REF(CLOSE,1) > 0.04 AND
ABS(CLOSE-OPEN)/CLOSE<0.005 AND
MAX(CLOSE,OPEN) < MAX(REF(CLOSE,1),REF(OPEN,1)) AND
MIN(CLOSE,OPEN) > MIN(REF(CLOSE,1),REF(OPEN,1)),
2)
-----------------------------------------------------------------
0216--十字胎
BACKSET(
ABS(REF(CLOSE,1)-REF(OPEN,1))/REF(CLOSE,1) > 0.04 AND
CLOSE=OPEN AND
CLOSE < MAX(REF(CLOSE,1),REF(OPEN,1)) AND
CLOSE > MIN(REF(CLOSE,1),REF(OPEN,1)),
2)
-----------------------------------------------------------------
0217--平顶
BACKSET(ABS(HIGH-REF(HIGH,1))/HIGH<0.001,2)
-----------------------------------------------------------------
0218--平底
BACKSET((ABS(LOW-REF(LOW,1))/LOW<0.001 AND
ABS(REF(LOW,1)-REF(LOW,2))/REF(LOW,1)<=0.001),2)
-----------------------------------------------------------------
0219--大阳烛
CLOSE/OPEN>1.05 AND
HIGH/LOW < CLOSE/OPEN+0.018
-----------------------------------------------------------------
0220--大阴烛
OPEN/CLOSE > 1.05 AND
HIGH/LOW < OPEN/CLOSE+0.018
-----------------------------------------------------------------
0221--好友反攻
BACKSET(
(REF(CLOSE,1)< REF(OPEN,1) AND
CLOSE>OPEN AND
ABS(CLOSE-REF(CLOSE,1))/CLOSE<0.002)
OR
(REF(CLOSE,1)>REF(OPEN,1) AND
CLOSE< OPEN AND
ABS(CLOSE-REF(CLOSE,1))/CLOSE<0.002),
2)
-----------------------------------------------------------------
0222--跳空缺口
BACKSET(
HIGH< REF(LOW,1) OR
LOW>REF(HIGH,1),
2)
-----------------------------------------------------------------
0223--三个白武士
BACKSET(
REF(CLOSE,2)>REF(OPEN,2) AND
REF(CLOSE,1)>REF(OPEN,1) AND
CLOSE>OPEN AND
REF(CLOSE,1)>REF(CLOSE,2) AND
CLOSE>REF(CLOSE,1),
3)
-----------------------------------------------------------------
0224--三只乌鸦
BACKSET(
REF(CLOSE,2)< REF(OPEN,2) AND
REF(CLOSE,1)< REF(OPEN,1) AND
CLOSE< OPEN AND
REF(CLOSE,1)< REF(CLOSE,2) AND
CLOSE< REF(CLOSE,1),
3)
-----------------------------------------------------------------
0225--双飞乌鸦
BACKSET(
REF(CLOSE,1)< REF(OPEN,1) AND
CLOSE< OPEN AND
CLOSE/OPEN<0.98,
1)
-----------------------------------------------------------------
0226--上升三部曲
BACKSET(
REF(CLOSE,4)/REF(OPEN,4)>1.03 AND
REF(CLOSE,3)< REF(OPEN,3) AND
REF(CLOSE,2)< REF(OPEN,2) AND
REF(CLOSE,1)< REF(OPEN,1) AND
REF(LOW,4)< REF(LOW,3) AND
REF(LOW,4)< REF(LOW,2) AND
REF(LOW,4)< REF(LOW,1) AND
REF(HIGH,4)>REF(HIGH,3) AND
REF(HIGH,4)>REF(HIGH,2) AND
REF(HIGH,4)>REF(HIGH,1) AND
CLOSE/OPEN>1.03 AND
CLOSE>REF(CLOSE,4),
5)
-----------------------------------------------------------------
0227--下跌三部曲
BACKSET(
REF(CLOSE,4)/REF(OPEN,4)<0.97 AND
REF(CLOSE,3)>REF(OPEN,3) AND
REF(CLOSE,2)>REF(OPEN,2) AND
REF(CLOSE,1)>REF(OPEN,1) AND
REF(LOW,4)< REF(LOW,3) AND
REF(LOW,4)< REF(LOW,2) AND
REF(LOW,4)< REF(LOW,1) AND
REF(HIGH,4)>REF(HIGH,3) AND
REF(HIGH,4)>REF(HIGH,2) AND
REF(HIGH,4)>REF(HIGH,1) AND
CLOSE/OPEN<0.97 AND
CLOSE< REF(CLOSE,4),
5)
-----------------------------------------------------------------
0228--长下影
(MIN(CLOSE,OPEN)-LOW)/(HIGH-LOW)>0.667
-----------------------------------------------------------------
0229--长上影
(HIGH-MAX(CLOSE,OPEN))/(HIGH-LOW)>0.667,COLORBLUE
-----------------------------------------------------------------
0230--分离
BACKSET(
OPEN=REF(OPEN,1) AND
(CLOSE-OPEN)*(REF(CLOSE,1)-REF(OPEN,1))<0,
2)
-----------------------------------------------------------------
0231--光头阳线
HIGH=CLOSE AND
HIGH<>LOW
-----------------------------------------------------------------
0232--光脚阴线
LOW=CLOSE AND
HIGH<>LOW
-----------------------------------------------------------------
0233--孕育线
N(1,100,2)N1(1,100,2)N2(1,100,2)N3(1,100,1)
BACKSET(REF(CLOSE,2)>REF(OPEN,2) AND
(REF(CLOSE,2)-REF(OPEN,2))/REF(OPEN,2)>=N/100 AND
REF(OPEN,1)>=REF(CLOSE,1) AND
(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<=N1/100 AND
REF(OPEN,1)<=REF(CLOSE,2) AND REF(CLOSE,1)>=REF(OPEN,2) AND
C>=OPEN AND
(CLOSE-OPEN)/OPEN>=N2/100
AND CLOSE>=REF(OPEN,1) AND OPEN<=REF(CLOSE,1)
AND (MAX(CLOSE,REF(C,2))-MIN(CLOSE,REF(CLOSE,2)))/MIN(CLOSE,REF(CLOSE,2))<=N3/100
,3)
三根K线的组合,由两阳夹一阴组成,中间的一根阴线被两根阳线完全包围,呈孕育线形态
第一根阳线实体大于等于PARAM#1%;
第二根阴线实体小于等于PARAM#2%;
第三根阳线实体大于等于PARAM#3%;
两根阳线的收盘价相差不超过PARAM#4
-----------------------------------------------------------------
0234--如何编写筹码分布公式
这只是一个简单的示例,说明如何写筹码分布的公式代码。激活十字光标后有效。如果自己有更好的原理、想法,可在代码中自己实现,比如加入历史衰减等等。过去,这类公式需要借助于DLL来写,且计算好结果后,也不容易画出筹码分布,现在,有了飞狐的循环及DRAWSL()绘图函数,就很容易自己来实现了。以一个简单的按成交量平均分配为例,示例如下:
VARIABLE:PV[50]=0,PC[50]=0;
HH:=HHV(HIGH,0);
LL:=LLV(LOW,0);
FV:=VOL;
FH:=HIGH;
FL:=LOW;
P:=SYSPARAM(1);
DD:=(HH[P]-LL[P])/49;
FOR I=P DOWNTO 1 DO BEGIN
SH:=(FH-LL[P])/DD+1;
SL:=(FL-LL[P])/DD+1;
DJ:=FV/(SH-SL+1);
FOR J=SL TO SH DO PV[J]:=PV[J]+DJ;
END;
S:=0;
FOR I=1 TO 50 DO IF S < PV THEN S:=PV;
BL:=S/(SYSPARAM(3)-SYSPARAM(2))*2;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5),0,PV[1]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD,0,PV[2]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*02,0,PV[03]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*03,0,PV[04]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*04,0,PV[05]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*05,0,PV[06]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*06,0,PV[07]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*07,0,PV[08]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*08,0,PV[09]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*09,0,PV[10]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*10,0,PV[11]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*11,0,PV[12]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*12,0,PV[13]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*13,0,PV[14]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*14,0,PV[15]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*15,0,PV[16]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*16,0,PV[17]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*17,0,PV[18]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*18,0,PV[19]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*19,0,PV[20]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*20,0,PV[21]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*21,0,PV[22]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*22,0,PV[23]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*23,0,PV[24]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*24,0,PV[25]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*25,0,PV[26]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*26,0,PV[27]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*27,0,PV[28]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*28,0,PV[29]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*29,0,PV[30]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*30,0,PV[31]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*31,0,PV[32]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*32,0,PV[33]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*33,0,PV[34]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*34,0,PV[35]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*35,0,PV[36]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*36,0,PV[37]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*37,0,PV[38]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*38,0,PV[39]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*39,0,PV[40]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*40,0,PV[41]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*41,0,PV[42]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*42,0,PV[43]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*43,0,PV[44]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*44,0,PV[45]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*45,0,PV[46]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*46,0,PV[47]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*47,0,PV[48]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*48,0,PV[49]/BL+1,1),COLORGRAY;
DRAWSL(BARPOS=SYSPARAM(3),SYSPARAM(5)+DD*49,0,PV[50]/BL+1,1),COLORGRAY;
注:代码未全部显示,只能在工具箱中复制。
-----------------------------------------------------------------
0235--公式底部显示“开、高、低、收”
A:=BACKSET(ISLASTBAR,BARSLAST(CROSS(K,D))+1);
B:=A>REF(A,1);
D1:=BARSCOUNT(C);
G:=SYSPARAM(2)=D1;
P:=G>REF(G,1);
VERTLINE(B);
DRAWNUMBER(B,K,K,2);
DRAWTEXT(REF(P,40),0,'开:');
DRAWTEXT(REF(P,60),0,'高:');
DRAWTEXT(REF(P,80),0,'低:');
DRAWTEXT(REF(P,100),0,'收:');
DRAWNUMBER(REF(G,45),0,REFX(O,BARPOS-SYSPARAM(1)),2);
DRAWNUMBER(REF(G,65),0,REFX(H,BARPOS-SYSPARAM(1)),2);
DRAWNUMBER(REF(G,85),0,REFX(L,BARPOS-SYSPARAM(1)),2);
DRAWNUMBER(REF(G,105),0,REFX(C,BARPOS-SYSPARAM(1)),2);
原文链接:http://www.55188.com/viewthread.php?tid=3358685