文档库 最新最全的文档下载
当前位置:文档库 › 通达信函数详解

通达信函数详解

通达信函数详解(2011-02-24 14:45:57)
分类:选股指标

K线数据,可以只写开头第一个字母。

开盘价:OPEN;{O}

收盘价:CLOSE;{C}

最高价:HIGH;{H}

最低价:LOW;{L}

大盘K线数据,必须下载完整盘后数据。Drawkline——画K线,数据顺序——最高价、开盘价、最低价、收盘价。

DRAWKLINE(INDEXH,INDEXO,INDEXL,INDEXC);

{H、O、L、C}


上涨家数和下跌家数,第一组只在大盘窗口才有数据,第二组哪个窗口都有数据。

涨家1:ADVANCE;

跌家1:DECLINE;

涨家2:INDEXADV;

跌家2:INDEXDEC;


在一定周期内某项数据的最大值——hhv,在一定周期内某项数据的最小值——llv。

HH:HHV(H,10);

LL:LLV(L,10);

MA1:MA(C,5);

HHMA:HHV(MA1,10);

LLMA:LLV(MA1,10);


创新高或者创新低。

创新高:H=HHV(H,60);

创新低:L=LLV(L,60);



当前位置取得以前位置数据——ref,取得指定日期数据——refdate,注意日期的格式。

以前数据:REF(C,1);

{以前数据:REF(H,2);}

指定日期数据:REFDATE(C,1090508);

{1998年5月25日——980525、2011年12月8日——1111208}

成交量——vol,可写成V,单位是手。成交金额——amount,单位是元。Indexv——大盘成交量, indexa——大盘成交金额。Buyvol——外盘

, sellvol——内盘,只能取得与最后一根K线相对应的数据。

成交量:VOL;{V}

成交金额:=AMOUNT;

大盘成交量:=INDEXV;

大盘成交金额:=INDEXA;

外盘:BUYVOL;

内盘:SELLVOL;


涨幅、振幅、均价,成交量复权:工具——系统设置——设置1——勾选“分析图成交量复权”——按确定——再按确定——退出K线图——重

新进入K线图。

涨幅:=(C-REF(C,1))/REF(C,1)*100;

振幅:=(H-L)/L*100;

均价1:(H+L+O+C)/4;

均价2:AMOUNT/(V*100);


即时行情函数只取得与最后一根K线相对应的数据。

振幅1:DYNAINFO(13)*100;

振幅2:(H-L)/L*100;

finance(7)的单位是股,根据流通盘变化而变化。capital的单位是手,只取得最新流通盘。

流通盘1:FINANCE(7);

流通盘2:CAPITAL;

换手率,finance(7)写的换手率更合理。

换手率1:V*100/FINANCE(7)*100;

换手率2:V/CAPITAL*100;


FINANCE(42)——上市日期,date——日期,date加19六个0,一号的日为0, year——年份,month——月份,day——日,weekday——星期。

上市日期:FINANCE(42);

日期1:DATE;

日期2:DATE+19000000;

年:YEAR;

月:MONTH;

日:DAY;

日期3:YEAR*10000+MONTH*100+DAY;

星期:WEEKDAY;

Time——时间,hour——小时,MINUTE——分钟,只在日线以下周期有效。FROMOPEN——当前时刻距离开盘分钟数。

时间:TIME;

小时:HOUR;

分钟:MINUTE;

距开盘分钟数:FROMOPEN;

BARSCOUNT——某数据从第一个有效值到现在的周期数,TOTALBARSCOUNT——总周期

数,下载完整盘后数据、不连接行情使用。CURRBARSCOUNT

——当前K线到最后交易日周期数。

有效数据周期数:BARSCOUNT(C);

总周期数:TOTALBARSCOUNT;

到最后周期数:CURRBARSCOUNT;

Cross——是否发生交叉,两条指标线不一定全是变化的曲线。Barslast——上一次条件成立到当前的周期数,BARSSINCE——第一次条件成立

到当前的周期数,count——统计在一定周期内满足条件的周期数。

K1:KDJ.K;

D1:KDJ.D;

金叉:CROSS(K1,D1)*10;

死叉:CROSS(D1,K1)*-10;

{K1上穿60:CROSS(K1,60);

K1下穿20:CROSS(20,K1);}

上次到现周期数:BARSLAST(金叉);

首次到现周期数:BARSSINCE(金叉),NODRAW;

统计{N周期内满足条件}次数:COUNT(金叉=10,20);


Hhvbars——某数据在一定周期内的最大值到当前的周期数,llvbars——某数据在一定周期内的最小值到当前的周期数。

上一高点{到现在}周期:HHVBARS(H,20);

上一低点{到现在}周期:LLVBARS(L,20);

某数据是近多少周期内的最大值——TOPRANGE,某数据是近多少周期内的最小值——LOWRANGE。

多少周期的最大:TOPRANGE(H);

多少周期的最小:LOWRANGE(L);

BARSLASTCOUNT——统计连续满足条件的周期数,sumbars——某数据向前累加到指定值到当前的周期数。

统计{连续满足条件}周期数:BARSLASTCOUNT(C>REF(C,1));

加到指定值周期:SUMBARS(V,CAPITAL);

PERIOD——当前窗口的周期类型。

窗口周期类型:PERIOD;

在不同周期类型使用不同参数。

参数:=IF(PERIOD=5,20,IF(PERIOD=6,10,0));

MA1:MA(C,参数);

最基本的比较判断是用大于、小于、等于等等。某数据是否在某个范围之内——RANGE,某数据是否在某个范围——BETWEEN。

宽幅震荡:(H-L)/L*100>12;

是否在某个范围1:RANGE(C,8,10);{X>A AND A
是否在某个范围2:BETWEEN(C,10,13);{X>=A AND X<=B};

是否发生交叉——cross,LONGCROSS——是否维持一定周期后发生交叉。

上穿:CROSS(MA(C,5),MA(C,10));

{持续}一段时间后上穿:LONGCROSS(MA(C,5),MA(C,10),10)*2;

UPNDAY——某数据在一定周期内是否连涨,DOWNNDAY——某数据在一定周期内是否连跌,NDAY——是否在一定周期内前面的数据都大于后面的

数据,ISLASTBAR——当前周期是否是最后一个周期。

连涨:UPNDAY(C,5);

连跌:DOWNNDAY(C,5);

连大:NDAY(C,O,5);

是否最后周期:ISLASTBAR;

EXIST——是否在一定周期内存在符合某种条件的情况,EVERY——是否在一定周期内一直存在符合条件的情况,LAST——是否在某一段周期内

一直存在符合某种条件的情况,not——是否不符合条件。

存在:EXIST(C>REF(C,1)*1.099,10);

一直存在:EVERY(C>O,5);

持续存在:LAST(C>O,10,5);

并非:NOT(C>O);

If——是否符合条件,符合条件输出前面的数据,不符合条

件输出后面的数据, max——哪个更大输出哪个,min——哪个更小输出哪个。

条件:=CROSS(MA(C,5),MA(C,10));

如果:IF(条件,5,-5);

较大者:MAX(C,O);

较小者:MIN(C,O);


FILTER——过滤连续出现的信号。

J大于80:"KDJ.J">80;

过滤:FILTER(J大于80,10)*2;

Abs——取得数据的绝对值,sum——求的数据在一定周期内的总和。

涨幅:(C-REF(C,1))/REF(C,1)*100;

零轴:0;

绝对值:ABS(涨幅);

求和:SUM(涨幅,5);

Ma——简单移动平均值,ema——指数移动平均值,sma——加权移动平均值(前面参数大于后面参数),dma——动态移动平均值(参数小于1

),后面三个函数降低本周期的权重、减少波动性而使输出变得相对平滑稳定,同时也降低了灵敏度。

简单移动平均:MA(C,5);{(C0+C1+C2+…+C(N-1))/N}

指数移动平均:EMA(C,5);{Y=2*X/(N+1)+(N-1)/(N+1)*Y',Y'上一周期Y}

加权移动平均:SMA(C,5{N},1{M});{Y=(M*X+(N-M)*Y')/N, Y'上一周期Y,N必须大于M}

动态移动平均:DMA(C,0.5);{Y=N*X+(1-N)*Y',Y'上一周期Y,N必须小于1};

LINETHICK——粗细,color——颜色,stick——柱状线,CROSSDOT——小交叉线,CIRCLEDOT——小圆圈线,POINTDOT——小圆点线。

MA1:MA(C,5);

MA2:MA(C,20),LINETHICK3,COLORRED;

均线差值1:(MA1-MA2)*1,STICK;

均线差值2:(MA1-MA2)*3,CROSSDOT;

均线差值3:(MA1-MA2)*6,CIRCLEDOT;

均线差值4:(MA1-MA2)*9,POINTDOT;

LINESTICK——指标线加柱状线。

MA1:=MA(C,5);

MA2:=MA(C,10);

均线差值:MA1-MA2,LINESTICK;

COLORSTICK——彩色柱状线。

MA1:=MA(C,5);

MA2:=MA(C,10);

均线差值:MA1-MA2,COLORSTICK;

VOLSTICK——成交量柱状线。

MA1:=MA(C,5);

MA2:=MA(C,10);

均线差值:MA1-MA2,VOLSTICK;

DRAWTEXT——写文字(必须写在一对单引号内),DRAWICON——画图标。

MA1:MA(C,5);

MA2:MA(C,10);

金叉:=CROSS(MA1,MA2);

写文字:DRAWTEXT(金叉,MA1,'金叉');

画图标:DRAWICON(金叉,MA2,1);

STICKLINE——画柱线,0实心柱,-1虚线空心柱,1实线空心柱。后面的输出会遮挡住前面的输出。

MA5:MA(C,5);

画柱线1:STICKLINE(C>O,C,O,2,0);

画柱线2:STICKLINE(C>O,H,L,0,0),COLORBLUE;

画柱线3:STICKLINE(C
画柱线4:STICKLINE(C
MA10:MA(C,10),COLORGREEN;

DRAWLINE——绘制直线段,0不延长,1向右延长。PLOYLINE——绘制折线。

画直线:DRAWLINE(L=LLV(L,10),L,H=HHV(H,10),H,0);

画折线:PLOYLINE(H=HHV(H,30),H);

均线变色,DRAWNULL——返回无效值。nodraw——只输出数值、不输出线条,不影响公式坐标。LINETHICK0——只输出数值、不输出线条,在

其它软件中不影响公式坐标,在通达信中影响公式坐标。

MA1:MA(C,5);

MA2:MA(C,10);

变色:IF(MA1>REF(MA1,1),MA1,DRAWNULL),LINETHICK2,COLORRED;

成交量:V,NODRAW;

MA1:MA(C,5);

MA2:MA(C,10);


变色:IF(MA1>MA2,MA1,DRAWNULL),LINETHICK2,COLORRED;

成交量:V,LINETHICK0;

Winner——获利盘,cost——成本分布情况。

获利盘:WINNER(C)*100;

成本分布:COST(80);

Zig——之字转向,1最高价、2最低价、3收盘价。PEAK——波峰价格,1最高价、2最低价、3收盘价。TROUGH——波谷价格,1最高价、2最低价

、3收盘价。

之字转向:ZIG(3,10);

波峰:PEAK(3,10,1);

波谷:TROUGH(3,10,1);

波峰到现在的周期数——PEAKBARS,波谷到现在的周期数——TROUGHBARS。

波峰到现在周期:PEAKBARS(3,10,1);

波谷到现在周期:TROUGHBARS(3,10,1);

BACKSET——回设,马后炮。

MA10:MA(C,10);

回设:=BACKSET(C/REF(C,1)>1.09,2);

A:=IF(REF(回设,1)=0 AND 回设=1,1,0);

DRAWICON(A,L*0.98,1);

跨周期引用的公式也具有未来性质。

周J:"KDJ.J#WEEK";

周D:"KDJ.D#WEEK";

金叉:CROSS(周J,周D)*30;

还有一种作弊手法——将公式信号限制在有行情的时段发出。

另外一种作弊:O
建议暂时关闭本教程,把讲义中这一节的内容挨个复制到你自己的软件中,按照这一节开始时所讲的函数学习方法复习一遍。

要将自己的思路用公式去表达出来,首先是确定需要哪些数据,然后观察这些数据之间的关系,再按语句规则的要求用函数去定义观察到的关

系。

{K线形态}

阴线:C
阳线:C>O;


上涨:C>REF(C,1);

下跌:C
平盘:C=REF(C,1);


大阳线:C/REF(C,1)>1.05;

大阴线:C/REF(C,1)<0.95;


高开:O>REF(C,1);

低开:O

高开高走:O>REF(C,1) AND C>O;

高开低走:O>REF(C,1) AND C

低开低走:O
低开高走:OO;


上跳空:L>REF(H,1);

下跳空:H

长上影:H/MAX(O,C)>1.03;

长下影:MIN(O,C)/L>1.03;


十字星:MAX(O,C)/MIN(O,C)<1.02 AND H/MAX(O,C)>1.01 AND MIN(O,C)/L>1.01;

正T字:O=C AND C=H AND L
倒T字:O=C AND C=L AND H>L;

一字涨停:O=C AND C=H AND L=H AND C>REF(C,1);

一字跌停:O=C AND C=L AND L=H AND C
横盘:HHV(H,20)/LLV(L,20)<1.15;


均线状况——金叉和死叉。

MA1:MA(C,5);

MA2:MA(C,10);

金叉:CROSS(MA1,MA2);

死叉:CROSS(MA2,MA1);


均线上拐、下拐、将死未死。

MA1:MA(C,5);

MA2:MA(C,10);

上拐:=REF(MA1,1)REF(MA1,1);

下拐:=REF(MA1,1)>REF(MA1,2) AND MA1
将死未死:=COUNT(MA1>MA2,5)=5 AND 上拐;

DRAWICON(上拐,MA1*0.98,1);

DRAWICON(下拐,MA1*1.01,2);

DRAWICON(将死未死,MA1*0.96,11);


多头排列、空头排列。

MA1:MA(C,5);

MA2:MA(C,10);

MA3:MA(C,20);

多头排列:=MA1>MA2 AND MA2>MA3;

空头排列:=MA1
STICKLINE(多头排列,MA1,MA3,0,0),COLORRED;

STICKLINE(空头排列,MA1,MA3,0,0),COLORGREEN;


均线粘合、粘合一段时间。

MA1:M

A(C,5);

MA2:MA(C,10);

MA3:MA(C,20);

粘合:=MAX(MAX(MA1,MA2),MA3)/MIN(MIN(MA1,MA2),MA3)<1.02;

粘合一段时间:=COUNT(粘合,10)=10;

STICKLINE(粘合,MAX(MAX(MA1,MA2),MIN(MIN(MA1,MA2),MA3)),MA3,1,0),COLORRED;

DRAWICON(粘合一段时间,MA3*0.98,1);

三金叉。

DIF2:"MACD.DIF";

DEA2:"MACD.DEA";

单金叉:CROSS(DIF2,DEA2);

三金叉:(单金叉 AND COUNT(单金叉,10)>=3)*2;

成交量状况——主要观察成交量之间、成交量与均量线之间以及换手率之间的关系。放量、历史天量。

放量1:V>REF(V,1)*2;

放量2:V>MA(V,60);

放量3:V*100/FINANCE(7)*100>8;

历史天量:V=HHV(V,0);

连续放量。

连续放量1:COUNT(V>REF(V,1),5)=5;

连续放量2:(COUNT(V>MA(V,60),5)=5)*2;

连续放量3:(COUNT(V*100/FINANCE(7)*100>8,5)=5)*3;


缩量、历史地量。

缩量1:V
缩量2:V
缩量3:V*100/FINANCE(7)*100<1;

历史地量:V=LLV(V,0);


连续缩量。

连续缩量1:COUNT(V
连续缩量2:(COUNT(V
连续缩量3:(COUNT(V*100/FINANCE(7)*100<1,5)=5)*3;


筹码低位密集。

筹码密集:=(WINNER(C*1.1)-WINNER(C*0.9))*100>50;

相对低位:=(C-COST(0.01))/(COST(99.99)-COST(0.01))*100<10;

低位密集:筹码密集 AND 相对低位;

多语句的公式编写(2011-02-24 14:13:00)
分类:选股指标 均线多头排列
a1:=ma(c,5);
a2:=ma(c,10);
a3:=ma(c,20);
a4:=ma(c,30);
count(a1>a2 and a2>a3 and a3>a4,3)=3 and close>open; (conut统计满足条件的周期数,5,10,20,30日均线呈多头排列),
均线空头排列
a1:=ma(c,5);
a2:=ma(c,10);
a3:=ma(c,20);
a4:=ma(c,30);
count(a1< a2 and a2< a3 and a3< a4,3)=3 and not(close< open); (5,10,20,30日均线呈空头排列)。

均线金叉
a;=ma(c,5);
b:=ma(c,10);
cross(a,b); (前二句是5、10日均线,cross是交叉函数,cross(a,b)表示5日均线上穿10日均线金叉)。

均线死叉
a;=ma(c,5);
b:=ma(c,10);
cross(b,a); (前二句是5、10日均线,cross是交叉函数,cross(b,a)表示5日均线下穿10日均线死叉)。

均线粘合
ma1:=ma(c,5);
ma2:=ma(c,10);
ma3:=ma(c,20);
p1:=abs(ma1-ma2)+abs(ma2-ma3);
p1/c< 2/100 and ma1>ref(ma1,1) and ma2>ref(ma2,1); (前三句是三根均线,p1是第一根均线减第二根均线差的绝对值与第二根均线减第三根均线差的绝对值之和,最后一句是p1与收盘价的比值小于一定比率2%(一般该比率为2%以下,同时前二均线今日比昨日上翘)。

在个股主图叠加(引用大盘数据的)线:
(HHV(H,n)-LLV(L,n))/(HHV(INDEXDATA("1a0001",&HIGH),n)-LLV(INDEXDATA("1a0001",&LOW),n))
*(INDEXDATA("1a0001",&CLOSE)-LLV(INDEXDATA("1a0001",&LOW),n)+LLV(L,n));

活跃度
CJBS:=MAX(0,SUBSAMEDAY(&VOLAMOUNT)); 成交笔数
活跃度:CJBS/CAPITAL*100,VOLSTICK;
MA13:MA(活跃度,13);

每笔均量
CJBS:=MAX(0,SU

BSAMEDAY(&VOLAMOUNT));
每笔均量:VOL/CJBS*100,COLORYELLOW;
每笔均量,STICK,COLORRED;
MA5:MA(每笔均量,5),COLORWHITE;
MA13;MA(每笔均量,13),COLORMAGENTA;
MA60:MA(每笔均量,60),COLORGREEN;

每笔均额
CJBS:=MAX(0,SUBSAMEDAY(&VOLAMOUNT));
每笔均额:AMOUNT/CJBS,COLORYELLOW;
每笔均额,STICK,COLORRED;
MA5:MA(每笔均额,5),COLORWHITE;
MA:MA(每笔均额,13),COLORMAGENTA;
MA:MA(每笔均额,60),COLORGREEN;

交易强度
CJBS:=MAX(0,SUBSAMEDAY(&VOLAMOUNT));
交易强度:VOL*100/CJBS/CAPITAL*100,VOLSTICK;

三,公式函数的活用

剔除选定股票,选股时剔除ST股票
STRFIND(STRLEFT(STKNAME,2),\\'ST\\')=0; 字符串函数,符合条件时返回为0。

获得成交笔数
MAX(0,SUBSAMEDAY(&VOLAMOUNT))


变色柱线(在个股于指数之间画不同颜色的柱线)
STICKLINE(个股>指数,个股,指数,4,0),color6666ff;
STICKLINE(个股<指数,个股,指数,4,1),color66bb66;

变色曲线(符合条件时改变颜色,下为用于KDJ公式)
k:PARTLINE(k,k>d,RGB(255,0,0),k[ 此文章的编辑者为: BCXYMMLL, 2007-03-17 15:26 ]

公式中引用其他公式

A2:=BARSLAST(REF(CROSS(KDJ.k,KDJ.d),1));引用KDJ公式的K,D并金叉



怎样编制全市场平均价格公式


现在的指数不能说明市场真实平均价格,怎样写才准确呢?
沪股均价:"1A0002$AMOUNT"/"1A0002$VOL"/100;
深股均价:"399107$AMOUNT"/"399107$VOL"/100;
均价:("1A0002$AMOUNT"+"399107$AMOUNT")/("1A0002$VOL"+"399107$VOL")/100;
2.
用股价选股
input.:年(2004),月(8),日(31),最小价格(1),最大价格(2);
n:=DATEDIFF(((年-1900)*10000+月*100+日),DATE);//计算输入日期和现在日期周期
tj:REF(CLOSE,n)>最小价格 and REF(CLOSE,n)<最大价格;
3.
1,股价突破60日均线的选股公式,
2,和怎么选出一段时间以来的涨停板个股公式
1
cross(c,ma(c,60));
2
f:=ref(c,1)*1.1-c<0.01;
count(f,n)>0;//N天内出现过涨停
4.
股价横盘,MACD金叉,然后股价创新底,MACD没死叉。
REF(((HHV(H,N)-LLV(L,N))/LLV(L,N)),1)<=0.04
AND c"macd.dea";
5.
过滤一个条件成立的信号
过滤:=(EMA(C,60)>EMA(C,30))>(EMA(C,60)>EMA(C,30)*1.05);
我需要这个信号以外成立的信号
过滤:=(EMA(C,60)>EMA(C,30))>(EMA(C,60)>EMA(C,30)*1.05);
not(过滤)
***
IF(过滤,0,1);
6.
收盘价在20日均线之上,收盘价连升二天。
f:=c/ref(c,1);
count(c>ma(c,20) and f>1,2)=2;
7.
求最大值?
在飞狐中如何求以下四个代数式中的最大值
a-b,b-c,a-c,d-c
MAX(A,B)只能返回A和B中的较大值?
MAX(MAX(A,B),MAX(C,D));
8.
请问这两句应该如何写(副图)?
①当A线上穿B线时,在A、B两线交叉点画一条绿色竖线,
②当A线下穿B线时,在A、B两线交叉点画一条红色竖线。
大家共同提高,感谢!!
VERTLINE(cross(a,b)),colorgreen;
vertiline(cross(b,a)),colorred;
9.
求教:飞狐公

式有一 ISLASTBAR怎么换成分析家的?
L2:=LD OR BARSTATUS=2 OR BARSCOUNT(CLOSE)=1;
BARSTATUS=2

仅供参考
用REF(C,1)代替看看!两者有相同的地方!这个指标也引含着最后一个周期!
C代表条件!条件成立时,上一周期的位置!
10.
求各位高手写一个选股公式!
N天,N日均线,以N角度向上或向下运行的均线。(分析家)
atan((ma(c,n)-ref(ma(c,n),N))/N); //值为正向上,值为负向下
11.
K线中“低点不断抬高”和“低点不断降低”的指标如何编 ?
l>ref(l,1) and REF(L,1)>ref(l,2) and REF(L,2)>ref(L,N);;{N,5,1,999}
“低点不断抬高”
反之<是“低点不断降低”
12.
符号编公式用
【】〓☆★○●◎◇◆□■△▲ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ→←↑↓^§∧∨∪∩∈∞∝⊥∽√┣┫┻╋┼αβδωΩφΦΨΠ┳
13.
当收盘价收在7天平均线上,K线都为阳线(红色),收盘价收在7天平均线下,K线都为阴线(录色),在主图怎样写?
stickline(c>=ma(c,7),c,o,7,0),colorred;
stickline(c>=ma(c,7),h,l,1,0),colorred;
stickline(cstickline(c14.
20日内次高点
AA:=HHVBARS(C,20);
C=MAX(HHV(C,AA),REF(HHV(C,19-AA),AA+1));
15.
要选出收市价离125天均线不远,
ABS(C-MA6)/MA6<=0.01
16.
选股时去除ST和*ST

STRNCMP(STKNAME, 'ST', 2)=0 and STRNCMP(STKNAME, '*ST', 3)=0;
INBLOCK('ST')=0

17.
在条件选股中去除ST、PT股(分析家与飞狐通用)

J1:=STRCMP(LowerSTR(STRLeft(STKName,2)),'st')=0;
J2:=STRCMP(LowerSTR(STRLeft(STKName,2)),'pt')=0;
J3:=STRCMP(LowerSTR(STRLeft(STKName,3)),'*st')=0;
J4:=STRCMP(LowerSTR(STRLeft(STKName,3)),'*pt')=0;
JJ:=J1 or J2 or J3 or J4;
去除PTST股:=88*(JJ=0);
18.
请大家帮个忙如何剔除150日以内的除权个股
别名: 除权发生周期数
所属类别: 行情函数 参数数量: 1
除权到现在的周期数
用法:
SPLITBARS(N),取得之前第N次除权到当前的周期数
例如:
SPLITBARS(0)=0表示当天发生除权
19.
大智慧 引入 周线 kdj 交叉 怎么引入???
{周KDJ}
周k:MA("kdj.k"(9,3,3)WEEKDAY,5),COLORWHITE;
周d:MA("kdj.d"(9,3,3)WEEKday,5),COLOR33FF99;
周金▲:DRAWTEXT(CROSS(周k,周d),周d,'▲'),COLORRED;
周死▼:DRAWTEXT(CROSS(周d,周k),周d,'▼'),COLOR00FF00;
20.
写均线MA1二次上穿MA4公式!
COUNT(CROSS(ma1,ma4),20)=2;




编写基础:

1)今收盘对于N日内最低收盘价的涨幅(%)(c-llv(c,n))/llv(c,n)*100;
2)今收盘价对于N日最高收盘价的跌幅(%)(HHV(C,N)-C)/HHV(C,N)*100;
3)股价在过去N日内运行空间的相对位置 (C-LLV(L,N))/(HHV(H,N)-LLV(L,N))*100;
4)股价上方N1%至N2%处的筹码(%)
aa:=winner(c+c*n2/100)*100;
bb:=winner(c+c*n1/100)*100;
aa-bb
5)股价下方N1%至N2%处的筹码(%)
(winner(c-c*n1/100)-winner(c-c*n2/100))*100;
6)收盘价N%处的套牢盘 100-(w

inner(c*N/100))*100;
7)收盘价N%处的获利盘 winner(c*N/100)*100;
8)下影线 (MIN(O,C)-L)/L*100;
9)上影线 (h-max(o,c))/max(o,c)*100;
10)本周期的涨跌幅 (c-ref(c,1))/ref(c,1)*100;
11)振幅 (h-l)/l*100;
12)均线金叉(M.N为均线周期) cross(ma(c,m),ma(c,n))
13)均线多头排列
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);
14) 均线空头排列
a1:=ma(c,n1);
a2:=ma(c,n2);
a3:=ma(c,n3);
a4:=ma(c,n4);
count(a115)N日均线向下
aa:=ma(c,n);
bb:=ref(aa,2);
aa16)向前N日至M日出现过均线死叉(P1aa:=ma(c,p1);
bb:=ma(c,p2);
cc:=ref(cross(bb,aa),n);
count(cc,m);
17)今日成交量大于N日以来的均量 VOL>MA(VOL,N);
18)低位密集
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)A5 AND B4;
19)换手率 VOL/CAPITAL*100;
20)N日盈亏
V1:=VOL/SUM(VOL,N);
V2:=DMA(CLOSE,V1);
V3: (CLOSE-V2)/V2*100;
21)强势整理
{参数M、N分别代表周期和幅度 m:1 20 2 n:1 20 5}
a1:=abs(close-open)/open<0.015;
a2:=count(a1,m)=m;
a3:=ref(o,m)ref(close,m)/ref(close,m+1)>1+n/100;
a2 and a3
22)高开大阴
{参数m,n分别代表幅度 m:1 10 4 n:1 20 5}
OPEN>CLOSE AND OPEN/REF(C,1) >= 1+M/100 AND CLOSE/OPEN<=1-N/100
23)低开大阳线
{参数m,n分别代表幅度 m:1 10 4 n:1 20 7}
OPEN=1+N/100

1、间隔点:
20,colorred,pointdot,linethick2;
80,colorred,pointdot,linethick2;
50,colorred,pointdot,linethick2;
2、间隔线
20,colorred,linethick2;
80,colorred,linethick2;
50,colorred,linethick2;
3、信号字
DRAWTEXT(RSI1<10,RSI1,'买'),Colorlime;
DRAWTEXT(RSI1>85,RSI1,'卖'),Colorlime;
4、笑哭脸
DRAWICON(VR24<25,VR24,1),ColorFF0000;
DRAWICON(VR24>350,VR24,2),ColorFF0000;
5、一线提示
cross("kdj.j"(9,3,3),"kdj.d"(9,3,3)) and "kdj.j"(9,3,3)<20,colorred
6、一柱顶天
IF(VAR4=50,50,0),stick,linethick2;
7、小人作怪
多头卒:Var3,LINETHICK2, COLORf00ff0;
空头卒:Var4,LINETHICK2, COLORYELLOW;
DRAWICON(Var9,Var9,1);
DRAWICON(Var10,Var10,2);
8、小人
买入:Var1 AND Var2,stick,linethick2,colorred;
卖出:CROSS(80,Var4),stick,linethick2,colorgreen;
drawicon(卖出,1.1,2);
drawicon(买入,1.1,1);
9、粗细面条
LINETHICK2
第3,4,6和7,还有8只要把RSI或VR或Var改成所在公式参数就可用;第5cross不能改,其它的可改;9你爱把线设多粗细都行。

1、方块:STICKLINE
AA:=VOL/((HIGH-LOW)*2-ABS(CLOSE-OPEN));
买盘:IF(CLOSE>OPEN,AA*(HIGH-LOW),IF(CLOSE卖盘:IF(CLOSE>OPEN,0-AA*((HIGH-CLOSE)+(OPEN-LOW)),IF(CLOSEqq:=买盘+卖盘;
STICKLINE(卖盘<0,0,VOL,5,1),COLORlime;
STICKLINE(买盘>0,0,买盘,5,0),COLORRED;
结果:ma(qq,5)*5,COLORRED,LINETHICK

2;
VOL后面的5,1是方块大少。VOL是坐标,也就是方块所放的地方。

2 、3D效果
STICKLINE(OPEN>=CLOSE ,CLOSE ,OPEN,9,0 ),COLORaaaaaa;
STICKLINE(OPEN>=CLOSE ,CLOSE ,OPEN,6,0 ),COLORbbbbbb;
STICKLINE(OPEN>=CLOSE ,CLOSE ,OPEN,2.4,0 ),COLORcccccc;
STICKLINE(OPEN>=CLOSE ,CLOSE ,OPEN,1.1,0 ),COLORdddddd;
STICKLINE(CLOSE>OPEN,CLOSE,OPEN,9,0 ),COLOr6666cc;
STICKLINE(CLOSE>OPEN,CLOSE,OPEN,6 ,0 ),COLOR7777dd;
STICKLINE(CLOSE>OPEN,CLOSE,OPEN,2.4 ,0 ),COLOR8888ee;
STICKLINE(CLOSE>OPEN,CLOSE,OPEN,1.1 ,0 ),COLOR9999ff;
STICKLINE(CLOSE>OPEN,OPEN,LOW,0.5,0 ),COLOR1199ff;
STICKLINE(CLOSE>OPEN,CLOSE,HIGH,0.5 ,0 ),COLOR1199ff;
STICKLINE(OPEN>=CLOSE,CLOSE,LOW,0.5 ,0 ),COLORcccccc;
STICKLINE(OPEN>=CLOSE,OPEN,HIGH,0.5 ,0 ),COLORcccccc;

3、颜色
大智慧只能用浅色调,一用深绿深蓝就看不见了。所以我调了几个浅色的,够大智慧用的。
COLOR+RED;WHITE;LIME;YELLOW;aabbcc;ffaabb;abcdef;999999;C0C0C0.

4、变色
变色可分3种:
1、用DRAWTEXT:
ma10:ma(c,10),colorwhite;
llv(h,30),colorffcc66;
llv(l,30),coloryellow;
vhh:hhv(h,30),colorred;
vhl:hhv(l,30),color00ff00;
v1:=ma(HIGH,30)*1.15 ;
v2:=ma(HIGH,3)*1.03;
v3:=ma(LOW,3)*0.97;
v4:=ma(LOW,30)*0.85;
小通道上:=ma(v2,30);
小通道下:=ma(v3,30);
A2:=小通道上-REF(小通道上,1);
A3:=小通道下-REF(小通道下,1);
K:A2>0 and ref(A2<0,1),colorblue;
K1:A3>0 and ref(A3<0,1),colorff00ff;
K2:c<小通道下 and h<小通道下,color0099ff;
K3:c<小通道下 and A3>0,colorffcccc;
K4:h<小通道下 and A3>0,colorffbbff;
DRAWTEXT(A2>0 ,小通道上,'°'),colorred;
DRAWTEXT(A2<0 ,小通道上,'°'),color00ff00;
DRAWTEXT(A3>0 ,小通道下,'°'),colorred;
DRAWTEXT(A3<0 ,小通道下,'°'),color00ff00;
DRAWTEXT(A2=0 ,小通道上,'°'),COLORWHITE;
DRAWTEXT(A2=0 ,小通道下,'°'),COLORWHITE;
DRAWTEXT(A3=0 ,小通道上,'°'),COLORWHITE;
DRAWTEXT(A3=0 ,小通道下,'°'),COLORWHITE;

2、用STICKLINE
AA:=WINNER(C)*100;
KA:=winner(O)*100;
高:=winner(H)*100;
低:=winner(L)*100;
庄筹线:EMA(AA*0.7,3),linethick2;
散筹线:EMA((WINNER(C*1.08)-WINNER(C*0.92))*70,3),linethick2;
stickline(AAstickline(AAstickline(AA>=KA,高,低,0,0),colorred;
stickline(AA>=KA,AA,KA,6,0),colorred;
stickline(庄筹线>散筹线,庄筹线,散筹线,0,0),colorwhite;

3、用IF
主图公式1:
A1:=Ma(C,5);{5日移动平均线}
A2:=Ma(C,10);{10日移动平均线}
A3:=(A1+A2)/2;{5、10日移动平均线之和除2的平均线,也就是中心线}
IF (A1>A2,A1,A3),Colorred,linethick2;{5日线大于10日且5日线交叉A3线显示粗红线}
IF (A1>A2,A2,A3),Colorred,linethick2;{5日线大于10日且10日线交叉A3线显示粗红线}
IF (A1<=A2,A1,A3),Color00ff00,linethick2;{5日线小于等于10日且5日线交叉A3线显示粗绿线}
IF (A1<=A2,A2,A3),Color00ff00,linethick2;{5日线小于等于10日且10日线交叉A3线显示粗绿线}
A3,colorwhite,linethick

2;{中心线显示粗白线}
这是以中心线为轴通过A1、A2这两条线与中心线的交叉来变换颜色的。
主图公式2:
MA1:=MA(CLOSE,5);{5日移动平均线}
MA2:=MA(CLOSE,10);{10日移动平均线}
MA3:=MA(CLOSE,20);{20日移动平均线}
MA4:=MA(CLOSE,30);{30日移动平均线}
MAA:=MA(CLOSE,60);{60日移动平均线}
MA5:IF(MA1IF(MA1MA10:if(ma2if(ma2MA20:if(ma3if(ma3MA30:if(ma4if(ma4MA60:if(ma4>maa,maa,maa),linethick2,colorblue;{MA4线大于MAA且MAA线交叉MAA线显示兰色粗线}
这是分别以MA4、MAA线为轴通过向上交叉和向下交叉来变换颜色的。
单条变色线
ma10:ma(c,10);
if(ma10>ref(ma10,1),ma10,0),Circledot,COLORRED,LINETHICK2;
if(ma10

一、线形函数
线形函数要和其它指标函数一起用才能发挥效力,因为它们都是描述其它指标函数的。正确用好线形函数可以使主副图指标显示丰富多彩,色彩缤纷。
1、函数:STICK 说明:画棒状线,STICK的英文是棍、棒的意思。
如副图公式:C>REF(C,1) AND C>REF(C,2),STICK;

2、函数:COLORSTICK 说明:以零轴为中心画彩色棒状线,零轴下为阴线颜色,零轴上为阳线颜色,这样零轴就如楚汉交界,泾渭分明了。
如副图公式:C-REF(C,1),COLORSTICK;

3、函数:LINESTICK 说明:同时画棒状线与指标线。LINE是线,STICK是棒,LINESTICK自然是线棒一起显示了。如副图公式:
A:=C-REF(C,1);
A,LINESTICK;
即想显示指标线和棒状线,又想以零轴为中心上下显示两种彩色棒状线,可以用分开的两句语句来达到目的,如副图公式:
A:=C-REF(C,1);
A,LINESTICK;
A,COLORSTICK;
4、函数:VOLSTICK 说明:画成交量柱状线。这是专门为显示成交量设计的。如副图公式:
VOL,VOLSTICK;
5、函数:CROSSDOT 说明:画叉状线或x状线。CROSS是交叉,DOT是点。如副图公式:
ma1:ma(c,30),CROSSDOT;
6、函数:CIRCLEDOT 说明:画小圆圈线,如副图公式:
ma1:ma(c,30),CIRCLEDOT;
7、函数:LINETHICK 说明:改变指标线粗细。取1、2、3、4、5、6、7放在LINETHICK后面如:LINETHICK2,数字越大,线越粗,最大可取7。如副图公式:
例1:ma1:ma(close,30),COLORFF00FF,linethick2;
例2:A:=C-REF(C,1);
A,COLORSTICK

,LINETHICK4;
8、函数:POINTDOT 说明:画点状线,POINT是点、加点的意思。这个点状线看起来有点太小了,可以用加粗线函数。如副图公式:
ma1:ma(c,30),COLOR00FF00,POINTDOT,LINETHICK2;

我们编个指标,看看都用了哪些线形函数。
{顶底指标}
股价趋势:3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1),3,1),COLORFF00FF,LINETHICK2;
底部警戒:10,COLORFFCCCC,POINTDOT;
买入警戒:IF(股价趋势<=10,40,0),stick,linethick3,coloryellow;
买入信号:IF(CROSS(股价趋势,底部警戒),80,0),stick,linethick3,colorblue;
强弱分界:50,COLORWHITE,POINTDOT,LINETHICK2;
顶部警戒:90,COLORFFCC66,POINTDOT;
卖出警戒:IF(股价趋势>=85,40,0),stick,linethick3,colorred;
卖出信号:IF(CROSS(股价趋势,顶部警戒),80,0),stick,linethick3,color00ff00;
指标解析:
{顶底指标}
股价趋势:3*移动平均((收盘价-最低值(最低价,27))/(最高值(最高价,27)-最低值(最低价,27))*100,5,1)-2*移动平均(移动平均((收盘价-最低值(最低价,27))/(最高值(最高价,27)-最低值(最低价,27))*100,5,1),3,1),COLORFF00FF,LINETHICK2;
底部警戒:10,COLORFFCCCC,点状线;
买入警戒:条件函数(股价趋势<=10,40,0),棒状线,linethick3,coloryellow;{黄粗棒状}
买入信号:条件函数(交叉函数(股价趋势,底部警戒),80,0),棒状线,linethick3,colorblue;{蓝粗棒状}
强弱分界:50,COLORWHITE,点状线,LINETHICK2;{粗点状线}
顶部警戒:90,COLORFFCC66,点状线;
卖出警戒:条件函数(股价趋势>=85,40,0),棒状线,linethick3,colorred;{红粗棒状}
卖出信号:条件函数(交叉函数(股价趋势,顶部警戒),80,0),棒状线,linethick3,color00ff00;{绿粗棒状}

二、绘图函数
绘图函数的功能是在主图或副图上设定条件输出图标、直线、文字、数字、指标线、指标柱等。运用恰当使编制出的主副图指标给以视觉上的美感。
1、函数RAWICON
用法RAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标。
说明:在图形上绘制小图标,其中TYPE可选3种图标,编码为1-3(1为红脸、2为绿脸、3为平脸)。
示例:DRAWICON(CLOSE>OPEN,LOW,1);表示当收阳时在最低价位置画1号图标,也就是红脸。
DRAWICON(CLOSE指标示例:
{月均线主图}
ma1:ma(close,5),colorwhite,linethick2;{画一条5日收盘价的均线,设置该线为粗白色}
ma2:ma(close,10),colorff00ff,linethick2;{画一条10日收盘价的均线,设置该线为粗粉色}
ma3:ma(close,20),color00ff00,linethick2;{画一条20日收盘价的均线,设置该线为粗绿色}
a1:=cross(ma1,ma2);{5日均线上穿10日均线,金叉}
a2:=cross(ma2,ma1);{10日均线下穿5日均线,死叉}
DRAWICON(a1,low,1);{当a1条件满足时,在最低价位置上显示红脸,表示此处

可作为买入点}
DRAWICON(a2,high,2);{当a2条件满足时,在最高价位置上显示绿脸,表示此处可作为卖出点}
2、函数:DRAWLINE
用法RAWLINE(COND1,PRICE1,COND2,PRICE2,EXPAND),当COND1条件满足时,在PRICE1位置画直线起点,当COND2条件满足时,在PRICE2位置画直线终点,EXPAND为延长类型。
说明:在图形上绘制直线段。
示例: DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,LOW<=LLV(LOW,20),LOW,1);表示在创20天新高与创20天新低之间画直线并且向右延长。
DRAWLINE是唯一一个一句里面用到两个COND的绘图函数。因为它需要两个点来决定一直线。
COND1相当于指定K线位置(横坐标),PRICE1相当于是指定价位(纵坐标),这样一个点在平面上的位置就决定了。
DRAWLINE是从第一点画到第二点的,即有起点与终点的顺序关系:第一点出现的时间,要在第二点之前。否则线是画不出来的。
EXPAND,扩张、发展,这里是延伸的意思吧。取0,不延长;取1,延长。实际上是取大于等于1的数就延长,小于1就不延长。
指标示例:
{季均线主图}
ema1:ema(close,20),colorff00ff;{画一条20日收盘价的均线,设置该线为粉色}
ema2:ema(close,40),color00ff00;{画一条40日收盘价的均线,设置该线为绿色}
ema3:ema(close,60),colorwhite,CIRCLEDOT;{画一条60日收盘价的均线,设置该线为白色o线}
DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,HIGH>=HHV(HIGH,20),HIGH,1),colorwhite;{表示在创20天新高与创20天新低之间画直线并且向右延长。}
DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,LOW<=LLV(LOW,20),LOW,1),coloryellow;{表示在创20天新高与创20天新低之间画直线并且向右延长。}
3、函数RAWTEXT 说明:在图形上显示文字。
用法RAWTEXT(COND,PRICE,TEXT),当COND条件满足时,在PRICE位置书写文字TEXT,可显示多行文本。
示例RAWTEXT(CLOSE/OPEN>1.08,LOW,'大涨啦');表示当日涨幅大于8%时在最低价位置显示'大涨啦'字样。在某些满足条件的地方直接显示文字或字符,比显示图标要更直观一些。注意,显示的文字要用英语状态下的单引号括起。
指标示例:
{长短结合主图}
sma1:sma(close,5,1),color00ff00;{画一条5日收盘价的均线,设置该线为绿色}
sma2:sma(close,10,1),coloryellow;{画一条10日收盘价的均线,设置该线为黄色}
sma3:sma(close,60,1),colorblue,linethick2;{画一条60日收盘价的均线,设置该线为蓝色粗线}
DRAWTEXT(CLOSE/OPEN>1.08,LOW,'大涨啦'),colorwhite;{表示当日涨幅大于8%时在最低价位置显示'大涨啦'字样。}
4、函数OLYLINE 说明:在图形上绘制折线段。
用法OLYLINE(COND,PRICE),当COND条件满足时,以PRICE位置为顶点画折线连接。
示例OLYLINE(HIGH>=HHV(HIGH,20),HIGH);表示在创20天新高点之间画折线。
指标示例:
{长短结合主图}
sma1:sma(close,5,1),color00ff00;{画一条5日收盘价的均线,设

置该线为绿色}
sma2:sma(close,10,1),coloryellow;{画一条10日收盘价的均线,设置该线为黄色}
sma3:sma(close,60,1),colorblue,linethick2;{画一条60日收盘价的均线,设置该线为蓝色粗线}
POLYLINE(HIGH>=HHV(HIGH,20),HIGH),COLORWHITE;{表示在创20天新高点之间画折线(白色)。}
5、函数:STICKLINE 说明:在图形上绘制柱线。
用法: STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY),当COND条件满足时,在PRICE1和PRICE2位置之间画柱状线,宽度为WIDTH可为0---100(10为标准间距),EMPTH不为0则画空心柱。
示例:STICKLINE(CLOSE>OPEN,CLOSE,OPEN,4,1);表示画K线中阳线的空心柱体部分。
运用要点:
⑴PRICE1和PRICE2没有顺序关系,即何者在前何者在后都不影响语句的执行。
⑵WIDTH宽度,支持小数。用1和用0.1,会有很大的差别。取4时和主图的K线宽度差不多。
以下的副图公式,画出的K线,与主图中显示的K线差不多。
指标示例:
{副图K线}
STICKLINE(C>O OR (C=O AND C>REF(C,1)),O,C,4,1),colorred;{画出红K实体}
STICKLINE((C>O AND C<>H) OR (C=O AND C>REF(C,1)),C,H,0.1,0),colorred;{画出红K上影线}
STICKLINE((C>O AND L<>O) OR (C=O AND C>REF(C,1)),L,O,0.1,0),colorred;{画出红K下影线}
STICKLINE(CSTICKLINE(Cma5:MA(C,5),colorwhite;
ma10:ma(c,10),colorff00ff;
绘图函数结合示例介绍完了,相信你一定有所收获吧,举一反三自己动手编个指标。不要怕失败,失败是成功之母。


三、背景装饰

飞狐、分析家股软能将背景颜色通过渐变颜色函数装扮的很漂亮,那么大智慧股软能做到吗?能,但做出的背景色虽不如飞狐、分析家平滑漂亮,也能起到装扮的作用,效果也可以。
在大智慧设计背景色的原理主要是通过主、副图的坐标用画柱线函数STICKLINE或者设定坐标用颜色代码就可以完成。下面用实例来说明背景色的设计过程。
一、单色背景色,这是最简单实用的一种装饰方法。我们先来设计一个主图指标:
要领:1、设定坐标:STICKLINE(CLOSE>0,h*9.0,l*0.01,8,0),color7d7f0f;意思是CLOSE>0条件满足时,在坐标h*9.0至坐标l*0.01处画宽度为8的实体柱线(也就是在整个主图上添色)。
也可以这样设定STICKLINE(110,0,110,8,0),color7d7f0f;显示的是同样效果。
2、添色的源码必须在指标的头条位置上,否则会覆盖均线、K线、文字等图形。
3、必须另外编制K线,因为背景色会覆盖系统中的K线图。
4、可以把背景色分为五档、十挡或更多,同时注意与你的指标的最大值、最小值(也就是坐标)相匹配,否则会在指标中出现背景色残缺不全的情况。
5、用你喜欢的颜色需要结合调色器可

随意自定义自己喜欢的颜色。不过可得有耐心啊!




相关文档
相关文档 最新文档