大智慧公式教逻辑函数与统计函数的应用Word文档下载推荐.docx
《大智慧公式教逻辑函数与统计函数的应用Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《大智慧公式教逻辑函数与统计函数的应用Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
![大智慧公式教逻辑函数与统计函数的应用Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2023-1/11/552ffa49-9335-4206-b2f5-283f3e30be4b/552ffa49-9335-4206-b2f5-283f3e30be4b1.gif)
NOT(ISUP),是否平盘或收阴。
XX2:
=(MA(CLOSE,80)-MA(CLOSE,13)/3);
神奇线:
MA((CLOSE-XX2)/XX2,1);
买点1:
IF(CROSS(神奇线,0)ANDLOW/REF(HIGH,1)<
,0),STICK,COLORWHITE;
稳赚:
IF(COUNT(神奇线>
REF(神奇线,1),3)=3ANDCOUNT(神奇线<
0,10)=10ANDREF(神奇线,3)=LLV(神奇线,10),,0);
买点2:
IF(REF(神奇线,2)=LLV(神奇线,20)ANDREF(神奇线,2)<
ANDREF(神奇线,2)<
REF(神奇线,1)ANDNOT(REF(LOW,1)>
REF(HIGH,2)ANDLOW>
REF(HIGH,1))ANDCLOSE>
REF(CLOSE,1),,0),COLORRED;
{这段语句NOT(REF(LOW,1)>
REF(HIGH,2)的意思,是否昨天最低价大于前天最高价,这几个条件都满足显示脉冲信号,否则不显示}
DRAWTEXT(买点1>
0,,’★神奇线’),COLORWHITE;
DRAWTEXT(买点2>
0,,’★神奇线’),COLORRED;
大智慧统计函数
(1)、AVEDEV平均绝对偏差用法:
AVEDEV(X,N)含义:
平均绝对偏差,求X的N日平均绝对偏差。
请看指标:
TYP:
=(HIGH+LOW+CLOSE)/(3);
{最高+最底+收盘价/3}
趋势线:
(TYP-MA(TYP,100))/(*(AVEDEV(TYP,100))),Color00FFFF;
{(AVEDEV(TYP,100)求TYP的100日平均绝对偏差.}
(2)、DEVSQ数据偏差平方和用法:
DEVSQ(X,N)含义:
数据偏差平方和,求X的N日数据偏差平方和。
数据偏差平方和除以N,即为方差。
比较一下这2句在图上的区别:
a1:
DEVSQ(C,5)/5;
{}
a2:
DEVSQ(C,5);
(3)、FORCAST线性回归预测值用法:
FORCAST(X,N)为X的N周期线性回归预测值。
示例:
FORCAST(CLOSE,10) 表示求10周期线性回归预测。
用最小二乘法求出N周期内X的一元线性回归线上的当天的值。
平均价:
=(HIGH+4*LOW+OPEN+CLOSE)/7;
均价差:
=EMA(平均价,13)-EMA(平均价,34);
移动均价:
=EMA(均价差,5);
差:
=(均价差-移动均价)*5;
A:
=IF(差>
=1000,1000,IF(差<
=平均价,平均价,差));
分水岭:
=forcast(forcast(A,31),10),linethick3,COLORYELLOW;
{求出31日内A的线性回归预测和10日线性回归预测}
上涨:
if(A>
分水岭,A,分水岭),LINETHICK2,colorred;
下跌:
if(A<
分水岭,A,分水岭),LINETHICK2,COLORGREEN;
分水岭1:
forcast(forcast(A,31),10),linethick2,COLORYELLOW;
(4)、SLOPE线性回归斜率用法:
SLOPE(X,N)为X的N周期线性回归线的斜率。
例如:
SLOPE(CLOSE,10)表示求10周期线性回归线的斜率。
XLB:
forcast(V,8)/EMA(forcast(V,36),7);
{forcast(V,8)求8周期线性回归预测}
XLL:
if(slope(XLB,2)>
0,slope(XLB,2)*XLB,0),linethick2;
{slope(XLB,2)求2周期线性回归线的斜率}
drawicon(XLL<
0,11);
drawicon(XLL>
=,0,10);
{排序,用于抓住量比放大,正在快速上涨的股。
}
(5)、STD估算标准差用法:
STD(X,N)为X的N日估算标准差。
STD(CLOSE,10),求10周期收盘价的估算标准差。
var1:
=ema((high+low+close)/3,3);
重心:
var1,colorwhite;
varb:
=amount/(100*vol);
varc:
=ma(varb,34);
vard:
=ma(close,26);
通道:
(vard+varc)/2,coloryellow;
压力l:
vard+2*std(close,49),colorred;
{求49周期收盘价的估算标准差}
支持l:
(vard-2*std(close,26)),colorgreen;
{求26周期收盘价的估算标准差}
通道*,colorff00ff;
vare:
=ma(winner(close),5)*100;
顶:
drawtext(vare>
60andhigh>
压力l,high,’卖’),color00ff00;
底:
drawtext(vare<
15andcross(var1,通道),low,’买’),colorwhite;
(6)、STDP总体标准差用法:
STDP(X,N)为X的N日总体标准差。
STDP(CLOSE,10),求10周期收盘价的总体标准差。
VAR1:
=AMOUNT/VOL/100;
VAR2:
=(3*HIGH+LOW+OPEN+2*CLOSE)/7;
VAR3:
=SUM(AMOUNT,34)/VAR1/100;
VAR4:
=DMA(VAR2,VOL/VAR3);
VAR5:
=100*(C-VAR4)/VAR4;
次强上轨:
(MA(VAR5,20)+STDP(VAR5,20)),COLORRED;
{STDP(VAR5,20)求20周期var5的总体标准差}
次强下轨:
(MA(VAR5,20)-STDP(VAR5,20)),COLORRED;
强弱线:
(次强上轨+次强下轨)/2,POINTDOT,COLORYELLOW;
强势区上轨:
(MA(VAR5,20)+*STDP(VAR5,20)),COLOR10FFFF;
{STDP(VAR5,20)求20周期var5的总体标准差}
强势区下轨:
(MA(VAR5,20)*STDP(VAR5,20)),COLOR10FFFF;
标准线:
VAR5,COLORWHITE;
下面这2个函数用的比较少,略做简单介绍:
(7)、VAR估算样本方差用法:
VAR(X,N)为X的N日估算样本差。
(8)、VARP总体样本方差用法:
VARP(X,N)为X的N日总体样本方差。
{牛熊先知}
=EMA(EMA(EMA(CLOSE,5),2),1);
牛熊先知:
(VAR1-REF(VAR1,1))/REF(VAR1,1)*1,COLORRED,COLORSTICK;
牛熊神经:
EMA(牛熊先知,13),COLORYELLOW;
牛熊界线:
0,COLORFF00FF;
=MAX(ABS(HIGH-VAR2),ABS(VAR2-LOW));
=ABS((OPEN+CLOSE)/2-VAR2);
=5;
VAR6:
=(VAR3+VAR4)/VAR2*50;
牛熊变换:
IF(CROSS(VAR6,VAR5),,0),COLORFFCC66;
下面是一个飞狐的组合指标:
=(H+L+O+2*C)/5;
{与下面赋值VAR2重名}
CHH低吸线:
EMA(SLOPE(Var2,21)*20+Var2,55),circledot;
DrawIcon(Ref(C,1)<
CHH低吸线andC>
CHH低吸线,*L,1);
DrawIcon(Ref(C,1)>
CHH低吸线andC<
CHH低吸线,*H,2);
bb:
=llV(H,1);
神顶抄底逃顶线:
FORCAST(FORCAST(bb,15),15),COLORyellow,LINETHICK2;
神顶逃顶抄底线:
FORCAST(FORCAST(bb,25),25),COLORred,LINETHICK2;
If(Slope(神顶抄底逃顶线,2)>
0,CHH低吸线,C),circledot,ColorMagenta;
C,circledot,ColorBlack;
{K线}
=(C*2+H+L)/4;
{与上面赋值VAR2重名}
=EMA(Var2,3);
=EMA(Var3,6);
L1:
L2:
=EMA(Var3,4);
L3:
=EMA(Var4,5);
=REF(L1,1)>
L1ANDL1>
L2;
STICKLINE(L1>
=L2,H,L,1,0),COLORRED;
STICKLINE(L1<
L2,H,L,1,0),COLORGREEN;
=L2,C,O,6,0),COLORRED;
L2,C,O,6,0),COLORGREEN;
STICKLINE(Var5,H,L,1,0)COLORYellow;
{缺少逗号}
STICKLINE(Var5,C,O,6,0)COLORYellow;
第五步:
我们看到最后2条语句与颜色代码之间没有逗号,在编辑器里画黑线处见图:
好,再把这两句再加上逗号,点测试通过,到此指标修改结束。
下面是修改后的指标(可做主副图):
0,CHH低吸线,C),circledot,Colorff00ff;
C,circledot,ColorBlue;
V2:
=EMA(V2,3);
=L2,C,O,4,0),COLORRED;
L2,C,O,4,0),COLORGREEN;
STICKLINE(Var5,H,L,1,0),COLORYellow;
STICKLINE(Var5,C,O,4,0),COLORYellow;
通过画面看到K线比较粗,效果不好,把画柱线如STICKLINE(L1>
=L2,C,O,6,0),COLORRED中的宽度为6的改成4即可,这里有3条语句宽度为6的,都改成4,效果与主图上的K线宽窄是一样的了。
这个指标的修改过程是经过一步一步不断的修改才通过测试的,所以我们修改指标时,只要不能通过测试就要坚持修改下去,这样才能成功。
指标减肥法
指标公式是由若干条语句组成的,在网上我们常常看到有的指标少则几十条,多则近百条,指标大的让人望而生畏。
因为指标语句之间关联密切,互相调用,层层嵌套,有时编者也搞不清楚哪些语句被调用哪些没被调用,或者来不及校对,遗留下许多废语句也在所难免。
要知道,我们在使用指标时计算机对每条语句都要进行计算后才得出结果,太多的废语句会使计算速度降低(当然我们凭肉眼是看不出来的),而且占用空间。
说不定你现在使用的指标就肥指标,特别是很长的指标,有时间还是给指标减肥吧!
下面结合实例介绍减肥的方法:
{VAR2:
=1;
=MA(CLOSE,13);
=100-ABS(((CLOSE-VAR3)/(VAR3))*(100));
=LLV(LOW,75);
=HHV(HIGH,75);
VAR7:
=(VAR6-VAR5)/(100);
VAR8:
=SMA((CLOSE-VAR5)/(VAR7),20,1);
VAR9:
=SMA((OPEN-VAR5)/(VAR7),20,1);
VARA:
=(3)*(VAR8)-
(2)*(SMA(VAR8,15,1));
VARB:
=(3)*(VAR9)-
(2)*(SMA(VAR9,15,1));
VARC:
=100-VARB;
VARE:
=(REF(LOW,1))*(0.);
VARF:
=(LOW)*(0.);
VAR10:
=((VARF)*(VOL)+(VARE)*(CAPITAL-VOL))/(CAPITAL);
VAR11:
=EMA(VAR10,30);
VAR12:
=CLOSE-REF(CLOSE,1);
VAR13:
=MAX(VAR12,0);
VAR14:
=ABS(VAR12);
VAR15:
=((SMA(VAR13,7,1))/(SMA(VAR14,7,1)))*(100);
VAR16:
=((SMA(VAR13,13,1))/(SMA(VAR14,13,1)))*(100);
VAR17:
=BARSCOUNT(CLOSE);
VAR18:
=((SMA(MAX(VAR12,0),6,1))/(SMA(ABS(VAR12),6,1)))*(100);
VAR19:
=(((-200))*(HHV(HIGH,60)-CLOSE))/(HHV(HIGH,60)-LLV(LOW,60))+100;
VAR1A:
=((CLOSE-LLV(LOW,15))/(HHV(HIGH,15)-LLV(LOW,15)))*(100);
VAR1B:
=SMA((SMA(VAR1A,4,1)-50)*
(2),3,1);
VAR1C:
=((INDEXC-LLV(INDEXL,14))/(HHV(INDEXH,14)-LLV(INDEXL,14)))*(100);
VAR1D:
=SMA(VAR1C,4,1);
VAR1E:
=SMA(VAR1D,3,1);
VAR1F:
=((HHV(HIGH,30)-CLOSE)/(CLOSE))*(100);
VAR20:
=(VAR18<
=25)AND(VAR19<
(-95))AND(VAR1F>
20)AND(VAR1B<
(-30))AND(VAR1E<
30)AND(VAR11-
CLOSE>
=)AND(VAR15<
22)AND(VAR16<
28)AND(VAR17>
50);
VAR21:
VAR22:
=(VAR21-MA(VAR21,14))/(*(AVEDEV(VAR21,14)));
VAR23:
=(VAR21-MA(VAR21,70))/(*(AVEDEV(VAR21,70)));
VAR24:
=IF((VAR22>
=150)AND(VAR22<
200)AND(VAR23>
=150)AND(VAR23<
200),10,0);
VAR25:
=IF((VAR22<
=(-150))AND(VAR22>
(-200))AND(VAR23<
=(-150))AND(VAR23>
(-200)),(-10),VAR24);
VAR20,Color0000FF,Linethick2;
CROSS(VAR20,AND(COUNT((VAR20=1),10)=1),Color00FFFF,Linethick2;
}
VAR26:
=((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27)))*(100);
{VAR27:
=REVERSE(VAR26);
VAR28:
=SMA(VAR26,3,1);
快线:
SMA(VAR28,3,1),Color0000FF;
慢线:
SMA(快线,3,1),Color00FFFF;
金叉买:
IF(CROSS(快线,慢线)AND(快线<
40),35,0),Color0000FF,Linethick2;
这是一个经测试能通过的指标,那么公式还有问题吗?
我们来分析一下就知道了。
第一步:
打开指标编辑器,把指标源码复制粘贴到指标编辑器里,给指标随便取个名,点击测试通过,说明这个指标可用,没有不可识别的标示符,点击确认,回到K线图上调出该指标,看图形的效果。
第二步:
在图形上看到了两条线和一个脉冲信号,那么这两条线和脉冲信号都调用了哪些指标语句呢?
从指标的最后一条语句逐条往上看,金叉买这条语句调用了慢线和快线语句,慢线调用了快线语句,快线调用了VAR28语句,VAR28调用了VAR26语句,而VAR26往上没有调用任何语句,那么就可以认定这个指标是由VAR26、VAR28、快线、慢线、金叉买这5条语句构成的一个指标,其它的全是无用的废语句。
第三步:
为了验证自己的判断是否正确,用大括号{}将VAR26上面的语句至VAR2全部括起来,再把VAR27括起来,点测试通过,再点确认,验证一下图形,效果如初,OK!
第四步:
打开指标编辑器,把用大括弧括起的那部分(在指标编辑器里显示的是绿色[见下图])删除,点测试通过,确认,OK!
这是减肥后的指标:
再看这个指标:
{var2:
=1/WINNER(CLOSE);
var3:
var4:
=100-ABS((CLOSE-var3)/var3*100);
{var5:
var6:
var7:
=(var6-var5)/100;
var8:
=SMA((CLOSE-var5)/var7,20,1);
var9:
=SMA((OPEN-var5)/var7,20,1);
varA:
=3*var8-2*SMA(var8,15,1);
varB:
=3*var9-2*SMA(var9,15,1);
varC:
=100-varB;
动力线:
MA(WINNER(CLOSE**100,3),LINETHICK2;
{varD:
=动力线>
var4;
varE:
=REF(LOW,1)*;
varF:
=LOW*;
var10:
=(varF*VOL+varE*(CAPITAL-VOL))/CAPITAL;
var11:
=EMA(var10,30);
var12:
var13:
=MAX(var12,0);
var14:
=ABS(var12);
var15:
=SMA(var13,7,1)/SMA(var14,7,1)*100;
var16:
=SMA(var13,13,1)/SMA(var14,13,1)*100;
var17:
var18:
=SMA(MAX(var12,0),6,1)/SMA(ABS(var12),6,1)*100;
var19:
=(-200)*(HHV(HIGH,60)-CLOSE)/(HHV(HIGH,60)-LLV(LOW,60))+100;
var1A:
=(CLOSE-LLV(LOW,15))/(HHV(HIGH,15)-LLV(LOW,15))*100;
var1B:
=SMA((SMA(var1A,4,1)-50)*2,3,1);
var1C:
=(INDEXC-LLV(INDEXL,14))/(HHV(INDEXH,14)-LLV(INDEXL,14))*100;
var1D:
=SMA(var1C,4,1);
var1E:
=SMA(var1D,3,1);
var1F:
=(HHV(HIGH,30)-CLOSE)/CLOSE*100;
var20:
=var18<
=25ANDvar19<
-95ANDvar1F>
20ANDvar1B<
-30ANDvar1E<
30ANDvar11-CLOSE>
=ANDvar15<
22AN