分享

22.05.29通达信公式函数:常用函数V1.1

 学习海洋626 2024-04-04 发布于湖南

通达信公式是我们探索股市的有力工具,有志于在股市中有所成就,并且愿意付出艰苦劳动的人,不能不学。其中,函数构成了基本公式,基本公式构成了更丰富、更强大、更实用的组合公式。再结合自己的交易体系,找到称手的实战公式。正如同,原子构成了分子,分子构成了我们丰富多彩的世界。又如同,一生二,二生三,三生万物。

本文列举的常用函数,是我从通达信公式系统中挑选的,当然也参考了最近在研究的通达信公式。汇成一篇,方便查阅。我原来有一种思想是函数的数量越少越好,采用最基础的函数去替代其它函数。在应用中发现,采用某些函数可以使公式简单,而且,某个函数也不是想替代就能被替代的。

目录

一、序列行情函数

二、时间函数

三、引用函数

四、板块字符函数

五、逻辑函数

六、选择函数

七、数学函数

八、统计函数

九、形态函数

十、指数标的函数

十一、资金流向函数

十二、绘图函数

十三、关联财务函数

十四、专业财务函数

十五、即时行情函数

十六、线形和资源等

十七、操作符

十八、交易信号函数

十九、账户函数

一、序列行情函数

函数:ADVANCE

类型:序列行情函数

用途:上涨家数

用法:ADVANCE

说明:返回该周期上涨家数;本函数仅对沪深指数有效

举例:

说明:

函数:AMOUNT

类型:序列行情函数

用途:成交额(元)

用法:AMOUNT

说明:返回该周期成交额。期货和期权无成交金额,返回持仓量

函数:CLOSE

类型:序列行情函数

用途:收盘价

说明:若复权时需要当时的真实均价,可以用AMO/(VOL*100)来替代

函数:DECLINE

类型:序列行情函数

用途:下跌家数

用法:DECLINE

说明:返回该周期下跌家数;本函数仅对沪深指数有效

函数:HIGH

类型:序列行情函数

用途:最高价

函数:LOW

类型:序列行情函数

用途:最低价

函数:OPEN

类型:序列行情函数

用途:开盘价

函数:VOL

类型:序列行情函数

用途:返回该周期成交量(手)

二、时间函数

函数:DATE

类型:时间函数

用途:取得该周期从1900以来的年月日

用法:DATE

说明:

举例:返回1000101

说明:表示2000年1月1日

函数:DAYSTOTODAY

类型:时间函数

用途:离今天的天数

用法:DAYSTOTODAY

说明:取得该周期的日期离今天的天数

函数:TIME

类型:时间函数

用途:时间(时分)

用法:TIME

说明:取得该周期的时分,适用于日线以下周期;函数返回有效值范围0000-2359

三、引用函数

函数:BARSCOUNT

类型:引用函数

用途:统计有效数据周期数

用法:BARSCOUNT(X)

说明:第一个有效数据到当前的间隔周期数,第一个有效数据到当前的天数

举例:BARSCOUNT(CLOSE)

说明:对于日线数据取得上市以来总交易日数

函数:BARSLAST

类型:引用函数

用途:上一次条件成立到当前的周期数

用法:BARSLAST(X)

说明:上一次X不为0到现在的周期数

举例:BARSLAST(CLOSE/REF(CLOSE,1)>=1.095)

说明:上一个涨停板到当前的周期数

函数:BARSLASTCOUNT

类型:引用函数

用途:条件连续成立次数

用法:BARSLASTCOUNT(X)

说明:统计连续满足X条件的周期数

举例:BARSLASTCOUNT(CLOSE>OPEN)

说明:表示统计连续收阳的周期数

函数:BARSSINCE

类型:引用函数

用途:首个条件成立位置

用法:BARSSINCE(X)

说明:第一次X不为0到现在的周期数

举例:BARSSINCE(HIGH>10)

说明:股价超过10元时到当前的周期数

函数:BARSSINCEN

类型:引用函数

用途:N周期内首个条件成立位置

用法:BARSSINCEN(X,N)

说明:N周期内第一次X不为0到现在的周期数,N为常量

举例:BARSSINCEN(HIGH>10,10)

说明:表示10个周期内股价超过10元时到当前的周期数

函数:COUNT

类型:引用函数

用途:统计满足条件的周期数

用法:COUNT(X,N)

说明:统计N周期中满足X条件的周期数,若N≤0则从第一个有效值开始

举例:COUNT(CLOSE>OPEN,20)

说明:统计20周期内收阳的周期数

函数:DRAWNULL

类型:引用函数

用途:返回无效数

举例:IF(CLOSE > REF(CLOSE, 1), CLOSE, DRAWNULL)

说明:下跌时不画线

函数:EMA

类型:引用函数

用途:返回指数移动平均

用法:EMA(X,N)

说明:算法Y = (X * 2 + Y’ * (N - 1)) / (N + 1),表示X的N日指数移动平均,相当于SMA(X , N+1 , 2)

函数:EXTDATA_USER

类型:引用函数

用途:引用扩展数据,使用扩展数据管理器来设置和刷新数据

用法:EXTDATA_USER(N,TYPE)

说明:N取1-100,表示读当前品种的N号扩展序列数据。TYPE:1表示做平滑处理,没有数据的周期返回上一周期的值;0表示不做平滑处理;2表示没有数据则为0。

函数:FILTER

类型:引用函数

用途:过滤连续出现的信号

用法:FILTER(X,N)

说明:X满足条件后,将其后N周期内的数据置为0,N为常量

举例:FILTER(CLOSR>OPEN,5)

说明:查找阳线,5天内再次出现的阳线不被记录在内

函数:FINDHIGH

类型:引用函数

用途:N周期前的M周期内的第T个最大值

用法:FINDHIGH(VAR,N,M,T)

说明:VAR在N日前的M天内第T个最高价

函数:FINDHIGHBARS

类型:引用函数

用途:N周期前的M周期内的第T个最大值到当前周期的周期数

用法:FINDHIGHBARS(VAR,N,M,T)

说明:VAR在N日前的M天内第T个最高价到当前周期的周期数

函数:HHV

类型:引用函数

用途:求最高值

用法:HHV(X,N)

说明:求N 周期内X最高值,N=0则从第一个有效值开始

举例:HHV(HIGH,30)

说明:求30日最高价

函数:HHVBARS

类型:引用函数

用途:上一高点位置

用法:HHVBARS(X,N)

说明:求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计

举例:HHVBARS(HIGH,0)

说明:求得历史新高到当前的周期数

函数:HOD

类型:引用函数

用途:求高值名次

用法:HOD(X,N)

说明:求当前X数据是N周期内的第几个高值,N=0则从第一个有效值开始

举例:HOD(HIGH,20)

说明:返回是20日的第几个高价

函数:LLV

类型:引用函数

用途:求最低值

函数:MA

类型:引用函数

用途:返回简单移动平均

用法:MA(X,N)

说明:X的N日简单移动平均

函数:REF

类型:引用函数

用途:引用若干周期前的数据(引用不到时作平滑处理,即使用上一周期)

用法:REF(X,A)

说明:引用A周期前的X值,A可以是变量

举例:REF(CLOSE,BARSCOUNT(C)-1)

说明:(上市以来)第二根K线的收盘价

函数:REFDATE

类型:引用函数

用途:引用自1900年以来指定日期的数据

用法:REFDATE(X,A)

说明:引用A日期的X值

举例:REFDATE(CLOSE,1011208)

说明:2001年12月08日的收盘价

函数:SIGNALS_USER

类型:引用函数

用途:引用自定义序列数据

用法:

说明:读取个人目录下的signals目录下面的[signals_user_?]目录,用自定义数据管理器来维护

举例:SIGNALS_USER(11,TYPE)

说明:读当前品种的11数据号的序列数据(自定义数据按日期从小到大排序)。TYPE:1表示做平滑处理,没有自定义数据的周期返回上一周期的值;0表示不做平滑处理;2表示没有数据则为0

函数:SMA

类型:引用函数

用途:返回移动平均

用法:SMA(X,N,M)

说明:算法Y = (X * M + Y’ * (N - M)) / N,表示X的N日移动平均值,M为权重

函数:SPLITBARS

类型:引用函数

用途:除权除息到现在的周期数

用法:SPLITBARS(N,TYPE)

说明:取得之前第N次除权除息到当前的周期数,参数0表示送转股,1表示分红,2表示送转股或分红

举例:SPLITBARS(0,0)=0

说明:当天发生除权

函数:SUM

类型:引用函数

用途:求总和

用法:SUM(X,N)

说明:统计N周期中X的总和,N=0则从第一个有效值开始

举例:SUM(VOL,0)

说明:统计从上市第一天以来的成交量总和

函数:TMA

类型:引用函数

用途:返回移动平均

用法:TMA(X,A,B)

说明:算法Y = (A * Y’ + B * X),Y’表示上一周期Y值,初值为X,A和B必须小于1

函数:TOTALBARSCOUNT

类型:引用函数

用途:总的周期数

用法:TOTALBARSCOUNT

说明:求总的周期数

函数:ZTPRICE

类型:引用函数

用途:计算涨停价

举例:ZTPRICE(REF(CLOSE,1),0.1)

说明:按10%计算得到在昨收盘基础上的涨停价。复权处理后可能不符

四、板块字符函数

五、逻辑函数

函数:CROSS

类型:逻辑函数

用途:两条线交叉,上穿

用法:CROSS(A,B)

说明:当A从下方向上穿过B时返回1,否则返回0

举例:CROSS(MA(CLOSE,5), MA(CLOSE,10))

说明:5日均线与10日均线金叉

函数:EVERY

类型:逻辑函数

用途:一直存在

举例:EVERY(CLOSE>OPEN,10)

说明:表示前10日内一直阳线

函数:EXIST

类型:逻辑函数

用途:是否存在

举例:EXIST(CLOSE>OPEN,10)

说明:前10日内存在着阳线

函数:LAST

类型:逻辑函数

用途:持续存在

用法:LAST(X,A,B)

说明:A>B,表示从前A日到前B日一直满足X条件。若A为0,表示从第一天开始,B为0,表示到最后日止

举例:LAST(CLOSE>OPEN,10,5)

说明:从前10日到前5日内一直阳线

函数:NOT

类型:逻辑函数

用途:取反,求逻辑非

用法:NOT(X)

说明:返回非X,即当X=0时返回1,否则返回0

举例:NOT(ISUP)

说明:表示平盘或收阴

函数:UPNDAY

类型:逻辑函数

用途:返回周期数内是否连涨

用法:UPNDAY(CLOSE,M)

说明:表示连涨M个周期

六、选择函数

函数:IF

用途:条件判断

类型:选择函数

用法:IF(X, A, B)

说明:若 X 不为0则返回A,否则返回B

举例:IF(CLOSE>OPEN,HIGH,LOW)

说明:表示该周期收阳则返回最高值,否则返回最低值

七、数学函数

函数:ABS

类型:数学函数

用途:求绝对值

用法:ABS(X)

说明:返回X的绝对值

举例:ABS(-34)

说明:返回34

函数:ATAN

类型:数学函数

用途:反正切值

用法:ATAN(X)

说明:返回X的反正切值

函数:MAX

类型:数学函数

用途:求最大值

用法:MAX(A,B)

说明:返回A和B中的较大值

举例:MAX(CLOSE-OPEN,0)

说明:若收盘价大于开盘价,返回它们的差值,否则返回0

函数:ROUND

类型:数学函数

用途:四舍五入

用法:ROUND(X)

说明:返回X四舍五入到个位的数值

函数:ROUND2

类型:数学函数

用途:四舍五入

用法:ROUND2(X,N)

说明:返回X四舍五入到N位小数的数值。由于精度,数据越大误差可能越大

函数:SIGN

类型:数学函数

用途:取符号

用法:SIGN(X)

说明:返回X的符号,当X>0,=0,<0分别返回1,0,-1

八、统计函数

函数:AVEDEV, DEVSQ, SLOPE, STD, STDDEV, VAR

类型:统计函数

用途:平均绝对偏差,数据偏差平方和,线性回归斜率,估算标准差,标准偏差,估算样本方差

用法:

说明:

举例:

说明:

九、形态函数

函数:COST

类型:形态函数

用途:成本分布

用法:

说明:仅对日线分析周期有效

举例:COST(10)

说明:10%获利盘的价格是多少,即有10%的持仓量在该价格以下,其余90%在该价格以上,为套牢盘。

函数:LWINNER

类型:形态函数

用途:近期获利盘比例

举例:LWINNER(5,CLOSE)

说明:表示最近5天的那部分成本以当前收市价卖出的获利盘比例。返回0.1表示10%获利盘

函数:WINNER

类型:形态函数

用途:获利盘比例,仅对日线分析周期有效。

用法:WINNER(价格)

说明:以当前价格卖出的获利盘比例,例如返回0.1表示10%获利盘。在当前价格以下筹码的比例,即有多少筹码在当前价格卖掉是能够获利的

举例:WINNER(10.5)

说明:10.5价格的获利盘比例

十、指数标的函数

函数:INDEXV

类型:指数标的函数

用途:返回对应的大盘成交量,分别是上证指数,深证成指,科创50,创业板指,港股为恒生指数,国内期货为对应的L9指数品种

用法:

说明:对应指数的数据必须要先下载到本地

举例:

说明:

十一、资金流向函数

十二、绘图函数

函数:DRAWBMP

类型:绘图函数

用途:画出图片

用法:DRAWBMP(COND,PRICE,’Bmp文件名’)

说明:当条件COND满足时,在PRICE位置画T0002目录下面的signals目录下面的“Bmp文件名”;

举例:DRAWBMP(O>C,CLOSE,’高开’)

说明:

函数:DRAWTEXT

类型:绘图函数

用途:显示文字,或在指标排序中显示字符串栏目

用法:DRAWTEXT(COND,PRICE,TEXT)

说明:当条件COND满足时,在PRICE位置书写文字TEXT

举例:DRAWTEXT(CLOSE/OPEN>1.08,LOW,’大阳线’)

说明:当日实体阳线大于8%时在最低价位置显示大阳线”字样,若文字中含有&则进行折行

十三、关联财务函数

函数:CAPITAL

类型:关联财务函数

用途:当前流通股本(手)

用法:

说明:

举例:

说明:

函数:FINANCE(3)

类型:关联财务函数

用途:沪深品种类型

举例:FINANCE(3)=0,1,3,4,…

说明:指数,A股主板,创业板,科创板,……

函数:FINANCE(8)

类型:关联财务函数

用途:股东人数(户)

用法:

说明:上市公司的最新数据

函数:FINANCE(40)

类型:关联财务函数

用途:流通市值

函数:FINANCE(42)

类型:关联财务函数

用途:上市的天数

举例:FINANCE(42)>50

说明:

十四、专业财务函数

函数:FINVALUE

类型:专业财务函数

用途:引用专业财务数据。如指标支持云数据函数,则无需专业财务数据下载

用法:FINVALUE(ID)

说明:ID为数据编号

举例:FINVALUE(255),表示基金持股量

举例:FINVALUE(239),表示已上市流通A股

函数:GPJYVALUE

类型:专业财务函数

用途:引用股票交易量数据。如指标支持云数据函数,则无需专业财务数据下载

用法:GPJYVALUE(ID, N, TYPE)

说明:ID为数据编号,N表示第几个数据(1,2),TYPE:为1表示做平滑处理,没有数据的周期返回上一周期的值;为0表示不做平滑处理;2表示没有数据则为0

举例:GPJYVALUE(6,1,1)

说明:陆股通持股量,做平滑处理,没有数据的周期返回上一周期的值

十五、即时行情函数

函数:DYNAINFO(3)

类型:即时行情函数

用途:前收盘价

用法:

说明:

举例:

说明:

函数:DYNAINFO(4)

类型:即时行情函数

用途:开盘价

用法:

说明:在开盘前,值为零。在使用时需要判断

函数:DYNAINFO(7)

类型:即时行情函数

用途:现价

用法:

说明:在开盘前,值为零。在使用时需要判断

函数:DYNAINFO(9)

类型:即时行情函数

用途:现量

函数:DYNAINFO(17)

类型:即时行情函数

用途:量比

函数:DYNAINFO(18)

类型:即时行情函数

用途:上涨家数

用法:

说明:对沪深指数和通达信板块指数有效

函数:DYNAINFO(19)

类型:即时行情函数

用途:下跌家数

用法:

说明:对沪深指数和通达信板块指数有效

函数:DYNAINFO(37)

类型:即时行情函数

用途:换手率

用法:

说明:转换成幅度需要乘以100

举例:DYNAINFO(37)>0.25

说明:换手率超过25%

函数:DYNAINFO(60)

类型:即时行情函数

用途:沪深总上涨家数

函数:DYNAINFO(61)

类型:即时行情函数

用途:沪深总下跌家数

函数:DYNAINFO(62)

类型:即时行情函数

用途:沪深总成交金额

十六、线形和资源等

函数:LINETHICK

类型:线型和资源等

用途:

用法:LINETHICK+(1-9)

说明:参数的取值范围在1-9之间

举例:LINETHICK1, LINETHICK9

说明:最细的线,最粗的线

函数:COLORGREEN

类型:线型和资源等

用途:画绿色

十七、操作符

函数:  :

类型:操作符

用途:输出

函数:  :=

类型:操作符

用途:赋值

函数:  =

类型:操作符

用途:判断是否相等

用法:

说明:不一定相等,可按需处理精度,如:INTPART(X / MINDIFF) = INPART(Y / MINDIFF)

函数:AND

类型:操作符

用途:并且

用法:

说明:用法同&&

十八、交易信号函数

十九、账户函数

迈奥岛

图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多