发表于 2019-04-26 18:00:34 股吧网页版
通达信公式教程三

?


第3节??????????????????? 公式编写示例

·????????????????? 公式示例


·????????????????? 指标公式:均线通道


·???????????????? 选股公式:均线通道


·???????????????? 五彩K线公式:均线通道


·???????????????? 交易系统公式:均线通道


·????????????????? 颜色参数应用:MACDK


·????????????????? 新增函数应用:HORCALC(X)


·????????????????? 新增函数应用:BLOCKSETNUM(板块名称)


?


?


3.1??????? 简单公式

??


这里举一些最简单的公式例子,有些只有一条语句且函数简单,较复杂的公式中函数复杂且语句较多。


?


收盘价线


这是最简单的公式:


CLOSE;


?


均线


计算N日内收盘价的算术平均值,它是最常用的指标之一,公式为:


MA(CLOSE,5);


其中的MA(X,N)表示X的N日平均。


?


涨幅


涨幅指今日收盘价相对于昨日收盘价的变动幅度,即(今日收盘价-昨日收盘价)/昨日收盘价*100%,  昨日收盘价的公式为:REF(CLOSE,1),因此涨幅的公式:


(CLOSE-REF(CLOSE,1))/REF(CLOSE,1);


?


换手率


换手率指当期的成交量占流通股本的比例。


公式:


VOL/CAPITAL;


VOL为当期成交量,CAPITAL为流通股本。


?


创新高


创新高指当日最高价是最近一段时间的最高价:


HIGH=HHV(HIGH,N);


其中的HIGH为当期最高价,HHV(X,N)是求N周期内X最高值。因此该公式的含义是当日最高价创N日新高时返回值为1,否则为0。


?


横盘整理


横盘整理指最近一段时期价格在一定幅度之内摆动:


(HHV(CLOSE,10)-LLV(CLOSE,10))/CLOSE<0.05;< /P>

其中的LLV(X,N)是求N周期内X最低值。因此该公式表示10日收盘价振幅振幅在5%以内。


?


区间统计


例如,要取得2002年2月1日到2002年12月30日间的最低价。思考一下,一段时间的最低价必然是该段时间内每个分析周期的最低价中最小的那个。所以我们要引用的数据是该段时间各分析周期的最低价,而不需要用到开盘价、收盘价或最高价;还要将不需要的数据,即区间外的数据设为0。语句为:


LL:=IF(YEAR=2002 AND MONTH>=2 AND MONTH<=12,LOW,0);< /P>

该语句用一个条件函数来判断时间是否处于规定区间,若是则返回最低价,否则返回0。


我们再用LLV函数,就可求得该段时间最低的最低价:


LLV(LL,N);


N为日期参数,N为0,则上式表示:上市以来的最低价。


?


技术指标公式


技术指标公式用于绘制技术指标线。以KDJ指标为例,右键点击KDJ,选择“编辑公式”后打开公式算法编辑器,显示出KDJ指标公式的内容。


参数名称: 最小值? 最大值?? 缺省值


N:???????? 1??????? 10O????? 9


M1:??? ????2???????? 40????? 3


M2:??????? 2???????? 40??? ??3


RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;


K:SMA(RSV,M1,1);


D:SMA(K,M2,1);


J:3*K-2*D


该公式绘制K、D、J两条指标线。


RSV行是一个中间语句,计算当期收盘价与N天内最低价之差除以N内最高价与最低价之差的比值,再乘以系数100。


K线为RSV的M1天移动平均线;


D线为线K的M2天移动平均线;


J线为K线与J线的差值。


?


条件选股公式


条件选股用于选出满足条件的股票,条件选股公式用于显示条件是否满足的语句是一个逻辑表达式,条件满足,表达式的返回值为“1”,表示选中该股,条件不满足,返回值为为“0”,表示未选中。条件选股公式的其他公式必须是中间公式,而且要在逻辑表达式之前。以KDJ指标买入条件选股为例,右键点击“KDJ指标买入条件选股”,选择“编辑公式”后打开公式算法编辑器,显示出公式的内容。


用KDJ随机指标作为买入条件是当J向上穿越0坐标线的时候


公式写法为:


参数名称:最小值?? 最大值? ?缺省值


N:???????? 1??????? 10O????? 9


M1:??????? 2???????? 40????? 3


M2:??????? 2???????? 40????? 3


RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;


K:SMA(RSV,M1,1);


D:SMA(K,M2,1);


J:3*K-2*D;


CROSS(J,0);


如果直接引用指标公式,KDJ条件选股公式可以简写为:


CROSS("KDJ.J"(N,M1,M2),0);


?


交易系统公式


交易系统公式用于描述交易系统。交易系统是一个完整的买卖过程。


交易系统公式用来指示买入、卖出信号的语句是一个逻辑表达式,名称为


TERLONG:多头买入


EXITLONG:多头卖出


ENTERSHORT:空头买入


EXITSHORT:空头卖出


四种信号条件满足,表达式的返回值为“1”,表示发出信号,条件不满足,返回值为“0”,表示不发出信号。


交易系统公式的其他公式必须是中间公式,而且要在逻辑表达式之前。


国内的股市只用到ENTERLONG,EXITLONG,国内期货市场还用到ENTERSHORT,EXITSHORT语句。


当买入或卖出条件满足时,在什么时间、什么价位进行操作,可以选择本周期或次周期的开盘价、最高价、最低价、收盘价,在测试交易系统时将以设置的介入价格计算。若选择次周期最高价买入、次周期最低价卖出,则此时的测试是最为严格,若此时交易系统的表现仍令人满意,则说明该系统稳定性好。


1 ? 200 : 1500; if (zwconbody.offsetHeight > hideHeight) { zwconbody.style.height = hideHeight + 'px'; zwconbody.style.overflow = 'hidden'; zwconbody.style.position = 'relative'; var newHtml = document.createElement('div'); newHtml.className = 'readmore'; newHtml.innerHTML = '展开阅读全文' //var appendHtml = '

展开阅读全文
' zwconbody.appendChild(newHtml); } })(); } }catch(e){ }
郑重声明:用户在财富号/股吧/博客社区发表的所有信息(包括但不限于文字、视频、音频、数据及图表)仅仅代表个人观点,与本网站立场无关,不对您构成任何投资建议,据此操作风险自担。请勿相信代客理财、免费荐股和炒股培训等宣传内容,远离非法证券活动。请勿添加发言用户的手机号码、公众号、微博、微信及QQ等信息,谨防上当受骗!
郑重声明:用户在社区发表的所有资料、言论等仅仅代表个人观点,与本网站立场无关,不对您构成任何投资建议。用户应基于自己的独立判断,自行决定证券投资并承担相应风险。《东方财富社区管理规定》