通达信公式编写教程
本作品内容为通达信公式编写教程,格式为 doc ,大小 594984 KB ,页数为 38页
('-第一章公式编写教程简介公式编写规则公式编写实例系统函数说明常用技术指标选股第4节系统函数说明TD的公式编写系统用了多类的函数,以达到快速提取数据和提高运算能力,同时简化计算过程的要求。因此在不同类型的函数我们赋予了相当精确的含义。有的函数定义为行情数据提取函数,则它的功能就是从静态历史上的行情数据或者动态及时盘中数据提取我们所需要的数据以方便以后的分析和计算。有的函数定义为运算函数,是考虑到一些复杂的数学计算过程过于冗长,从而设计的简化运算函数等等。在以下的几节当中,我们将会分别介绍一共10类的函数。一、行情函数(OPEN、CLOSE、HIGH、LOW、VOL等)二、大盘函数(INDEA、INDEC、INDEH等)三、常数函数(包括财务函数和动态行情函数)四、时间函数(DATE、DAY、TIME等)五、引用函数(MA、HHV、COUNT、REF、SUM、SMA等)六、逻辑算术函数(IF、CROSS、NOT等)七、数学函数(MA、MIN、LN、三角函数等)八、统计函数(STD、VAR、AVEDEV等)九、指标函数(PEAK、SAR、COSET、WINNER、ZIG等)十、绘图函数(DRAWLINE、DRAWTET等)十一、横向统计函数4.1行情函数.z.-名称解释用法举例ADVANCE上涨家数本函数仅对大盘有效AMOUNT成交额取得该周期成交额。ASKPRICE委卖价ASKPRIC(N),N取1--3ASKVOL委卖量ASKVOL(N),N取1--3BIDPRICE委买价BIDPRICE(N),N取1--3BIDVOL委买量BIDVOL(N),N取1--3BUYVOL主动性买单BUYVOLCLOSE收盘价CLOSEDECLINE下跌家数DECLINEHIGH最高价HIGHISBUYORDER是否为主动性买单ISBUYORDERLOW最低价LOWOPEN开盘价OPENSELLVOL主动性卖单SELLVOLVOL成交量VOL4.2大盘函数名称解释1INDEA表示同期大盘的成交额2INDEADV表示同期大盘的上涨家数3INDEC表示同期大盘的收盘价4INDEDEC表示同期大盘的下跌家数5INDEH表示同期大盘的最高价6INDEL表示同期大盘的最低价7INDEO表示同期大盘的开盘价8INDEV表示同期大盘的成交量4.3常数函数4.3.1流通盘函数:CAPITAL说明:流通盘大小用法:CAPITAL,返回流通盘大小,单位为手。对于A股得到流通A股,B股得到B股总股本,指数为0.注意:该函数返回常数例如:换手率公式:100VOL/(CAPITAL),VOLSTICK;4.3.2财务数据函教FINANCE(N)返回财务数据.z.-N定义单位N定义单位N定义单位1总股本万股14长期投资千元27存货千元2国家股万股15流动负债千元28利润总额千元3发起人法人股万股16少数股东权益千元29税后利润千元4法人股万股17资本公积金千元30净利润千元5B股万股18每股公积金千元31未分配利润千元6H股万股19股东权益千元32每股未分配元7流通A股万股20主营收入千元38每股收益(最近一期季报)元8股东人数万股21营业成本千元34每股净资产元9资产负债率万股22应收帐款千元35调每股净资元10总资产千元23营业利润千元36股东权益比11流动资产千元24投资收益千元40流通市值元12固定资产千元25经营现金流量千元41总市值元13无形资产千元26总现金流量千元42上市的天数33每股收益(折算为全年收益)37第几季度报告(1为1季度2为中报3为3季度4为年报)43净利润增长率44主营收入同比增长率毛利率:(FINANCE(20)-FINANCE(21))/FINANCE(20)100;每股经营现金流:=FINANCE(25)/FINANCE(1);4.3.3动态行情函数.z.-DYNAINFO(N)返回动态行情N含义N含义N含义N含义3昨收16委差29买二价51内外比4今开17量比30买三价52多空平衡5最高18上涨家数59卖一量53多头获利6最低19下跌家数32卖二量54空头回补7最新20委买价33卖三量55多头止损8总手21委卖价34卖一价56空头止损9现价22内盘35卖二价57笔升跌10总额23外盘36卖三价11均价24涨速37换手率60沪深总上涨家数12涨跌58买一量385日均量61沪深总下跌家数13振幅26买二量39市盈率14涨幅27买三量40笔升跌15委比28买一价50采样点数4.4时间函数名称中文名说明DATE年月日函数返回有效值围为(700101-1341231),取得该周期从1900以来的的年月日。DAY日期函数返回有效值围为(1-31)取得该周期的日期。HOUR小时函数返回有效值围为(0-23),对于日线及更长的分析周期值为0取得该周期的小时数。MINUTE分钟函数返回有效值围为(0-59),对于日线及更长的分析周期值为0取得该周期的分钟数。MONTH月份函数返回有效值围为(1-12)取得该周期的月份。TIME时分秒函数返回有效值围为(000000-235959)取得该周期的时分秒。WEEK星期函数返回有效值围为(0-6),0表示星期天取得该周期的星期数。YEAR年份函数返回有效值围为(1970-2038)取得该周期的年份。FROMOPEN求距开盘有多长时间FROMOPEN返回当前时刻距开盘有多长时间,单位为分钟。注意:引用固定日期的函数为引用函数REFDATE(,A)作用:引用指定日期的数据.用法:REFDATE(,A),引用A日期的值.例如:REF(CLOSE,20011208)表示2001年12月08日的收盘价4.5引用函数.z.-函数:DRAWNULL说明:当前值不画线返回无效数。用法:DRAWNULL不画线。例如:IF(CLOSE>REF(CLOSE,1),CLOSE,DRAWNULL)表示下跌时分析图上不画线。-----------------------函数:BACKSET(,N)说明:向前赋值将当前位置到若干周期前的数据设为1。用法:BACKSET(,N),非0,则将当前位置到N周期前的数值设为1。例如:BACKSET(CLOSE>OPEN,2)若收阳则将该周期及前一周期数值设为1,否则为0-----------------------函数:BARSCOUNT()说明:有效值周期数求总的周期数。用法:BARSCOUNT()第一个有效数据到当前的天数。例如:BARSCOUNT(CLOSE)对于日线数据取得上市以来总交易日数,对于分笔成交取得当日成交笔数,对于1分钟线取得当日交易分钟数----------------------函数:BARSLAST()说明:上一次条件成立位置上一次条件成立到当前的周期数。用法:BARSLAST():上一次不为0到现在的天数。例如:BARSLAST(CLOSE/REF(CLOSE,1)>=1.1)表示上一个涨停板到当前的周期数----------------------函数:BARSSINCE()说明:第一个条件成立位置到当前的周期数。用法:BARSSINCE():第一次不为0到现在的天数。例如:BARSSINCE(HIGH>10)表示股价超过10元时到当前的周期数----------------------函数:COUNT(,N)说明:统计总数统计满足条件的周期数。用法:COUNT(,N),统计N周期中满足条件的周期数,若N=0则从第一个有效值开始。例如:COUNT(CLOSE>OPEN,20)表示统计20周期内收阳的周期数----------------------函数:DMA(,N)说明:动态移动平均求动态移动平均。用法:DMA(,A),求的动态移动平均。算法:若Y=DMA(,A)则Y=A+(1-A)Y\',其中Y\'表示上一周期Y值,A必须小于1。例如:DMA(CLOSE,VOL/CAPITAL)表示求以换手率作平滑因子的平均价-----------------------函数:EMA(,N)说明:指数平滑移动平均卖一价求指数平滑移动平均。.z.-用法:EMA(,N),求的N日指数平滑移动平均。算法:若Y=EMA(,N)则Y=[2+(N-1)Y\']/(N+1),其中Y\'表示上一周期Y值。例如:EMA(CLOSE,30)表示求30日指数平滑均价----------------------函数:FILTER(,N)说明:信号过滤过滤连续出现的信号。用法:FILTER(,N):满足条件后,删除其后N周期内的数据置为0。例如:FILTER(CLOSE>OPEN,5)查找阳线,5天内再次出现的阳线不被记录在内----------------------函数:HHV(,N)说明:求最高值用法:HHV(,N),求N周期内最高值,N=0则从第一个有效值开始。例如:HHV(HIGH,30)表示求30日最高价----------------------函数:HHVBARS(,N)说明:上一高点位置求上一高点到当前的周期数。用法:HHVBARS(,N):求N周期内最高值到当前周期数N=0表示从第一个有效值开始统计例如:HHVBARS(HIGH,0)求得历史新高到到当前的周期数----------------------函数:LLV(,N)说明:求最低值用法:LLV(,N),求N周期内最低值,N=0则从第一个有效值开始。例如:LLV(LOW,0)表示求历史最低价----------------------函数:LLVBARS(,N)说明:上一低点位置求上一低点到当前的周期数。用法:LLVBARS(,N):求N周期内最低值到当前周期数N=0表示从第一个有效值开始统计例如:LLVBARS(HIGH,20)求得20日最低点到当前的周期数----------------------函数:MA(,N)说明:简单移动平均求简单移动平均。用法:MA(,N),求的N日移动平均值。算法:(1+2+3+...+n)/N例如:MA(CLOSE,10)表示求10日均价----------------------函数:REF(,A)说明:向前引用引用若干周期前的数据用法:REF(,A),引用A周期前的值。例如:REF(CLOSE,1)表示上一周期的收盘价,在日线上就是昨收。----------------------函数:REFDATE(,A)说明:向前引用引用指定日期的数据。.z.-用法:REFDATE(,A),引用A日期的值。例如:REF(CLOSE,20011208)表示2001年12月08日的收盘价----------------------函数:SMA(,N,M)说明:求移动平均用法:若Y=SMA(,N,M)则Y=[M+(N-M)Y\')/N,其中Y\'表示上一周期Y值,N必须大于M。算法:(1+2+3+...+n)/N例如:SMA(CLOSE,30,1)表示求30日移动平均价----------------------函数:SUM(,N)说明:求总和用法:SUM(,N),统计N周期中的总和,N=0则从第一个有效值开始。例如:SUM(VOL,0)表示统计从上市第一天以来的成交量总和----------------------函数:SUMBARS(,A)说明:累加到指定周期数向前累加到指定值到现在的周期数用法:SUMBARS(,A):将向前累加直到大于等于A,返回这个区间的周期数例如:SUMBARS(VOL,CAPITAL)求完全换手到现在的周期数4.6逻辑算术函数函数:NOT()说明:求逻辑非用法:NOT()求逻辑非,返回非,即当=0时返回1,否则返回0。例如:NOT(ISUP):是否平盘或收阴----------------------函数:IF(,A,B)说明:条件函数根据条件求不同的值用法:IF(,A,B)若不为0则返回A,否则返回B例如:IF(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值----------------------函数:IFF(,A,B)说明:根据条件求不同的值用法:IFF(,A,B)若不为0则返回A,否则返回B例如:IFF(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值----------------------函数:IFN(,A,B)说明:根据条件求不同的值用法:IFN(,A,B)若不为0则返回B,否则返回A例如:IFN(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值----------------------函数:CROSS(A,B).z.-说明:交叉函数用法:A:变量或常量,判断交叉的第一条线B:变量或常量,判断交叉的第二条线例如:CROSS(MA(CLOSE,5),MA(CLOSE,10))5日均线与10日均线金叉;CROSS(CLOSE,12):价格由下向上突破12元----------------------函数:LONGCROSS(A,B,N)说明:两条线维持一定周期后交叉用法:LONGCROSS(A,B,N)表示A在N周期内都小于B,本周期从下方向上穿过B时返回1,否则返回0例如:LONGCROSS(MA(CLOSE,5),MA(CLOSE,10),5)表示5日均线维持5周期后与10日均线交金叉----------------------函数:UPNDAY(CLOSE,M)说明:连涨周期数用法:UPNDAY(CLOSE,M)表示连涨M个周期例如:UPNDAY(CLOSE>OPEN,7)表示连涨7天----------------------函数:DOWNNDAY(CLOSE,M)说明:连跌周期用法:DOWNNDAY(CLOSE,M)表示连跌M个周期例如:DOWNNDAY(CLOSE,5)表示连跌5天----------------------函数:NDAY(,Y,N)说明:连大用法:NDAY(,Y,N)表示条件>Y持续存在N个周期例如:NDAY(CLOSE>OPEN,3)表示连续3日收阳线----------------------函数:EIST(,N)说明:存在用法:EIST(,N)表示条件在N周期有存在例如:EIST(CLOSE>OPEN,10)表示前10日内存在着阳线----------------------函数:EVERY(,N)说明:一直存在用法:EVERY(,N)表示条件在N周期一直存在例如:EVERY(CLOSE>OPEN,10)表示前10日内一直是阳线----------------------函数:LAST(,A,B)说明:区间存在用法:LAST(,A,B)表示条件在前M周期到前N周期存在例如:LAST(CLOSE>OPEN,10,5)表示从前10日到前5日内一直阳线。若A为0,表示从第一天开始,B为0,表示到最后日止。.z.-4.7数学函数函数:ABS()说明:求绝对值用法:ABS()返回的绝对值例如:ABS(-34)返回34----------------------函数:BETWEEN(A,B,C)说明:介于(介于两个数之间)用法:用法:BETWEEN(A,B,C)表示A处于B和C之间时返回1,否则返回0例如:BETWEEN(CLOSE,MA(CLOSE,10),MA(CLOSE,5))表示收盘价介于5日均线和10日均线之间----------------------函数:MA(A,B)说明:求最大值用法:MA(A,B)返回A和B中的较大值例如:MA(CLOSE-OPEN,0)表示若收盘价大于开盘价返回它们的差值,否则返回0----------------------函数:MIN(A,B)说明:求最小值用法:MIN(A,B)返回A和B中的较小值例如:MIN(CLOSE,OPEN)返回开盘价和收盘价中的较小值----------------------函数:MOD(A,B)说明:求模运算用法:MOD(A,B)返回A对B求模例如:MOD(26,10)返回6----------------------函数:NOT()说明:求逻辑非用法:NOT()返回非,即当=0时返回1,否则返回0例如:NOT(ISUP)表示平盘或收阴----------------------函数:RANGE(A,B,C)说明:围(于个围之间)用法:RANGE(A,B,C)表示A大于B同时小于C时返回1,否则返回0例如:RANGE(CLOSE,MA(CLOSE,5),MA(CLOSE,10))表示收盘价大于5日均线并且小于10日均线----------------------函数:REVERSE()说明:求相反数用法:REVERSE()返回-例如:REVERSE(CLOSE)返回-CLOSE----------------------.z.-函数:SGN()说明:求符号值用法:用法:SGN(),当>0,=0,<0分别返回1,0,-1例如:SGN(10)返回1,SGN(0)返回0,SGN(-10)返回-1----------------------函数:ACOS()说明:反余弦值用法:ACOS()返回的反余弦值例如:ACOS(CLOSE)返回CLOSE的反余弦值----------------------函数:ASIN()说明:反正弦值用法:ASIN()返回的反正弦值例如:ASIN(CLOSE)返回CLOSE的反正弦值----------------------函数:CEILING(A)说明:向上舍入(向数值增大方向舍入)用法:CEILING(A)返回沿A数值增大方向最接近的整数例如:CEILING(12.3)求得13;CEILING(-3.5)求得-3----------------------函数:COS()说明:余弦值用法:COS()返回的余弦值例如:COS(CLOSE)返回收盘价的余弦值----------------------函数:EP()说明:指数用法:EP()为e的次幂例如:EP(CLOSE)返回e的CLOSE次幂----------------------函数:FLOOR(A)说明:向下舍入(向数值减小方向舍入)用法:FLOOR(A)返回沿A数值减小方向最接近的整数例如:FLOOR(12.3)求得12;FLOOR(-3.5)求得-4----------------------函数:INTPART(A)说明:取整(绝对值减小取整,即取得数据的整数部分)用法:INTPART(A)返回沿A绝对值减小方向最接近的整数例如:INTPART(12.3)求得12,INTPART(-3.5)求得-3----------------------函数:LN()说明:求自然对数.z.-用法:LN()以e为底的对数例如:LN(CLOSE)求收盘价的对数----------------------函数:LOG()说明:以10为底的对数用法:LOG()取得的对数例如:LOG(100)等于10----------------------函数:POW(A,B)说明:乘幂用法:POW(A,B)返回A的B次幂例如:POW(CLOSE,3)求得收盘价的3次方----------------------函数:SIN()说明:正弦值用法:SIN()返回的正弦值例如:SIN(CLOSE)返回CLOSE的正弦值----------------------函数:SQRT()说明:开平方用法:SQRT()为的平方根例如:SQRT(CLOSE)收盘价的平方根----------------------函数:TAN()说明:正切值用法:TAN()返回的正切值例如:TAN(CLOSE)返回CLOSE的正切值4.8统计函数函数:AVEDEV(,N)说明:平均绝对偏差用法:平均绝对偏差,求的N日平均绝对偏差例如:AVEDEV(CLOSE,20),求收盘价的20日平均绝对偏差----------------------函数:DEVSQ(,N)说明:数据偏差平方和用法:数据偏差平方和,求的N日数据偏差平方和例如:DEVSQ(CLOSE,20),求收盘价的20日数据偏差平方和----------------------函数:FORCAST(,N)说明:线性回归预测值用法:FORCAST(,N)为的N周期线性回归预测值例如:FORCAST(CLOSE,10)表示求10周期线性回归预测本周期收盘价----------------------函数:SLOPE(,N).z.-说明:线性回归斜率用法:SLOPE(,N)为的N周期线性回归线的斜率例如:SLOPE(CLOSE,10)表示求10周期线性回归线的斜率----------------------函数:STD(,N)说明:估算标准差用法:STD(,N)为的N日估算标准差例如:STD(CLOSE,10),求10周期收盘价的估算标准差----------------------函数:STDP(,N)说明:总体标准差用法:STDP(,N)为的N日总体标准差例如:STDP(CLOSE,20),求收盘价的20日总体标准差----------------------函数:VAR(,N)说明:估算样本方差用法:VAR(,N)为的N日估算样本方差例如:VAR(CLOSE,20),求收盘价的20日总体标准差----------------------函数:VARP(,N)说明:总体样本方差用法:VARP(,N)为的N日总体样本方差例如:VARP(CLOSE,20),求收盘价的20日总体样本方差4.9指标函数函数:COST()说明:成本分布用法:COST()表示%获利盘的价格是多少例如:COST(10),表示10%获利盘的价格是多少,即有10%的持仓量在该价格以下,其余90%在该价格以上,为套牢盘该函数仅对日线分析周期有效----------------------函数:PEAK(K,N,M)说明:前M个波峰值用法:PEAK(K,N,M)表示之字转向ZIG(K,N)的前M个波峰的数值,M必须大于等于1例如:PEAK(1,5,1)表示%5最高价ZIG转向的上一个波峰的数值.----------------------函数:PEAKBARS(K,N,M)说明:前M个波峰位置用法:PEAKBARS(K,N,M)表示之字转向ZIG(K,N)的前M个波峰到当前的周期数,M必须大于等于1.例如:PEAK(0,5,1)表示%5开盘价ZIG转向的上一个波峰到当前的周期数----------------------函数:SAR(N,S,M)说明:抛物转向.z.-用法:SAR(N,S,M),N为计算周期,S为步长,M为极值例如:SAR(10,2,20)表示计算10日抛物转向,步长为2%,极限值为20%----------------------函数:SARTURN(N,S,M)说明:抛物转向点用法:SARTURN(N,S,M),N为计算周期,S为步长,M为极值,若发生向上转向则返回1,若发生向下转向则返回-1,否则为0;其用法与SAR函数相同。例如:SAR(10,2,20)表示计算10日抛物转向点,步长为2%,极限值为20%,若发生向上转向则返回1,若发生向下转向则返回-1,否则为0----------------------函数:TROUGH(K,N,M)说明:前M个波谷值(前M个ZIG转向波谷值)用法:TROUGH(K,N,M)表示之字转向ZIG(K,N)的前M个波谷的数值,M必须大于等于1例如:TROUGH(2,5,2)表示%5最低价ZIG转向的前2个波谷的数值----------------------函数:TROUGHBARS(K,N,M)说明:前M个波谷位置用法:TROUGHBARS(K,N,M)表示之字转向ZIG(K,N)的前M个波谷到当前的周期数,M必须大于等于1例如:TROUGH(2,5,2)表示%5最低价ZIG转向的前2个波谷到当前的周期数----------------------函数:WINNER(CLOSE)说明:获利盘比例用法:WINNER(CLOSE),表示以当前收市价卖出的获利盘比例,该函数仅对日线分析周期有效例如:返回0.1表示10%获利盘;WINNER(10.5)表示10.5元价格的获利盘比例。----------------------函数:ZIG(K,N)说明:之字转向用法:ZIG(K,N),当价格变化量超过N%时转向,K表示0:开盘价,1:最高价,2:最低价,3:收盘价例如:ZIG(3,5)表示收盘价的5%的ZIG转向----------------------函数:COSTE(A,B)说明:区间成本用法:COSTE(A,B),表示两日收盘价格间筹码的成本例如:COSTE(CLOSE,REF(CLOSE)),表示近两日收盘价格间筹码的成本.返回10表示区间成本为10元.----------------------函数:PWINNER(N,)说明:远期获利盘比例用法:PWINNER(N,)表示N天前的那部分成本以当前收市价卖出的获利盘比例.z.-例如:PWINNER(5,CLOSE),表示5天前的那部分成本以当前收市价卖出的获利盘比例,例如返回0.1表示10%获利盘.该函数仅对日线分析周期有效.----------------------函数:LWINNER(N,)说明:近期获利盘比例用法:LWINNER(N,)表示最近5天的那部分成本以当前收市价卖出的获利盘比例例如:LWINNER(5,CLOSE),表示最近5天的那部分成本以当前收市价卖出的获利盘比例,例如返回0.1表示10%获利盘.该函数仅对日线分析周期有效.----------------------函数:PPART(N)说明:远期成本分布比例用法:PPART(N)表示N天前的成本占总成本的比例例如:PPART(10),表示10前的成本占总成本的比例,返回0.2表示20%4.10绘图函数函数:DRAWICON(COND,PRICE,TYPE)说明:在图形上绘制小图标用法:DRAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标。例如:DRAWICON(CLOSE>OPEN,LOW,1)表示当收阳时在最低价位置画1号图标。----------------------函数:DRAWLINE(COND1,PRICE1,COND2,PRICE2,EPAND)说明:在图形上绘制直线段用法:当COND1条件满足时,在PRICE1位置画直线起点;当COND2条件满足时,在PRICE2位置画直线终点;EPAND为延长类型。COND1,表示条件变量1;PRICE1,表示第一个画线点,通常取值为H,L,C,O等等;COND2,表示条件变量2;PRICE2,表示第二个画线点;EPAND,常数变量。1、向右延伸;2、向左延伸;3、左右同时延伸;例如:DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,LOW<=LLV(LOW,20),LOW,1)表示在创20天新高与创20天新低之间画直线并且向右延长。----------------------函数:DRAWKLINE(HIGH,OPEN,LOW,CLOSE)说明:在图形上画自定K线用法:以HIGH为最高价,OPEN为开盘价,LOW为最低,CLOSE收盘画K线例如:DRAWKLINE(HIGH,OPEN,LOW,CLOSE),以HIGH为最高价,OPEN为开盘价,LOW为最低,CLOSE收盘画K线----------------------函数:DRAWTET(COND,PRICE,TET)说明:在图形上显示文字.z.-用法:当COND条件满足时,在PRICE位置书写文字TET例如:DRAWTET(CLOSE/OPEN>1.08,LOW,\'大阳线\')表示当日涨幅大于8%时在最低价位置显示\'大阳线\'字样。----------------------函数:POLYLINE(COND,PRICE)说明:在图形上绘制折线段用法:当COND条件满足时,以PRICE位置为顶点画折线连接。COND,表示条件变量1;PRICE,表示绘图点的位置;例如:POLYILINE(HIGH>=HHV(HIGH,20),HIGH)表示在创20天新高点之间画折线。----------------------函数:STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY)说明:在图形上绘制柱线用法:当COND条件满足时,在PRICE1和PRICE2位置之间画柱状线;宽度为WIDTH(10为标准间距),EMPTH不为0则画空心柱;COND,表示条件变量1;PRICE1,表示第一个绘图点的位置;PRICE2,表示第二个绘图点的位置;WIDTH,表示所绘制的柱线的宽度;取值的围0-9,宽度依次递增,取0时为一条线,在主图K线的柱宽为8;EMPTY,表示柱线空心与否,EMPTY取1为空,取0为否;例如:STICKLINE(CLOSE>OPEN,CLOSE,OPEN,0.8,1)表示画K线中阳线的空心柱体部分。绘图参数绘图参数不是函数,它描述待画图形的样式,将其插入到每个指标公式后面,用逗号分隔开。绘图参数名称说明LINETHlCK画线线型粗细,格式"LINETHICK(1-9)”;参数的取值围在1—9之间,"LINETHICK1”表示最细的线而"LINETHICK9”表示最粗的线;STICK画柱线在指标点和零线之间画柱线。COLORSTICK画彩色线同上,并用不同颜色区分上涨、下跌或其他线。系统内含6条颜色线LINESTICK指标线和柱线指标线和柱线都画。VOLSTICK画成交量线收市价高于昨日的,画红色空心实体;否则画绿色实心实体。CROSSDOT"”点状线CIRCLEDOT"0”点状线POINTDOT小圆点线例如:NEWC:CLOSE,CIRCLEDOT;表示以"0”点状线画每日.z.-收盘价。颜色参数颜色参数不是函数,它描述待画图形的颜色,将其插入到每个指标公式后面,用逗号分隔开。COLORBLACKCOLORBLUECOLORGREEN绿色COLORCYAN青色COLORRED红色COLORMAGENTA洋红色COLORBROWN棕色COLORLIGHTGRAY淡灰色COLORGRAY深灰色COLORLIGHTBLUE淡蓝色COLORLIGHTGREEN淡绿色COLORLIGHTCYAN淡青色COLORLIGHTRED淡红色COLORLIGHTMAGENTA淡洋红色COLORYELLOW黄色COLORWHITE白色颜色描述符还可以自定义颜色,格式为COLOR+"RRGGBB”:RR、GG、BB表示红色、绿色和蓝色的分量,每种颜色的取值围是00-FF,采用了16进制。例如:MA5:MA(CLOSE,5),COLOR00FFFF表示纯红色与纯绿色的混合色:COLOR808000表示淡蓝色和淡绿色的混合色。常用色码colorcccc99colorcccc00.z.-colorffcc00colorffffcccolorffff00color00ff00color00ff99color66cc99color009999color006666color00cccccolor0066ffcolor0000ffcolor003399colorff33cccolorff3399(参见《附件》--颜色代码表)4.11横向统计函数函数:HORCALC(\'\',cont1,cont2,cont3)说明:数据项:100-HIGH,101-OPEN,102-LOW,103-CLOSE,104-VOL,105-涨幅计算方式:0-累加,1-排名次权重:0-总股本,1-流通股本,2-等同权重,3-流通市值.z.-注意:板块名称要用单引号用法:HORCALC(板块名称,数据项,计算方式,权重)例如:HORCALC(\'自选股\',103,0,1);以自选股板块股票的总股本为权重,以收盘价为数源进行累加。------------函数:BLOCKSETNUM(板块名称)说明:统计板块中股票数量用法:BLOCKSETNUM(板块名称)注意:板块名称要用单引号例如:BLOCKSETNUM(\'ST板块\'),返回"ST板块”数量。第5节常用技术指标MACDTRIOBVRSICCIPSYDMIBRARASIW%RROCCDPDMACREMVSARMIKEEPMAVRWVADKDJBOLL传统行情绘图函数(1)、画图标DRAWICON绘制图标在图形上绘制小图标。用法:DRAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标。例如:DRAWICON(CLOSE>OPEN,LOW,1)表示当收阳时在最低价位置画1号图标。图标一共有九个,图形如附图。传统图标有九个,现在新增到27个,图标各有其序号。(2)、显示文字DRAWTET显示文字在图形上显示文字。用法:DRAWTET(COND,PRICE,TET),当COND条件满足时,在PRICE位置书写文字TET。例如:DRAWTET(CLOSE/OPEN>1.08,LOW,\'大阳线\')表示当日涨幅大于8%时在最低价位置显示\'大阳线\'字样。(3)、画柱线STICKLINE在图形上绘制柱线.用法:STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY),当COND条件满足时,在PRICE1和PRICE2位置之间画柱状线,宽度为WIDTH(10为标准间距),EMPTH不为0则画空心柱。例如:STICKLINE(CLOSE>OPEN,CLOSE,OPEN,0.8,1)表示画K线中阳线的空心柱体部分。(4)、画K线DRAWKLINE绘制K线用法:.z.-DRAWKLINE(HIGH,OPEN,LOW,CLOSE).以HIGH为最高价,OPEN为开盘价,LOW为最低,CLOSE收盘画K线。(5)、画直线段DRAWLINE在图形上绘制直线段.用法:DRAWLINE(COND1,PRICE1,COND2,PRICE2,EPAND)当COND1条件满足时,在PRICE1位置画直线起点,当COND2条件满足时,在PRICE2位置画直线终点,EPAND为延长类型。例如:DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,LOW<=LLV(LOW,20),LOW,1)表示在创20天新高与创20天新低之间画直线并且向右延长。(6)、画折线段PLOYLINE在图形上绘制折线段。用法:PLOYLINE(COND,PRICE),当COND条件满足时,以PRICE位置为顶点画折线连接。例如:PLOYLINE(HIGH>=HHV(HIGH,20),HIGH)表示在创20天新高点之间画折线。新增绘图函数画带状线DRAWBAND画出带状线.DRAWBAND(VAL1,COLOR1,VAL2,COLOR2),当VAL1>VAL2时,在VAL1和VAL2之间填充COLOR1;当VAL1例如:DRAWBAND(OPEN,RGB(0,224,224),CLOSE,RGB(255,96,96));自定色RGB将自定颜色作为数值输出.RGB(Red,Green,Blue),输出为0BBGGRR,参数使用十进制数,围为0至255,以最近一个周期数值为准。例如:RGB(0,0,255)输出结果为16进制的0FF0000。画数字DRAWNUMBER画出数字.DRAWNUMBER(COND,PRICE,NUMBER),当COND条件满足时,在PRICE位置书写数字NUMBER。例如:DRAWNUMBER(CLOSE/OPEN>1.08,LOW,C)表示当日涨幅大于8%时在最低价位置显示收盘价。画定点数字DRAWNUMBER_FI固定位置显示数字.DRAWNUMBER_FI(COND,,Y,TYPE,NUMBER),当COND条件满足时,在当前指标窗口内(,Y)位置书写数字NUMBER,,Y为书写点在窗口中相对于左上角的百分比,TYPE:0为左对齐,1为右对齐。例如:DRAWNUMBER_FI(CURRBARSCOUNT=1ANDCLOSE/OPEN>1.08,0.5,0.5,0,C)表示最后一个交易日涨幅大于8%时在窗口中间位置显示收盘价。定点文字DRAWTET_FI固定位置显示文字.DRAWTET_FI(COND,,Y,TYPE,TET),当COND条件满足时,在当前指标窗口内(,Y)位置书写文字TET,,Y为书写点在窗口中相对于左上角的百分比,TYPE:0为左对齐,1为右对齐。例如:DRAWTET_FI(CURRBARSCOUNT=1ANDCLOSE/OPEN>1.08,0.5,0.5,0,\'大阳线\')表示最后一个交易日涨幅大于8%时在窗口中间位置显示\'大阳线\'字样。例如:DRAWTET_FI(ISLASTBAR,0,0,0,STRCAT(Z3,GNBLOCK)),COLOR00C0C0;DRAWTET(ISLASTBAR,LOW,DYBLOCK);在最后一个交易日的最高价位置打印所属地域板块所属地域NAMELIKEINBLOCKDYBLOCK返回股票所属行业.DRAWTET(ISLASTBAR,HIGH,HYBLOCK);在最后一个交易日的最高价位置打印所属行业板块所属行业ISLASTBAR判断是否为最后一个周期DYBLOCK地域板块GNBLOCK概念板块HYBLOCK行业板块字符串相加STRCAT(A,B):将两个字符串A,B相加成一个字符串C.例如:STRCAT(\'多头\',\'开仓\'):将两个字符串\'多头\',\'开仓\'相加成一个字符串\'多头开仓\'通达信的绘图参数:空线条NODRAW不画该线无效数DRAWNULL不画线虚线DOTLINE画虚线小圆点线POINTDOT画小圆点线小.z.-圆圈线CIRCLEDOT画小圆圈线小叉线CROSSDOT画小叉线柱状线STICK画柱状线成交量柱状线VOLSTICK,画成交量柱状线当股价上涨时显示红色空心柱,则显示绿色实心柱彩色柱状线COLORSTICK画彩色柱状线指标柱状线LINESTICK同时画出柱状线和指标线线型粗细LINETHICK格式"LINETHICK+(1-9)”;参数的取值围在1—9之间,"LINETHICK1”表示最细的线,而"LINETHICK9”表示最粗的线;各种颜色表示:画白色白色COLORWHITE画黄色黄色COLORYELLOW画淡洋红色淡洋红色COLORLIMAGENTA画淡红色淡红色COLORLIRED画淡青色淡青色COLORLICYAN画淡绿色淡绿色COLORLIGREEN画淡蓝色淡蓝色COLORLIBLUE画深灰色深灰色COLORGRAY画淡灰色淡灰色COLORLIGRAY画棕色棕色COLORBROWN画洋红色洋红色COLORMAGENTA画红色红色COLORRED画青色青色COLORCYAN画绿色绿色COLORGREEN画蓝色蓝色COLORBLUE画黑色黑色COLORBLACK自定义色格式为COLOR+"BBGGRR”:BB、GG、RR表示蓝色、绿色和红色的分量,每种颜色的取值围是00-FF,采用了16进制。粉红colorf00ff0、草绿color00ff00、淡蓝colorf0f000、紫色colorff0099、金黄色color008364、紫红color000999、综色color0055ff、深黄色color00cccc、紫罗蓝colore66878、天蓝色colorff937f深草绿color399c7f例如:MA5:MA(CLOSE,5),COLOR00FFFF表示纯红色与纯绿色的混合色:COLOR808000表示淡蓝色和淡绿色的混合色。第1节简介TD的公式系统是一套功能强大、使用简单的计算机描述系统。用户可以通过对每日深沪两地交易所和历史上发送的行情数据按照简单的运算法则进行分析、选股、测试,在TD当中一共提供了四大类公式编辑器:1.1技术指标公式编辑器技术指标公式即通常所说画线指标,此类公式的主要目的是通过对数据采取一定的运算,将输出结果直观的显现在分析图上,为投资者提供研判行情的基本依据。此类指标至少要有一条输出线,本系统允许最多6条的输出线。技术指标公式编辑器实现对技术图表分析中各类技术指标和自我定义的技术分析指标的编写,并且通过TD的分析界面形成图表、曲线,以方便和寻找有意义的技术图形和技术特征。1.2条件选股公式编辑器也就是通常意义上解释的智能选股。但我们的目的在于建立一个完全开放、自由的选股平台,可以通过对该平台的熟练使用,借助计算机的高速和准确的检索功能寻找满足您的理解的股票形态和技术特征,作到先知先觉,快人一步!并且提供相应的同样开放式的结果检测报告。.z.-1.3五彩K线公式编辑器准确讲,该编辑器的功能是附属于条件选股功能之上的,我们可以通过该功能将满足条件的连续K线形态赋予颜色,区别了其它的K线。条件选股公式与五彩K线公式的区别:条件选股公式和五彩K线公式都有且仅有一个输出,其目的都是为投资者提供买入或卖出点的指示,不同之处在于:条件选股公式仅对最近数据提示买入或卖出,而五彩K线公式则对输入的所有历史数据进行提示。另外,五彩K线公式的输出是在K线图上,通过各种颜色对提示数据进行标识,条件选股公式的输出是找出符合最近条件的所有股票。1.4交易系统公式编辑器交易系统公式是通过设定买入和卖出点(有且仅有这两个输出),由计算机进行模拟操作。以此为依据,系统一方面可以进行五彩K线公式的功能,同时提示买入和卖出;另一方面可以通过模拟操作,对指标买卖的收益、指标的最佳参数及最佳指标等各情形进行测试。交易系统是在条件选股功能上的一次大的延伸,旨在建立一套完整的交易规则体系,通过该编辑器对各个相关的交易环节,包括买入的切入、卖出、止损以及整体的交易性能检验等等作出定量的规定,帮助投资者建立一套属于自己的买卖规则和理论。TD系统所有的分析方法,包括技术指标、条件选股、交易系统和五彩K线,均采用开放平台进行描述。也就是说,所有分析方法的算法对用户时开放的,任何人都可以对原算法进行修改,或增加自己的新算法。1.5公式管理器快捷键:Ctrl+F在公式管理器中,用户可以对系统公式进行全面管理,包括新建公式,修改公式算法、引入、输出公式、设置组合条件等。公式管理器用树形结构显示系统中存在的所有分析方法,包括指标公式、条件选股公式、交易系统公式、五彩K线公式和组合条件。需要对哪一类公式进行处理,可以用鼠标点取将该类公式展开,直到找到需要的公式名称。查找公式可以从公式组、全部、系统和自编四种列表方始中选择,公式组方式便于分类管理,全部方式便于有公式名称直接查找,系统方式便于系统内置常用指标的快速查找,而自编方式则便于查找自己编写的或从外部引入的公式。公式管理器可管理四种类型的公式:指标公式:用于指标图形的绘制。条件选股公式:用于条件选股。交易系统公式:用于专家指示及测参、测指。五彩K线公式:用于K线模式指示。这四种公式相互独立,名称可以相同,但其内容和作用不同。每种类型的公式包括四种形式:系统加密公式:用绿色图标和锁形符号显示,要进行密码确认系统公式:用绿色图标显示,可进行删改用户加密公式:用红色图标和锁形符号显示,要进行密码确认用户公式:用红色图标显示,可进行删改指标公式附加买卖逻辑判断式,得到交易系统公式;指标公式附加选股条件逻辑判断式,得到条件选股公式。指标公式附加色彩逻辑判断,得到五彩K线公式。.z.-1.6公式编辑器调出公式管理器方法:1.点击新建或修改按钮;2.鼠标左键单击指标线、指标参数选中指标,再用右键单击,弹出的对话框中选中"修改指标公式”,系统弹出公式编辑器。公式编辑其中包含许多输入窗口和按钮,功能分别为:公式名称用于识别公式,最多可以有9个字符,该名称在每一类分析方法必须唯一,例如不能出现两个MA技术指标,但可以出现一个MA技术指标和一个MA条件选股指标。公式描述简单描述该指标的用途,可以输入任意字符。密码保护选中密码保护,表示将对该公式加密,加密密码输入到密码输入框中。对于已加密的公式,今后对它进行修改和查看必须先输入密码,在输出公式到文件时也需要密码。要去掉密码,点击"密码保护”,使它前面的√消失即可。画线方法这组单选按钮用于指定指标公式类型,紧密围绕股票价格变化的指标可定为主图叠加类型,叠加在主图上显示;否则定为副图指标,显示在副图上。(仅在编辑技术指标公式时出现)参数公式可以带有0-6个参数,使用参数可以方便地使用中需要修改得数值进行调整。每个参数需要设定参数名称、最小值、最大值和缺省值。坐标位置可指定在些特殊位置画水平坐标线,例如对RSI,可以输入:0;20;50;系统将在这三个数值处绘制三条水平坐标线。缺省时为"自动”,即系统据实际情况定水平坐标线。(深红色线)(仅在编辑副图技术指标时出现)额外Y轴分界:在副图坐标中显示重要的数值分界线(白色线);测试公式检查公式的语法错误。引入指标公式以系统已有的个指标公式为蓝本,新建自己的指标公式。插入函数显示选择函数对话框,帮助您在通达信函数集中寻找所需函数。当您对系统提供的标准函数还不熟时,这个功能可帮你节省时间。用法注释供用户输入指标算法、用法的解释,在使用公式时提示操作方法及注意事项。动态提示用户输入指标、算法或函数时,同步提示中文语意。参数精灵在使用分析工具时,很多时候用户都需要调整参数,但很多用户无法理解对参数调整的实际意义。使用参数精灵,可以将参数调整及参数意义放在同一段文字中,方便用户使用。用户在使用分析方法时,会在指标旁边显示参数精灵的内容。参数精灵的内容是由公式剪辑者输入的一段文字,该文字描述了参数的使用方法,并且可以将参数设置与文字混合编辑。方法是用Param#N来代替参数即可。例如:公式中有两个参数M和N,需要描述当M日均线与N日均线金叉时买入,可以这样写参数精灵:Param#1日均线与Param#2日均线发生金叉,发出买入信号在实际使用该分析方法时,系统将显示:5日均线与10日均线发生金叉,系统发出买入信号其中被包围在输入框中的5和10是参数,用户可以直接修改这些参数,而实际运算时将采用这些参数进行计算。使用参数精灵大大降低了公式的使用难度。公式编辑窗公式编辑窗用于书写分析方法的算法,是公式编辑器的核心部分。用户可以将自己的算法用公式语法书写到编辑窗中,关于公式语法请参见附录。.z.-公式编辑器在使用上十分灵活,支持丰富的键盘操作和鼠标操作。基本的键盘定义如下所示:热键功能↑、↓、←、→上,下,左,右移动光标INSERT插入/覆盖切换Ctrl+P括号匹配查找Ctrl+A全选Ctrl+C复制选中文本Ctrl+V粘贴文本Ctrl+Z取消操作Ctrl+Y恢复操作Ctrl+↑上滚一行Ctrl+↓下滚一行Ctrl+←左移一个单词Ctrl+→右移一个单词Ctrl+Home移至文件最头部Ctrl+End移至文件最尾部Ctrl+鼠标左键选中当前鼠标下的一个单词Ctrl+鼠标右键在钩槽中将全部文本选中Shift+↑向上选中一行Shift+↓向下选中一行Shift+←向左选中一个字母Shift+→向右选中一个字母Shift+鼠标左键在钩槽中将当前一行文本选中Ctrl+Shift+←/→以单词为单位的选中Ctrl+Shift+Space显示当前函数或指标的TOOLTIP提示(只在函数内部有效)TAB键存在选中文本时,若是多行,将选中文本全部右移一个TAB单位(智能的距离),若是单行,将选中文本删除后右移一个TAB单位;不存在选中文本时,简单右移一个TAB单位Shift+TAB键将选中文本左移一个TAB单位(只在右多行选中文本时有效)鼠标右键单击右键菜单鼠标左键双击选中当前光标下的一个单词第2节公式编写规则所有的公式系统都是遵守统一的运算法则,统一的格式进行函数之间的计算,所以我们掌.z.-握了技术指标公式的基本原理,其他的公式也不会出脱其外。例如指标公式:KDJ,右键点击KDJ,选择"编辑公式”后打开公式算法编辑器,显示出KDJ指标公式的内容。参数名称:缺省值,最小值,最大值N:9,1,10OM1:3,2,40M2:3,2,40RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))100;K:SMA(RSV,M1,1);D:SMA(K,M2,1);J:3K-2D;该公式绘制K、D、J三条指标线。RSV行是一个中间语句,计算当期收盘价与N天内最低价之差除以N内最高价与最低价之差的比值,再乘以系数100。K线为RSV的M1天移动平均线,D线为线K的M2天移动平均线,J线为K线与J线的差值。分析以上公式,我们可以引出以下相关的格式和法则的结论:2.1数据引用A数据来源公式中的基本数据来源于接收的每日行情数据,这些数据由行情函数从数据库中按照一定的方式提取,例如、高开低收、成交量、成交额等等。B数据类型按照公式使用的数据类型,系统可以处理的数据分为两类:变量和常量。所谓变量就是一个随着时间变化而变化的数据,例如成交量;常量就是永远不变的数据。例如3,每个函数需要的参数可能是变量也可能是常量,不能随便乱用,函数计算的结果一般是一个变量。例如计算收盘价均线MA(CLOSE,5),MA函数要求第一个参数为变量,而CLOSE函数返回的正是一个变量;MA函数要求的第二个参数是常量,5就是一个常量,所以我们就不能这样书写:MA(5,CLOSE)。2.2特殊数据引用A指标数据引用:经常地编制公式的过程当中,需要使用另外一个指标的值,如果按照通常的做法,重新编写过这个指标显得麻烦,因此有必要学习使用如何调用别的指标公式。基本的格式为:"指标.指标线”(参数)a)指标和指标线之间用逗号分开,一个指标不—定只有一条指标线,所以有必要在指标后标注指标线的名称,但是如果缺失则表示引用最后一条指标线。b)参数在表达式的末尾,必须用括号括起来,参数之间用逗号分开,通过参数设置可以选择设定该指标的参数,如果参数缺失则表示使用该指标的默认参数设置。c)整个表达式用引号引在其中,除参数以外。例如:"MACD.DEA”(26,12,9)表示计算MACD指标的DEA指标线。计算参数为26、11、9,"MACD”(26,12,9)表示该指标的最后一条指标线,计算参数是26、12、9,"MACD”表示该指标的最后—条指标线并且使用公式的默认参数。B跨周期引用指标数据:a)引用大盘数据:引用大盘数据时使用下列函数:INDEC/NDEV,等等!b)引用个股数据:引用个数据时使用下列格式:"股票代码$数据”.在以上格式当中调用CLOSE,VOL,AMOUNT等等!例如"000002$VOL\'表000002该股本周期的成交.z.-量。"999998$CLOSE"同样也可以表示为A股指数本周期的收盘价,此时的A股指数被视为一只个股。C其它股票数据引用:使用以下的格式可以在当前的分析界面下引用大盘的数据或者其它个股的数据实现横向上的对比。a)引用大盘数据:引用大盘数据时使用下列函数:INDEC/NDEV,等等!b)引用个股数据:引用个数据时使用下列格式:"股票代码$数据”.在以上格式当中调用CLOSE,VOL,AMOUNT等等!例如"000002$VOL\'表000002该股本周期的成交量。"999998$CLOSE”同样也可以表示为A股指数本周期的收盘价,此时的A股指数被视为一只个股。2.3公式构成A公式语句所有的公式体由若干语句按照一定的格式组成,每个语句表示一个计算结果,根据各个语句的功能分为两大类语句,一类是赋值语句,一类是中间表达式。B赋值语句:在技术指标"B:AZ”和"c:B0.618”就是分别两条指标线,语句间用分号隔开。该语句被称为赋值语句,在技术指标当中,赋值语句的计算结果将会被计算机执行并形成相应的图形。每个语句可以有一个名称,该名称写在语句的最前面,并用一个冒号将它与语句分隔开。例如:ST:MA(CLOSE,5);表示该语句求收盘价的五日均线,语句的名称为ST。在该语句后的语句中可以直接用ST来替代MA(CLOSE,5),例如:MA(ST,5)表示对收盘价的五日均线再求五日平均。C中间语句;一个语句如果不需要显示,可以将它定义为中间语句,例如在上例当中的第一句"A:=+Y;”,这样该语句就不会披系统辨认为是指标线了。中间语句用":=”替代冒号,其它与一般语句完全一样。使用中间语句可以有效降低公式的书写难度,还可以将需要重复使用的语句定义成中间语句以减少计算量。每个公式最多可以分6个语句,中间公式数量没有限制,所有语句之间需要使用分号隔开。D公式计算符公式计算符将函数连接成为公式。计算分为算术计算符和逻辑计算符。a)算术计算符包括十、一、、/,它们分别对计算符两边的数据进行加减乘除计算,这同一般意义上的算术计算没有差异。b)逻辑计算符包括>、<、<>、>=、<=、=、AND、OR八种,分别表示大于、小于、不等于、大于等于、小于等于、等于、逻辑与、逻辑或运算,如果条件成立计算结果就等于1,否则等于0。例如:3+4等于7,4>3就等于1。"逻辑与”表示两个条件都成立时结果才成立:"逻辑或”表示两个条件中只要有一个成立结果成立。例如:4>3ANDl2>=4的结果等于1,4>30R3>12的结果等于1。E线形描述符对于技术指标公式可以在语句加上线形描述符.用来表示如何画该语句描述的指标线。线形描述符包括以下7种。描述符写在语句后分号前,用逗号将它与语句分隔开,例如在上例当中加入一句线形描述符,c:B0.618,COLORSTICK;该语句在被执行时,会在图中添加彩色柱线,该功能在编制MACD等指标的时候会显出它的用处。柱状线.z.-名称含义STICK彩色柱状线,当值为正时显示虹色,否则显示绿色。COLORSTICK为线形赋色,COLORRED为线形赋红色COLORBLUE为线形赋蓝色COLORYELLOW表示黄色线VOLSTICK成交量柱状线,股价上涨显示红色空心柱,则显示绿色实心柱LINESTICK同时画出柱状线和指标线LINETHICK对线体的粗细作出描述CROSSDOT小叉线CIRCLEDOT小圆圈线POINTDOT小圆点线a)COLORRED等三个线形描述符还可以自定义颜色,格式为COLOR+"BBGGRR”:BB、GG、RR表示蓝色、绿色和红色的分量,每种颜色的取值围是00-FF,采用了16进制。例如:MA5:MA(CLOSE,5),COLOR00FFFF表示纯红色与纯绿色的混合色:COLOR808000表示淡蓝色和淡绿色的混合色。b)LINETHlCK可以允许对线型的粗细进行白定义的描述,格式LINETHICK+(1-9)”;参数的取值围在1—9之间,"LINETHICK1”表示最细的线,而"LINETHICK9”表示最粗的线;2.4关于无效数的问题所谓无效数即指没有数据。在些情况下,一些数据项可能取不到数据,这时返回值为无效数。例如,MA(CLOSE,500),其含义是该股票最近500天收盘价的均价,如果有些公司上市时间较短没有500天,则其值为无效数。反应在分析图上则该指标线不显示。在TD分析系统中函数NODRAW代表无效数,可作为常数使用。无效数与任何数作计算,其结果仍为无效数。例如:7NODRAW得到的结果仍为NODRAW。第3节公式编写示例•公式示例•指标公式:均线通道•选股公式:均线通道•五彩K线公式:均线通道•交易系统公式:均线通道•颜色参数应用:MACDK•新增函数应用:HORCALC()•新增函数应用:BLOCKSETNUM(板块名称)3.1简单公式这里举一些最简单的公式例子,有些只有一条语句且函数简单,较复杂的公式中函数复杂且语句较多。.z.-收盘价线这是最简单的公式:CLOSE;均线计算N日内收盘价的算术平均值,它是最常用的指标之一,公式为:MA(CLOSE,5);其中的MA(,N)表示的N日平均。涨幅涨幅指今日收盘价相对于昨日收盘价的变动幅度,即(今日收盘价-昨日收盘价)/昨日收盘价100%,昨日收盘价的公式为:REF(CLOSE,1),因此涨幅的公式:(CLOSE-REF(CLOSE,1))/REF(CLOSE,1);换手率换手率指当期的成交量占流通股本的比例。公式:VOL/CAPITAL;VOL为当期成交量,CAPITAL为流通股本。创新高创新高指当日最高价是最近一段时间的最高价:HIGH=HHV(HIGH,N);其中的HIGH为当期最高价,HHV(,N)是求N周期内最高值。因此该公式的含义是当日最高价创N日新高时返回值为1,否则为0。横盘整理横盘整理指最近一段时期价格在一定幅度之内摆动:(HHV(CLOSE,10)-LLV(CLOSE,10))/CLOSE<0.05;其中的LLV(,N)是求N周期内最低值。因此该公式表示10日收盘价振幅振幅在5%以内。区间统计例如,要取得2002年2月1日到2002年12月30日间的最低价。思考一下,一段时间的最低价必然是该段时间内每个分析周期的最低价中最小的那个。所以我们要引用的数据是该段时间各分析周期的最低价,而不需要用到开盘价、收盘价或最高价;还要将不需要的数据,即区间外的数据设为0。语句为:LL:=IF(YEAR=2002ANDMONTH>=2ANDMONTH<=12,LOW,0);该语句用一个条件函数来判断时间是否处于规定区间,若是则返回最低价,否则返回0。我们再用LLV函数,就可求得该段时间最低的最低价:LLV(LL,N);N为日期参数,N为0,则上式表示:上市以来的最低价。技术指标公式技术指标公式用于绘制技术指标线。以KDJ指标为例,右键点击KDJ,选择"编辑公式”后打开公式算法编辑器,显示出KDJ指标公式的内容。参数名称:最小值最大值缺省值N:110O9M1:2403M2:2403RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))100;K:SMA(RSV,M1,1);.z.-D:SMA(K,M2,1);J:3K-2D该公式绘制K、D、J两条指标线。RSV行是一个中间语句,计算当期收盘价与N天内最低价之差除以N内最高价与最低价之差的比值,再乘以系数100。K线为RSV的M1天移动平均线;D线为线K的M2天移动平均线;J线为K线与J线的差值。条件选股公式条件选股用于选出满足条件的股票,条件选股公式用于显示条件是否满足的语句是一个逻辑表达式,条件满足,表达式的返回值为"1”,表示选中该股,条件不满足,返回值为为"0”,表示未选中。条件选股公式的其他公式必须是中间公式,而且要在逻辑表达式之前。以KDJ指标买入条件选股为例,右键点击"KDJ指标买入条件选股”,选择"编辑公式”后打开公式算法编辑器,显示出公式的内容。用KDJ随机指标作为买入条件是当J向上穿越0坐标线的时候公式写法为:参数名称:最小值最大值缺省值N:110O9M1:2403M2:2403RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))100;K:SMA(RSV,M1,1);D:SMA(K,M2,1);J:3K-2D;CROSS(J,0);如果直接引用指标公式,KDJ条件选股公式可以简写为:CROSS("KDJ.J"(N,M1,M2),0);交易系统公式交易系统公式用于描述交易系统。交易系统是一个完整的买卖过程。交易系统公式用来指示买入、卖出信号的语句是一个逻辑表达式,名称为TERLONG:多头买入EITLONG:多头卖出ENTERSHORT:空头买入EITSHORT:空头卖出四种信号条件满足,表达式的返回值为"1”,表示发出信号,条件不满足,返回值为"0”,表示不发出信号。交易系统公式的其他公式必须是中间公式,而且要在逻辑表达式之前。国内的股市只用到ENTERLONG,EITLONG,国内期货市场还用到ENTERSHORT,EITSHORT语句。当买入或卖出条件满足时,在什么时间、什么价位进行操作,可以选择本周期或次周期的开盘价、最高价、最低价、收盘价,在测试交易系统时将以设置的介入价格计算。若选择次周期最高价买入、次周期最低价卖出,则此时的测试是最为严格,若此时交易系统的表现仍令人满意,则说明该系统稳定性好。这里我们举例说明如何编写交易系统公式。以KDJ交易系统为例,右键点击"KDJ交易系.z.-统”,选择"编辑公式”后打开公式算法编辑器,显示出公式的内容。交易系统的买入条件为J向上穿越0;卖出条件为J向下穿越100。参数名称:最小值最大值缺省值N:110O9M1:2403M2:2403RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))100;K:SMA(RSV,M1,1);D:SMA(K,M2,1);J:3K-2D;ENTERLONG:CROSS(J,0);EITLONG:CROSS(100,J);如果直接引用指标公式,KDJ交易系统公式可以简写为:J:="KDJ.J"(N,M1,M2);ENTERLONG:CROSS(J,0);EITLONG:CROSS(100,J);K线模式公式K线模式公式用于描述单根K线或多根K线组合的种状态。K线模式公式用来指示模式的语句是一个逻辑表达式,最多可以设到6个,即K线图上最多可以有6种彩色。以KDJ指标K线模式为例,在五彩K线项下的其他栏中找到"KDJ随机指标”,用右键点击,选择"编辑公式”后打开公式编辑器,显示出公式的内容。将J线值小于0的K线显示为红色,将J线值大于100的K线显示为绿色。参数名称:最小值最大值缺省值N:110O9M1:2403M2:2403RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))100;K:=SMA(RSV,M1,1);D:=SMA(K,M2,1);J:=3K-2D;J<0,COLORRED;J>100,COLORGREEN;曙光初现是两根K线的组合,其模式构成为:1、第一天的K线是阴线,表示市势仍然向下;2、随后第二个交易日跳空低开;3、其后时间出现强劲反弹,填补缺口后上升超过上日收盘价。此图形如在底部出现,则称为曙光初现,显示市场可能见底回升。根据此模式建立的公式为:BACKSET(REF(CLOSE,1)/REF(OPEN,1)<0.97ANDCLOSE/OPEN>1.03ANDOPENREF(CLOSE,1),2)BACKSET(,N)是一个函数,若非0,则将当前位置到N周期前的数值设为1。第一个参数中的第一个式子表示前一个周期的K线是阴线,.z.-第二个式子表示当前周期的K线是阳线,第三个式子表示当前周期是跳空低开,第四个式子表示当前周期填补低开缺口后收盘于上日收盘价之上。第二个参数为2,表示若第一个参数中设置的条件全部成立,则用不同的颜色把当前周期和上一周期前的K线与其他K线区分开来。3.2指标公式:均线通道新建公式"均线通道”(JTD)1.使用快捷键Ctrl+F打开"公式管理器”。2.点击"新建”按钮,打开"公式编辑器”3.填写公式项"公式名称”---JTD,"公式描述”---"均线通道”参数(最小值)(最大值)(缺省值)#N:110026--------------------------------------------------VAR1:=MA(CLOSE,N);{对"VAR1”赋值}VAR2:=MA(CLOSE,2N);{对"VAR2”赋值}VAR3:=MA(CLOSE,3N);{对"VAR3”赋值}VAR4:=MA(CLOSE,4N);{对"VAR4”赋值}VAR5:=MA((VAR1+VAR2+VAR3+VAR4)/4,5);{一条多条均线的平均线}上轨:VAR51.08;{在均线"VAR5”上加上8%的幅度变成"上轨”}下轨:VAR50.92;{在均线"VAR5”上减去8%的幅度变成"下轨”}----------------------------------------------------4.指标类型:选"路径型”,还有大势型、超买超卖型、趋势型、能量型等如图5.画线方法:副图、主图叠加、副图叠加线、副图叠加美国线四种;选中"主图叠加型”,副图是K线图下面的区域;6.密码保护:0101017.参数设置:#N:最小值为1,最大值为100,缺省值(默认)为26;8.坐标线位置:在非"主图叠加”中,此编辑框处可写状态;输出线为副图中深红色横线显示,是副图坐标线;9.额外Y轴分界:是指标敏感数值输出线,在副图中显示为白色;10.引入指标公式:在引入原公式的基础上进行编辑;11.插入函数:左上为函数类别,右上为函数表,下区为函数解释区及用法举例;12.公式编辑区:{}是解释,不输出,为了提示自己和别人,便于看懂公式;:=赋值符,意为"相当于”;:输出符,它前面的名称为输出名称,可以在副图中看到,它后面的为公式定义;;分段符,表示一段完成;,分节符;()括号中为公式体。13.测试公式:测试通过则自动保存;测试不能通过,则在翻译区提示错误所在。14.用法注释:自编公式使用说明。15.在K线图上,直接敲字母键"JTD”调出自编的公式"均线通道”,查看结果;.z.-16.修改公式:左键选中公式线后,点击右键,在弹出的对话框中,选中"修改指标”项,直接调出《公式编辑器》修改公式。如果左键选指标线不便,直接用右键选参数数值,也可调出公式编辑器。17.鼠标动态提示:将鼠标放在函数上,等一会系统自动出现提示框,方便函数学习和应用,如图:3.3选股公式:均线通道改公式"均线通道”(JTD)为选股公式"均线通道”1.Ctrl+F打开"公式管理器”;2.点击"条件选股公式”选项;3.点击"新建”按钮,打开"条件选股公式编辑器”;4.点击"引入指标公式”按钮,选最后一项"均线通道”,确定;5.修改输出:公式输出项改为赋值项;即将:符改为:=符;6.新建输出项:选股:CLOSE<下轨;{选出收盘价小于下轨的股票};如图7.测试公式通过;8.Ctrl+T打开条件选股公式"均线通道”,进入公式选股操作程序;3.4五彩K线公式:均线通道改公式"均线通道”(JTD)为五彩K线公式"均线通道”1.Ctrl+F打开"公式管理器”;2.点击"五彩K线公式”选项;3.点击"新建”按钮,打开"K线指示公式编辑器”;4.点击"引入指标公式”按钮,选"均线通道”确定;五彩K线公式公式名:JTD公式描述:均线通道参数(最小值)(最大值)(缺省值)#N:110026--------------------------------------------------VAR1:=MA(CLOSE,N);{对"VAR1”赋值}VAR2:=MA(CLOSE,2N);{对"VAR2”赋值}VAR3:=MA(CLOSE,3N);{对"VAR3”赋值}VAR4:=MA(CLOSE,4N);{对"VAR4”赋值}VAR5:=MA((VAR1+VAR2+VAR3+VAR4)/4,5);{一条多条均线的平均线}上轨:=VAR51.08;{在均线"VAR5”上加上8%的幅度变成"上轨”}下轨:=VAR50.92;{在均线"VAR5”上减去8%的幅度变成"下轨”}CLOSE<下轨,COLORRED;{小于下轨提示买入红色}CLOSE>上轨,COLORYELLOW;{高于上轨提示卖出黄色}HIGH>上轨1.06,COLORBLUE;{高于上轨6%提示清仓蓝色}LOW<下轨0.94,COLORMAGENTA;{低于下轨6%提示加仓洋红色}--------------------------------------------------5.测试通过,退出;6.Ctrl+K,打开"五彩K线指示”---"均线通道”;7.查看效果,不满意就修改参数一直到满意为止;.z.-3.5交易系统公式改公式"均线通道”(JTD)为交易系统公式"均线通道”1.Ctrl+F打开"公式管理器”;2.点击"交易系统公式”选项;3.点击"新建”按钮,打开"交易系统公式编辑器”;4.点击"引入指标公式”按钮,选"均线通道”确定;公式名:JTD公式描述:均线通道参数(最小值)(最大值)(缺省值)#N:110026--------------------------------------------------VAR1:=MA(CLOSE,N);{对"VAR1”赋值}VAR2:=MA(CLOSE,2N);{对"VAR2”赋值}VAR3:=MA(CLOSE,3N);{对"VAR3”赋值}VAR4:=MA(CLOSE,4N);{对"VAR4”赋值}VAR5:=MA((VAR1+VAR2+VAR3+VAR4)/4,5);{一条多条均线的平均线}上轨:=VAR51.08;{在均线"VAR5”上加上8%的幅度变成"上轨”}下轨:=VAR50.92;{在均线"VAR5”上减去8%的幅度变成"下轨”}{多头买入}ENTERLONG:CLOSE<下轨;{多头卖出}EITLONG:CLOSE>上轨;---------------------------------------------------5.测试通过,退出;6.Ctrl+E,打开"五彩K线指示”---"均线通道”;7.查看效果,不满意就修改参数一直到满意为止;8.删除指示:快捷键Ctrl+H;鼠标左键选中指示图标,按Delete,或者点击鼠标右键,在弹出的菜单中选"删除交易系统指示”。3.6颜色参数应用:"MACD”K线公式名称:MACDK简称:"MACD”K线----------------------------DIF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);DEA:EMA(DIF,MID);MACD:(DIF-DEA)2,COLORSTICK;D1:=EMA(C,3)-EMA(C,8);D2:=EMA(O,3)-EMA(O,8);D3:=EMA(H,3)-EMA(H,8);D4:=EMA(L,3)-EMA(L,8);DRAWICON(CROSS(D1,DIF)ANDDIF<0,D4-0.1,10);DRAWICON(cross(diff,d1)anddiff>0.1,d3+0.1,2);STICKLINE(D1>=D2,D1,D2,8,0),COLOR0055AA;STICKLINE(D1<=D2,D1,D2,8,0),COLOR006600;STICKLINE(D1>=D2,D1,D2,5,0),COLOR0077CC;.z.-STICKLINE(D1>=D2,D1,D2,3,0),COLOR0099DD;STICKLINE(D1>=D2,D3,D4,0,0),COLOR00BBFF;STICKLINE(D1<=D2,D1,D2,5,0),COLOR009900;STICKLINE(D1<=D2,D1,D2,3,0),COLOR00BB00;STICKLINE(D1<=D2,D3,D4,0,0),COLOR00EE00;------------------------------示图颜色参数不是函数,它描述待画图形的颜色,将其插入到每个指标公式后面,用逗号分隔开。常用颜色参数有:COLORBLACKCOLORBLUECOLORGREEN绿色COLORCYAN青色COLORRED红色COLORMAGENTA洋红色COLORBROWN棕色COLORLIGHTGRAY淡灰色COLORGRAY深灰色COLORLIGHTBLUE淡蓝色COLORLIGHTGREEN淡绿色COLORLIGHTCYAN淡青色COLORLIGHTRED淡红色COLORLIGHTMAGENTA淡洋红色COLORYELLOW黄色COLORWHITE白色通达信颜色代码.z.-通达信常用指标颜色代码:1白色ColorFFFFFF或ColorWhite2红色ColorFF0000或COLORRED3绿色Color00FF00或ColorGreen4蓝色Color0000FF或ColorBlue5牡丹红ColorFF00FF6青色Color00FFFF7黄色ColorFFFF00或ColorYellow8黑色Color000000或ColorBlack9海蓝Color70DB9310巧克力色Color5C3317.z.-11蓝紫色Color9F5F9F12黄铜色ColorB5A64213亮金色ColorD9D91914棕色ColorA67D3D15青铜色Color8C7853162号青铜色ColorA67D3D17士官服蓝色Color5F9F9F18冷铜色ColorD9871919铜色ColorB8733320珊瑚红ColorFF7F0021紫蓝色Color42426F22深棕Color5C403323深绿Color2F4F2F24深铜绿色Color4A766E25深橄榄绿Color4F4F2F26深兰花色Color9932CD27深紫色Color871F7828深石板蓝Color6B238E29深铅灰色Color2F4F4F30深棕褐色Color97694F32深绿松石色Color7093DB33暗木色Color855E4234淡灰色Color54545435土灰玫瑰红色Color54545436长石色ColorD1927537火砖色Color8E232338森林绿Color238E2339金色ColorCD7F3240鲜黄色ColorDBDB7041灰色ColorC0C0C042铜绿色Color527F7643青黄色Color93DB7044猎人绿Color215E2145印度红Color4E2F2F46土黄色Color9F9F5F47浅蓝色ColorC0D9D948浅灰色ColorA8A8A849浅钢蓝色Color8F8FBD59浅木色ColorE9C2A660石灰绿色Color32CD3261桔黄色ColorE4783362褐红色Color8E236B63中海蓝色Color32CD9964中蓝色Color3232CD.z.-65中森林绿Color6B8E2366中鲜黄色ColorEAEAAE67中兰花色Color9370DB68中海绿色Color426F4269中石板蓝色Color7F00FF70中春绿色Color7FFF0071中绿松石色Color70DBDB72中紫红色ColorDB709373中木色ColorA6806474深藏青色Color2F2F4F75海军蓝Color23238E76霓虹篮Color4D4DFF77霓虹粉红ColorFF6EC778新深藏青色Color00009C79新棕褐色ColorEBC79E80暗金黄色ColorCFB53B81橙色ColorFF7F0082橙红色ColorFF240083淡紫色ColorDB70DB84浅绿色Color8FBC8F85粉红色ColorBC8F8F86李子色ColorEAADEA87石英色ColorD9D9F388艳蓝色Color5959AB89鲑鱼色Color6F424290猩红色ColorBC171791海绿色Color238E6892半甜巧克力色Color6B422693赭色Color8E6B2394银色ColorE6E8FA95天蓝Color3299CC96石板蓝Color007FFF97艳粉红色ColorFF1CAE98春绿色Color00FF7F99钢蓝色Color236B8E100亮天蓝色Color38B0DE101棕褐色ColorDB9370102紫红色ColorD8BFD8103石板蓝色ColorADEAEA104浓深棕色Color5C4033105淡浅灰色ColorCDCDCD106紫罗兰色Color4F2F4F107紫罗兰红色ColorCC3299.z.-108麦黄色ColorD8D8BF109黄绿色Color99CC32颜色描述符还可以自定义颜色,格式为COLOR+"RRGGBB”:RR、GG、BB表示红色、绿色和蓝色的分量,每种颜色的取值围是00-FF,采用了16进制。例如:MA5:MA(CLOSE,5),COLOR00FFFF表示纯红色与纯绿色的混合色:COLOR808000表示淡蓝色和淡绿色的混合色。(参见后附颜色代码表)3.7新增函数应用HORCALC()函数:HORCALC()说明:数据项:100-HIGH,101-OPEN,102-LOW,103-CLOSE,104-VOL,105-涨幅计算方式:0-累加,1-排名次权重:0-总股本,1-流通股本,2-等同权重,3-流通市值用法:HORCALC(板块名称,数据项,计算方式,权重)例如:HORCALC(\'自选股\',103,0,1);以自选股板块股票的总股本为权重,以收盘价为数源进行累加。公式名称:zdkx公式描述:自定指数K线参数:(最小值)(最大值)(缺省值)#n:110010---------------高:=HORCALC(\'板块\',100,0,1);开:=HORCALC(\'板块\',101,0,1);低:=HORCALC(\'板块\',102,0,1);收:=HORCALC(\'板块\',103,0,1);自定K线:DRAWKLINE(高,开,低,收);MA(自定K线,N);---------------公式说明:1.用于制作自定义指数、自设板块指数K线。2.先制作自定义板块,"Ctrl+z”,填写好板块名称和简称(数字);3."板块名称”须用单引号,如\'自选股\'、\'庄股\';4.起始位为1000点(下载到本地数据);5.板块内不要含有太多的股票数量,以免影响速度;3.8新增函数应用BLOCKSETNUM(板块名称)函数:BLOCKSETNUM(板块名称)说明:统计板块中股票数量用法:BLOCKSETNUM(板块名称)注意:板块名称要用单引号例如:BLOCKSETNUM(\'ST板块\'),返回"ST板块”数量。公式名称:STPM公式描述:个股在st板块内排名--------------板块股数量:BLOCKSETNUM(\'ST板块\'),NODRAW;.z.-ST涨幅排名:HORCALC(\'ST板块\',105,1,2);说明:NODRAW是不输出线型只输出数值命令,用于多指标不兼容坐标;.z.',)
提供通达信公式编写教程会员下载,编号:1700761162,格式为 docx,文件大小为38页,请使用软件:wps,office word 进行编辑,PPT模板中文字,图片,动画效果均可修改,PPT模板下载后图片无水印,更多精品PPT素材下载尽在某某PPT网。所有作品均是用户自行上传分享并拥有版权或使用权,仅供网友学习交流,未经上传用户书面授权,请勿作他用。若您的权利被侵害,请联系963098962@qq.com进行删除处理。