大智慧公式教逻辑函数与统计函数的应用.docx
- 文档编号:6927547
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:19
- 大小:26.69KB
大智慧公式教逻辑函数与统计函数的应用.docx
《大智慧公式教逻辑函数与统计函数的应用.docx》由会员分享,可在线阅读,更多相关《大智慧公式教逻辑函数与统计函数的应用.docx(19页珍藏版)》请在冰豆网上搜索。
大智慧公式教逻辑函数与统计函数的应用
大智慧公式教程——逻辑函数与统计函数的应用
1、IF条件函数根据条件求不同的值。
用法:
IF(X,A,B)若X不为0则返回A,否则返回B。
例如:
IF(CLOSE>OPEN,HIGH,LOW),表示该周期收阳则返回最高值,否则返回最低值。
2、CROSS交叉函数CROSS(A,B)A:
变量或常量,判断交叉的第一条线。
B:
变量或常量,判断交叉的第二条线。
例如:
CROSS(MA(CLOSE,5),MA(CLOSE,10)),5日均线与10日均线金叉;CROSS(CLOSE,12),价格由下向上突破12元。
上面这两个函数我们在前面已经讲过,在此就不做介绍了。
讲一讲下面几个逻辑函数。
这几个逻辑函数比较好理解,用法简单,只是用的很少。
3、ISDOWN当日下跌该周期是否收阴。
用法:
ISDOWN当收盘<开盘时,返回值为1,否则为0。
4、ISEQUAL当日平盘该周期是否平盘。
用法:
ISEQUAL当收盘=开盘时,返回值为1,否则为0。
5、ISUP该周期是否收阳。
用法:
ISUP当收盘>开盘时,返回值为1,否则为0。
请看指标:
Var1:
=EMA(CLOSE,3);
Var2:
=EMA(CLOSE,21);
Var3:
=BARSLAST(CROSS(Var2,Var1))>15;
Var4:
=VOL>MA(VOL,5)*2ANDVOL Var5: =CROSS(Var1,Var2)ANDISUPANDVar4ANDVar3;{交叉(var1,var2)并且当日上涨并且VAR4并且VAR3} : if(Var5,80,0),stick,linethick4,colorf00ff0; drawtext(Var5,70,’! ’),colorf00ff0; 6、NOT求逻辑非NOT(X)求逻辑非,返回非X,即当X=0时返回1,否则返回0。 例如: 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) 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;{求出31日内A的线性回归预测和10日线性回归预测} (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; 通道*,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;{STDP(VAR5,20)求20周期var5的总体标准差} 强弱线: (次强上轨+次强下轨)/2,POINTDOT,COLORYELLOW; 强势区上轨: (MA(VAR5,20)+*STDP(VAR5,20)),COLOR10FFFF;{STDP(VAR5,20)求20周期var5的总体标准差} 强势区下轨: (MA(VAR5,20)*STDP(VAR5,20)),COLOR10FFFF;{STDP(VAR5,20)求20周期var5的总体标准差} 标准线: VAR5,COLORWHITE; 下面这2个函数用的比较少,略做简单介绍: (7)、VAR估算样本方差用法: VAR(X,N)为X的N日估算样本差。 (8)、VARP总体样本方差用法: VARP(X,N)为X的N日总体样本方差。 {牛熊先知} VAR1: =EMA(EMA(EMA(CLOSE,5),2),1); 牛熊先知: (VAR1-REF(VAR1,1))/REF(VAR1,1)*1,COLORRED,COLORSTICK; 牛熊神经: EMA(牛熊先知,13),COLORYELLOW; 牛熊界线: 0,COLORFF00FF; VAR2: =AMOUNT/VOL/100; VAR3: =MAX(ABS(HIGH-VAR2),ABS(VAR2-LOW)); VAR4: =ABS((OPEN+CLOSE)/2-VAR2); VAR5: =5; VAR6: =(VAR3+VAR4)/VAR2*50; 牛熊变换: IF(CROSS(VAR6,VAR5),,0),COLORFFCC66; 下面是一个飞狐的组合指标: Var2: =(H+L+O+2*C)/5;{与下面赋值VAR2重名} CHH低吸线: EMA(SLOPE(Var2,21)*20+Var2,55),circledot; DrawIcon(Ref(C,1) DrawIcon(Ref(C,1)>CHH低吸线andC 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线} Var2: =(C*2+H+L)/4;{与上面赋值VAR2重名} Var3: =EMA(Var2,3); Var4: =EMA(Var3,6); L1: =EMA(Var2,3); L2: =EMA(Var3,4); L3: =EMA(Var4,5); Var5: =REF(L1,1)>L1ANDL1>L2; STICKLINE(L1>=L2,H,L,1,0),COLORRED; STICKLINE(L1 STICKLINE(L1>=L2,C,O,6,0),COLORRED; STICKLINE(L1 STICKLINE(Var5,H,L,1,0)COLORYellow;{缺少逗号} STICKLINE(Var5,C,O,6,0)COLORYellow;{缺少逗号} 第五步: 我们看到最后2条语句与颜色代码之间没有逗号,在编辑器里画黑线处见图: 好,再把这两句再加上逗号,点测试通过,到此指标修改结束。 下面是修改后的指标(可做主副图): Var2: =(H+L+O+2*C)/5; CHH低吸线: EMA(SLOPE(Var2,21)*20+Var2,55),circledot; DrawIcon(Ref(C,1) DrawIcon(Ref(C,1)>CHH低吸线andC 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,Colorff00ff; C,circledot,ColorBlue; {K线} V2: =(C*2+H+L)/4; Var3: =EMA(V2,3); Var4: =EMA(Var3,6); L1: =EMA(V2,3); L2: =EMA(Var3,4); L3: =EMA(Var4,5); Var5: =REF(L1,1)>L1ANDL1>L2; STICKLINE(L1>=L2,H,L,1,0),COLORRED; STICKLINE(L1 STICKLINE(L1>=L2,C,O,4,0),COLORRED; STICKLINE(L1 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; VAR3: =MA(CLOSE,13); VAR4: =100-ABS(((CLOSE-VAR3)/(VAR3))*(100)); VAR5: =LLV(LOW,75); VAR6: =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: =(HIGH+LOW+CLOSE)/(3); 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! 这是减肥后的指标: VAR26: =((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27)))*(100); VAR28: =SMA(VAR26,3,1); 快线: SMA(VAR28,3,1),Color0000FF; 慢线: SMA(快线,3,1),Color00FFFF; 金叉买: IF(CROSS(快线,慢线)AND(快线<40),35,0),Color0000FF,Linethick2; 再看这个指标: {var2: =1/WINNER(CLOSE);} var3: =MA(CLOSE,13); var4: =100-ABS((CLOSE-var3)/var3*100); {var5: =LLV(LOW,75); var6: =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;} 动力线: 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: =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<=25ANDvar19<-95ANDvar1F>20ANDvar1B<-30ANDvar1E<30ANDvar11-CLOSE>=ANDvar15<22AN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智慧 公式 逻辑 函数 统计 应用