一定强势大涨指标公式源码[通达信公式] http://www./2012/11/30/9457.shtml MA5:=MA(CLOSE,5); MA10:=MA(CLOSE,10); 五强:=MA5>REF(MA5,1); 十强:=MA10>REF(MA10,1); 小均强:=五强 AND 十强; 强势线1:=HHV(MA((((LOW + HIGH) + CLOSE) / 3),8),60); 强势线2:=HHV(MA((((LOW + HIGH) + CLOSE) / 3.18),8),20); 强势线3:=HHV(MA((((LOW + HIGH) + CLOSE) / 3.258),8),10); 强势线4:=HHV(MA((((LOW + HIGH) + CLOSE) / 3.08),80),13); 开始走强1:=强势线1>REF(强势线1,1); 开始走强2:=强势线2>REF(强势线2,1); 开始走强3:=强势线3>REF(强势线3,1); 开始走强4:=强势线4>REF(强势线3,1); 双强1:=开始走强1 AND 开始走强2; 双强2:=开始走强2 AND 开始走强3; 双强3:=开始走强2 AND 开始走强3; 双强4:=开始走强3 AND 开始走强4; 三强:=开始走强1 AND 开始走强2 AND 开始走强3; 四强:=开始走强1 AND 开始走强2 AND 开始走强3 AND 开始走强4; 强势为王:=双强1 OR 双强2 OR 双强3 OR 双强4 OR 三强 OR 四强; VV:=(C+L+H)/3; DSA:=SMA(XMA(VV,15),2,1); 底部1:=DSA*0.9518; MA1:=MA(CLOSE,5); MA2:=MA(CLOSE,10); MA3:=MA(CLOSE,20); MA4:=MA(CLOSE,60); 五日走强:=MA1>REF(MA1,1); 十日走强:=MA2>REF(MA2,1); 二十日走强:=MA3>REF(MA3,1); 六十日走强:=MA4>REF(MA4,1); 低位主升:=五日走强 AND 十日走强 AND 六十日走强; 主升浪:=五日走强 AND 十日走强 AND 二十日走强; 大主升浪:=十日走强 AND 二十日走强 AND 六十日走强; 大主升浪2:=五日走强 AND 十日走强 AND 二十日走强 AND 六十日走强; 总主升:=主升浪 AND 大主升浪 AND 大主升浪2; 总主升浪:=低位主升 OR 主升浪 OR 大主升浪 OR 大主升浪2 OR 总主升; 低买:L<底部1 AND 总主升浪 AND 强势为王 AND C<DSA,NODRAW,COLORGREEN,LINETHICK1; STICKLINE(低买,0,15,2,0),COLORGREEN; 猎股:L<底部1 AND C<DSA AND 强势为王,NODRAW,COLORYELLOW,LINETHICK1; STICKLINE(猎股,15,30,2,0),COLORYELLOW; 猎股大王出击:=低买 AND 猎股 AND H<DSA; A:=MA(C,30); A1:=A*1.1; A4:=A*0.9; A2:=A1-(A1-A4)*0.191; 持仓:=IF(HIGH*1.01>A2 OR REF(HIGH,1)>REF(A2,1),A1,A4); 生命线:=IF(HIGH*1.01>A2 OR REF(HIGH,1)>REF(A2,1),A2,A4); 主升持仓:=持仓>生命线; 主升1:=持仓>REF(持仓,1); 主升2:=生命线>REF(生命线,1); 主升3:=主升1 AND 主升2; 主升猎股王:=(猎股大王出击 AND 主升持仓 AND 主升3) OR (猎股 AND 主升持仓 AND 主升3); 主升:(主升猎股王 AND 小均强) OR (猎股 AND 小均强),NODRAW,COLORMAGENTA,LINETHICK1; STICKLINE(主升,30,45,2,0),COLORMAGENTA; LOWV:=LLV(LOW,9); HIGHV:=HHV(HIGH,9); RSV:=EMA((CLOSE-LOWV)/(HIGHV-LOWV)*100,3); K:EMA(RSV,3),COLORWHITE; D:MA(K,3),COLORYELLOW;DRAWTEXT_FIX(C>O,0.01,0.9,0,'WWW.CXH99.COM'),COLORRED; DRAWTEXT_FIX(C>O,1,1,0,'<span style="display:none;"><a data-cke-saved-href="http://www." href="http://www.">程序化交易模型</a></span>'),COLORRED; 源码解析:
MA5赋值:收盘价的5日简单移动平均 MA10赋值:收盘价的10日简单移动平均 五强赋值:MA5>昨日MA5 十强赋值:MA10>昨日MA10 小均强赋值:五强 AND 十强 强势线1赋值:60日内(((最低价+最高价)+收盘价)/3)的8日简单移动平均的最高值 强势线2赋值:20日内(((最低价+最高价)+收盘价)/3.18)的8日简单移动平均的最高值 强势线3赋值:10日内(((最低价+最高价)+收盘价)/3.258)的8日简单移动平均的最高值 强势线4赋值:13日内(((最低价+最高价)+收盘价)/3.08)的80日简单移动平均的最高值 开始走强1赋值:强势线1>昨日强势线1 开始走强2赋值:强势线2>昨日强势线2 开始走强3赋值:强势线3>昨日强势线3 开始走强4赋值:强势线4>昨日强势线3 双强1赋值:开始走强1 AND 开始走强2 双强2赋值:开始走强2 AND 开始走强3 双强3赋值:开始走强2 AND 开始走强3 双强4赋值:开始走强3 AND 开始走强4 三强赋值:开始走强1 AND 开始走强2 AND 开始走强3 四强赋值:开始走强1 AND 开始走强2 AND 开始走强3 AND 开始走强4 强势为王赋值:双强1 OR 双强2 OR 双强3 OR 双强4 OR 三强 OR 四强 VV赋值:(收盘价+最低价+最高价)/3 DSA赋值:VV的15日偏移移动平均的2日[1日权重]移动平均 底部1赋值:DSA*0.9518 MA1赋值:收盘价的5日简单移动平均 MA2赋值:收盘价的10日简单移动平均 MA3赋值:收盘价的20日简单移动平均 MA4赋值:收盘价的60日简单移动平均 五日走强赋值:MA1>昨日MA1 十日走强赋值:MA2>昨日MA2 二十日走强赋值:MA3>昨日MA3 六十日走强赋值:MA4>昨日MA4 低位主升赋值:五日走强 AND 十日走强 AND 六十日走强 主升浪赋值:五日走强 AND 十日走强 AND 二十日走强 大主升浪赋值:十日走强 AND 二十日走强 AND 六十日走强 大主升浪2赋值:五日走强 AND 十日走强 AND 二十日走强 AND 六十日走强 总主升赋值:主升浪 AND 大主升浪 AND 大主升浪2 总主升浪赋值:低位主升 OR 主升浪 OR 大主升浪 OR 大主升浪2 OR 总主升 输出低买:最低价<底部1 AND 总主升浪 AND 强势为王 AND 收盘价<DSA,NODRAW,画绿色,线宽为1 当满足条件低买时,在0和15位置之间画柱状线,宽度为2,0不为0则画空心柱.,画绿色 输出猎股:最低价<底部1 AND 收盘价<DSA AND 强势为王,NODRAW,画黄色,线宽为1 当满足条件猎股时,在15和30位置之间画柱状线,宽度为2,0不为0则画空心柱.,画黄色 猎股大王出击赋值:低买 AND 猎股 AND 最高价<DSA A赋值:收盘价的30日简单移动平均 A1赋值:A*1.1 A4赋值:A*0.9 A2赋值:A1-(A1-A4)*0.191 持仓赋值:如果最高价*1.01>A2ORREF(最高价,1)>昨日A2,返回A1,否则返回A4 生命线赋值:如果最高价*1.01>A2ORREF(最高价,1)>昨日A2,返回A2,否则返回A4 主升持仓赋值:持仓>生命线 主升1赋值:持仓>昨日持仓 主升2赋值:生命线>昨日生命线 主升3赋值:主升1 AND 主升2 主升猎股王赋值:(猎股大王出击 AND 主升持仓 AND 主升3) OR (猎股 AND 主升持仓 AND 主升3) 输出主升:(主升猎股王 AND 小均强) OR (猎股 AND 小均强),NODRAW,画洋红色,线宽为1 当满足条件主升时,在30和45位置之间画柱状线,宽度为2,0不为0则画空心柱.,画洋红色 LOWV赋值:9日内最低价的最低值 HIGHV赋值:9日内最高价的最高值 RSV赋值:(收盘价-LOWV)/(HIGHV-LOWV)*100的3日指数移动平均 输出K:RSV的3日指数移动平均,画白色 输出D:K的3日简单移动平均,画黄色 http://blog.sina.com.cn/s/blog_62a872d90100wqon.html XMA函数 2011-07-12 19:57:48| 1.XMA只在通达信可用。 2.通达信公式系统的几个函数的解释MA:简单移动平均SMA:移动平均EMA(EXPMA):指数移动平均EXPMEMA:指数平滑移动平均MEMA:平滑移动平均DMA:动态移动平均XMA(X,M):偏移移动平均EMA同EXPMA一样的意思EMA(X,N)=SMA(X,N+1,2)SMA:返回累积平均用法:SMA(X,N,M):X的M日累积平均,M为权重,如Y=(X*M+Y'*(N-M))/NMA(X,N)=SMA(X,N,1)MEMA(X,N)与MA的差别在于起始值为一平滑值,而不是初始值EXPMEMA同EMA(即EXPMA)的差别在于他的起始值为一平滑值DMA:求动态移动平均.用法:DMA(X,A),求X的动态移动平均.算法: 若Y=DMA(X,A)则 Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必须小于1.例如:DMA(CLOSE,VOL/CAPITAL)表示求以换手率作平滑因子的平均价XMA(X,M):X的M日偏移移动平均这种移动平均可能会用到未来数据,用到了当日以后M/2日的数据,只供内部保留测试使用 7.XMA到底是什么?揭开XMA的面纱! *相似看法:MA和XMA的一部分算法一样。比如: MA(C,N)=(REF(C,N-1)+--REF(C,N-2)+REF(C,N=1)+C)/N XMA(C,N)=(REF(C,N-1)+--REF(C,N-2)+REF(C,N=1)+C)/N 这两个函数的这个值算法相同。不同的是这个值放到什么位置上。 MA是把这个值放到计算当天。而XMA把这个值放到向前数第(N+1)/2---的位置上。所以从这个角度看,XMA更符合平均值的计算原理,把平均值赋给中间数才是合理的。MA虽然使数值固定不变,但对原理来讲并不合理。 因为XMA把数值赋给中间位置的数,所以就存在一个问题,就是所有在中间数值{(N+1)/2}这个位置以前的数都是固定不变的了,那么就出现一个问题,在中间数值{(N+1)/2}这个位置以后的{(N-1)/2}位的数值怎么给定?这些位置数值的算法是什么样的那? XMA(C,N)嵌套循环,其中N值取的小一些,这样,如果循环的次数越多,对以前的数值影响长度就越大,但数值变化幅度减小,对近期的数值变化幅度也减小,这样的好处是使越接近现在的数值变化的范围可以小一些,减少近期失真或过度漂移的现象,不利的地方是使整条均线数值的大部分成为动态值,只不过动态范围很小。
|
|