通达信公式函数说明一、行情函数HIGH最高价返回该周期最高价。用法:HIGHH最高价返回该周期最高价。用法:HLOW最低价返回该周期最低价。用法:LOWL最低价返回该周期最低价。用法:LCLOSE收盘价返回该周期收盘价。用法:CLOSEC收盘价返回该周期收盘价。用法:CVOL成交量返回该周期成交量。用法:VOLV成交量返回该周期成交量。用法:VOPEN开盘价返回该周期开盘价。用法:OPENO:开盘价返回该周期开盘价。用法:OADVANCE上涨家数返回该周期上涨家数。用法:ADVANCE(本函数仅对大盘有效)DECLINE下跌家数返回该周期下跌家数。用法:DECLINE(本函数仅对大盘有效)AMOUNT成交额返回该周期成交额。用法:AMOUNTASKPRICE委卖价返回委卖1--委卖3价格。用法:ASKPRICE(N)N取1—3。(本函数仅个股在分笔成交分析周期有效)ASKVOL委卖量返回委卖1--委卖3量。用法:ASKVOL(N)N取1—3。(本函数仅个股在分笔成交分析周期有效)BIDPRICE委买价返回委买1--委买3价格。用法:BIDPRICE(N)N取1—3。(本函数仅个股在分笔成交分析周期有效)BIDVOL委买量返回委买1--委买3量。用法:BIDVOL(N)N取1—3。(本函数仅个股在分笔成交分析周期有效)BUYVOL主动性买盘返回主动性买单量。用法:BUYVOL当本笔成交为主动性买盘时,其数值等于成交量,否则为0。(本函数仅个股在分笔成交分析周期有效)SELLVOL主动性卖盘返回主动性卖单量。用法:SELLVOL当本笔成交为主动性卖盘时,其数值等于成交量,否则为0。(本函数仅个股在分笔成交分析周期有效)ISBUYORDER主动性买单返回该成交是否为主动性买单。用法:ISBUYORDER当本笔成交为主动性买盘时,返回1,否则为0。(本函数仅个股在分笔成交分析周期有效)ISSELLORDER主动性卖单返回该成交是否为主动性卖单。用法:ISSELLORDER当本笔成交为主动性卖盘时,返回1,否则为0。(本函数仅个股在分笔成交分析周期有效)二、时间函数DATE日期取得该周期从1900以来的年月日。用法:DATE例如函数返回1000101,表示2000年1月1日。TIME时间取得该周期的时分秒。用法:TIME函数返回有效值范围为(000000-235959)。YEAR年份取得该周期的年份。用法:YEARMONTH月份取得该周期的月份。用法:MONTH函数返回有效值范围为(1-12)。WEEK星期取得该周期的星期数。用法:WEEK函数返回有效值范围为(0-6),0表示星期天。DAY日期取得该周期的日期。用法:DAY函数返回有效值范围为(1-31)。HOUR小时取得该周期的小时数。用法:HOUR函数返回有效值范围为(0-23),对于日线及更长的分析周期值为0。MINUTE分钟取得该周期的分钟数。用法:MINUTE函数返回有效值范围为(0-59),对于日线及更长的分析周期值为0。FROMOPEN分钟求当前时刻距开盘有多长时间。用法:FROMOPEN返回当前时刻距开盘有多长时间,单位为分钟。例如:FROMOPEN当前时刻为早上十点,则返回31。三、引用函数DRAWNULL无效数返回无效数。用法:DRAWNULL例如:IF(CLOSEREF(CLOSE,1),CLOSE,DRAWNULL)表示下跌时分析图上不画线。BACKSET向前赋值将当前位置到若干周期前的数据设为1。用法:BACKSET(X,N)若X非0,则将当前位置到N周期前的数值设为1。例如:BACKSET(CLOSEOPEN,2)若收阳则将该周期及前一周期数值设为1,否则为0。BARSCOUNT有效数据周期数求总的周期数。用法:BARSCOUNT(X)第一个有效数据到当前的天数。例如:BARSCOUNT(CLOSE)对于日线数据取得上市以来总交易日数,对于分笔成交取得当日成交笔数,对于1分钟线取得当日交易分钟数。BARSLAST上一次条件成立位置上一次条件成立到当前的周期数。用法:BARSLAST(X)上一次X不为0到现在的天数。例如:BARSLAST(CLOSE/REF(CLOSE,1)=1.1)表示上一个涨停板到当前的周期数。BARSSINCE第一个条件成立位置第一个条件成立到当前的周期数。用法:BARSSINCE(X)第一次X不为0到现在的天数。例如:BARSSINCE(HIGH10)表示股价超过10元时到当前的周期数。COUNT统计统计满足条件的周期数。用法:COUNT(X,N)统计N周期中满足X条件的周期数,若N=0则从第一个有效值开始。例如:COUNT(CLOSEOPEN,20)表示统计20周期内收阳的周期数。DMA动态移动平均求动态移动平均。用法:DMA(X,A)求X的动态移动平均。算法:若Y=DMA(X,A)则Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必须小于1。例如:DMA(CLOSE,VOL/CAPITAL)表示求以换手率作平滑因子的平均价。HHV最高值求最高值。用法:HHV(X,N)求N周期内X最高值,N=0则从第一个有效值开始。例如:HHV(HIGH,30)表示求30日最高价。HHVBARS上一高点位置求上一高点到当前的周期数。用法:HHVBARS(X,N)求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计。例如:HHVBARS(HIGH,0)求得历史新高到到当前的周期数。LLV最低值求最低值。用法:LLV(X,N)求N周期内X最低值,N=0则从第一个有效值开始。例如:LLV(LOW,0)表示求历史最低价。LLVBARS上一低点位置求上一低点到当前的周期数。用法:LLVBARS(X,N)求N周期内X最低值到当前周期数,N=0表示从第一个有效值开始统计。例如:LLVBARS(HIGH,20)求得20日最低点到当前的周期数。REVERSE求相反数求相反数。用法:REVERSE(X)返回-X。例如:REVERSE(CLOSE)返回-CLOSE。REF向前引用引用若干周期前的数据。用法:REF(X,A)引用A周期前的X值。例如:REF(CLOSE,1)表示上一周期的收盘价,在日线上就是昨收。REFDATE指定引用引用指定日期的数据。用法:REFDATE(X,A)引用A日期的X值。例如:REF(CLOSE,20011208)表示2001年12月08日的收盘价。SUM总和求总和。用法:SUM(X,N)统计N周期中X的总和,N=0则从第一个有效值开始。例如:SUM(VOL,0)表示统计从上市第一天以来的成交量总和。FILTER过滤过滤连续出现的信号。用法:FILTER(X,N)X满足条件后,删除其后N周期内的数据置为0。例如:FILTER(CLOSEOPEN,5)查找阳线,5天内再次出现的阳线不被记录在内。SUMBARS累加到指定值的周期数向前累加到指定值到现在的周期数。用法:SUMBARS(X,A)将X向前累加直到大于等于A,返回这个区间的周期数。例如:SUMBARS(VOL,CAPITAL)求完全换手到现在的周期数。SMA累积平均返回累积平均。用法:SMA(X,N,M)X的M日累积平均,M为权重,如Y=(X*M+Y'*(N-M))/NMA简单移动平均返回简单移动平均。用法:MA(X,M)X的M日简单移动平均。EMA异同移动平均返回异同移动平均。用法:EMA(X,M)X的M日异同移动平均。MEMA平滑移动平均返回平滑移动平均用法:MEMA(X,M)X的M日平滑移动平均。EXPMA加权移动平均返回加权移动平均。用法:EXPMA(X,M)X的M日加权移动平均。EXPMEMA加权平滑平均返回加权平滑平均。用法:EXPMEMA(X,M)X的M日加权平滑平均。RANGE介于某个范围之间用法:RANGE(A,B,C)A在B和C。例如:RANGE(A,B,C)表示A大于B同时小于C时返回1,否则返回0。CONST取值设为常数用法:CONST(A)取A最后的值为常量.例如:CONST(INDEXC)表示取大盘现价。四、逻辑函数CROSS上穿两条线交叉。用法:CROSS(A,B)表示当A从下方向上穿过B时返回1,否则返回0。例如:CROSS(MA(CLOSE,5),MA(CLOSE,10))表示5日均线与10日均线交金叉。LONGCROSS维持一定周期后上穿两条线维持一定周期后交叉。用法:LONGCROSS(A,B,N)表示A在N周期内都小于B,本周期从下方向上穿过B时返回1,否则返回0。UPNDAY连涨返回是否连涨周期数。用法:UPNDAY(CLOSE,M)表示连涨M个周期。DOWNNDAY连跌返回是否连跌周期。用法:DOWNNDAY(CLOSE,M)表示连跌M个周期。NDAY连大返回是否持续存在XY。用法:NDAY(CLOSE,OPEN,3)表示连续3日收阳线。EXIST存在是否存在。用法:EXIST(CLOSEOPEN,10)表示前10日内存在着阳线。EVERY一直存在一直存在。用法:EVERY(CLOSEOPEN,10)表示前10日内一直阳线。LAST持续存在用法:LAST(X,A,B)AB,表示从前A日到前B日一直满足X条件。若A为0,表示从第一天开始,B为0,表示到最后日止。例如:LAST(CLOSEOPEN,10,5)表示从前10日到前5日内一直阳线。五、算术函数NOT取反求逻辑非。用法:NOT(X)返回非X,即当X=0时返回1,否则返回0。例如:NOT(ISUP)表示平盘或收阴。IF逻辑判断根据条件求不同的值。用法:IF(X,A,B)若X不为0则返回A,否则返回B。例如:IF(CLOSEOPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值。IFF逻辑判断根据条件求不同的值。用法:IFF(X,A,B)若X不为0则返回A,否则返回B。例如:IFF(CLOSEOPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值。IFN逻辑判断根据条件求不同的值。用法:IFN(X,A,B)若X不为0则返回B,否则返回A。例如:IFN(CLOSEOPEN,HIGH,LOW)表示该周期收阴则返回最高值,否则返回最低值。MAX较大值求最大值。用法:MAX(A,B)返回A和B中的较大值。例如:MAX(CLOSE-OPEN,0)表示若收盘价大于开盘价返回它们的差值,否则返回0。MIN较小值求最小值。用法:MIN(A,B)返回A和B中的较小值。例如:MIN(CLOSE,OPEN)返回开盘价和收盘价中的较小值。六、数学函数ACOS反余弦反余弦值。用法:ACOS(X)返回X的反余弦值。ASIN反正弦反正弦值。用法:ASIN(X)返回X的反正弦值。ATAN反正切反正切值。用法:ATAN(X)返回X的反正切值。COS余弦余弦值。用法:COS(X)返回X的余弦值。SIN正弦正弦值。用法:SIN(X)返回X的正弦值。TAN正切正切值。用法:TAN(X)返回X的正切值。EXP指数指数。用法:EXP(X)e的X次幂。例如:EXP(CLOSE)返回e的CLOSE次幂。LN自然对数求自然对数。用法:LN(X)以e为底的对数。例如:LN(CLOSE)求收盘价的对数。LOG对数求10为底的对数。用法:LOG(X)取得X的对数。例如:LOG(100)等于2。SQRT开方开平方。用法:SQRT(X)求X的平方根。例如:SQRT(CLOSE)收盘价的平方根。ABS绝对值求绝对值。用法:ABS(X)返回X的绝对值。例如:ABS(-34)返回34。POW乘幂乘幂。用法:POW(A,B)返回A的B次幂。例如:POW(CLOSE,3)求得收盘价的3次方。CEILING向上舍入向上舍入。用法:CEILING(A)返回沿A数值增大方向最接近的整数。例如:CEILING(12.3)求得13,CEILING(-3.5)求得-3。FLOOR向下舍入向下舍入。用法:FLOOR(A)返回沿A数值减小方向最接近的整数。例如:FLOOR(12.