大智慧公式函数.docx
《大智慧公式函数.docx》由会员分享,可在线阅读,更多相关《大智慧公式函数.docx(33页珍藏版)》请在冰豆网上搜索。
![大智慧公式函数.docx](https://file1.bdocx.com/fileroot1/2022-12/12/02f6f41f-78aa-4250-9eed-93ae55eb5e85/02f6f41f-78aa-4250-9eed-93ae55eb5e851.gif)
大智慧公式函数
新增函数
新增函数
ALLASKVOL委托卖出总量
取得所有委托卖出单的总量,该函数仅对Level2行情显示有效。
用法:
ALLASKVOL
ALLBIDVOL委托买入总量
取得所有委托买入单的总量,该函数仅对Level2行情显示有效。
用法:
ALLBIDVOL
ORDER委托单成交单数
日线取得该日成交的委托单数量,委托单分为买入委托和卖出委托,该函数仅对Level2行情显示有效。
用法:
ORDER(N),N表示类型,N=1买入委托单,N=2卖出委托单。
BIGORDER委托单大单成交量比例
日线取得该日成交的中单、大单、特大占总的成交量比例,委托单分为买入委托和卖出委托,划分标准为中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
BIGORDER(N,M),N表示类型,N=1买入委托单,N=2卖出委托单,M表示委托单大小,M=1中单,M=2大单,M=3特大单,M可以省略,表示大单。
注意中单包含了大单,而大单则包含了特大单,所以小单比例可以表示为1-BIGORDER(1,1)
FLOATRGN浮动填充区域
根据条件填充区域。
用法:
FLOATRGN(PRICE,WIDTH,COND1,COLOR1,COND2,COLOR2...),以PRICE为基础填充宽度为WIDTH像素的区域,WIDTH为负则向下填充,当COND1条件满足时,用COLOR1颜色,当COND2条件满足时,用COLOR2颜色,否则不填充,从COND1之后的参数均可以省略,最多可以有10组条件。
例如:
FLOATRGN(CLOSE,VOL/HHVALL(VOL)*15,CLOSE>OPEN,RGB(255,0,0),1,RGB(0,255,0))表示沿收盘价填充宽度为成交量的区域,区域最大宽度为15像素,阳线时用红色,阴线时用绿色。
FLOATSTICK浮动柱状线
根据条件绘制浮动柱状线。
用法:
FLOATSTICK(PRICE,WIDTH,COND1,COLOR1,COND2,COLOR2...),以PRICE为基础绘制长度为WIDTH像素的柱状线,WIDTH为负则向下绘制,当COND1条件满足时,用COLOR1颜色,当COND2条件满足时,用COLOR2颜色,否则不绘制,从COND1之后的参数均可以省略,最多可以有10组条件。
例如:
FLOATSTICK(CLOSE,VOL/HHVALL(VOL)*20)表示沿收盘价绘制宽度为成交量增量的柱状线,柱状线最大宽度20像素。
HHVALL可视范围最高值
求可视范围最高值。
用法:
HHVALL(X),求图形可视范围内X最高值。
例如:
HHVALL(HIGH)表示图形范围内的最高价,该函数用于循环或分支中将不准确
LLVALL可视范围最低值
求可视范围最低值。
用法:
LLVALL(X),求图形可视范围内X最低值。
例如:
LLVALL(LOW)表示图形范围内的最低价,该函数用于循环或分支中将不准确
ORDERNUM委托单成交单数
分时线中该分钟成交的委托单数量,委托单分为买入委托和卖出委托,小单,中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
ORDERNUM(N,M),N表示类型,N=1买入委托单,N=2卖出委托单,M表示委托单大小,M=0所有委托单,M=1中单,M=2大单,M=3特大单。
ORDERVOL委托单成交量
分时线中该分钟成交的按照委托单大小划分的成交量,委托单分为买入委托和卖出委托,小单,中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
ORDERVOL(N,M),N表示类型,N=1买入委托单,N=2卖出委托单,M表示委托单大小,M=0所有委托单,M=1中单,M=2大单,M=3特大单。
例如:
ORDERVOL(1,2)/ORDERVOL(1,0)*100表示大单成交量占总成交量的百分比
TRANSACT逐笔成交笔数
分时线中该分钟成交的逐笔成交数量,成交分为单分主动买入和主动卖出成交,小单,中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
TRANSACT(N,M),N表示类型,N=0表示所有成交,N=1主动买入,N=2主动卖出,M表示委托单大小,M=0所有成交,M=1中单,M=2大单,M=3特大单。
TRANSACTVOL逐笔成交成交量
分时线中该分钟成交的按照逐笔成交量大小划分的成交量,成交分为单分主动买入和主动卖出成交,小单,中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
TRANSACTVOL(N,M),N表示类型,N=0表示所有成交,N=1主动买入,N=2主动卖出,M表示委托单大小,M=0所有成交,M=1中单,M=2大单,M=3特大单。
例如:
TRANSACTVOL(1,2)/TRANSACTVOL(1,0)*100表示逐笔大单成交量占总成交量的百分比
DRAWRECTABS绝对位置画矩形
在图形绝对位置上画矩形。
用法:
DRAWRECTABS(LEFT,TOP,RIGHT,BOTTOM,COLOR),以图形窗口(LEFT,TOP)为左上角,(RIGHT,BOTTOM)为右下角绘制矩形,坐标单位是像素,图形窗口左上角坐标为(0,0),矩形中间填充颜色COLOR,COLOR为0表示不填充。
例如:
DRAWRECTABS(0,0,100,60,0)表示在图形最左上角位置绘制100*60像素的矩形,不填充内部。
DRAWRECTREL相对位置画矩形
在图形相对位置上画矩形。
用法:
DRAWRECTREL(LEFT,TOP,RIGHT,BOTTOM,COLOR),以图形窗口(LEFT,TOP)为左上角,(RIGHT,BOTTOM)为右下角绘制矩形,坐标单位是窗口沿水平和垂直方向的1/1000,取值范围是0—999,超出范围则可能显示在图形窗口外,矩形中间填充颜色COLOR,COLOR为0表示不填充。
例如:
DRAWRECTREL(0,0,500,500,RGB(255,255,0))表示在图形最左上部1/4位置用黄色绘制矩形。
STICKLINE函数,支持水平偏移
用法:
STICKLINE(COND,PRICE1,PRICE2,WIDTH,ATTR),当COND条件满足时,在PRICE1和PRICE2位置之间画柱状线,宽度为WIDTH(10为标准间距),ATTR的个位不为0则画空心柱,ATTR的十位以上部分表示左右移动,范围是-1000—1000,表示移动位置的千分比。
例如:
STICKLINE(CLOSE>OPEN,CLOSE,OPEN,0.8,501)表示画K线中阳线的空心柱体部分,向右移动K线宽度的50%。
逐单统计数据函数
逐单统计数据函数
用户可以使用如下函数调用逐单统计的数据:
ORDERVOL委托单成交量
取得当前周期成交的按照委托单大小划分的成交量,委托单分为买入委托和卖出委托,小单,中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
ORDERVOL(N,M),N表示类型,N=1买入委托单,N=2卖出委托单,M表示委托单大小,M=0所有委托单,M=1中单,M=2大单,M=3特大单。
例如:
ORDERVOL(1,2)/ORDERVOL(1,0)*100表示大单成交量占总成交量的百分比。
ORDERNUM委托单成交数量
取得当前周期成交的委托单成交数量,委托单分为买入委托和卖出委托,小单,中单(>2万股或4万元),大单(>10万股或20万元),特大单(>50万股或100万元),该函数仅对Level2行情显示有效。
用法:
ORDERNUM(N,M),N表示类型,N=1买入委托单,N=2卖出委托单,M表示委托单大小,M=0所有委托单,M=1中单,M=2大单,M=3特大单。
逐单统计的日线函数和指标
1.新增的Level-2行情日线函数
ORDER委托单成交单数
日线取得该日成交的委托单数量,委托单分为买入委托和卖出委托,该函数仅对Level2行情显示有效。
用法:
ORDER(N),N表示类型,N=1买入委托单,N=2卖出委托单。
BIGORDER委托单大单成交比例
日线取得该日成交的大单占总的成交量比例,委托单分为买入委托和卖出委托,大单表示>10万股或20万元,该函数仅对Level2行情显示有效。
用法:
BIGORDER(N),N表示类型,N=1买入委托单,N=2卖出委托单。
2.新增的Level-2日线指标
SHAD主力集散StrongHandsAccumulationOrDistribution
SHAD主力集散StrongHandsAccumulationOrDistribution指标是根据交易所发送的Level-2数据,计算出一定周期内卖出委托单数量和买入委托单数量的差与总委托单数量的比值。
如果值为正,说明卖出的委托单数量大于买入的委托单数量,主力在收集;如果值为负,说明卖出的委托单数量小于买入的委托单数量,主力在派发。
BIGORDER主力大单
大于10万股或20万元已成交委托单成交量占总成交量的比例,买入卖出分别统计并可以计算一段时间的累计值。
VARIABLE 变量定义
定义并初始化变量
语法:
VARIABLE:
name=inivalue,
name表示变量名,
inivalue表示变量类型及初始值
例如:
VARIABLE:
T=0;表示定义浮点数变量T并初始化为0
INPUT 定义参数
定义并设置参数
语法:
INPUT:
name(default,min,max,step),
name表示参数名,
default表示缺省值,
min表示最小值,
max表示最大值,
step表示优化步长,
除default外都可以省略。
例如:
INPUT:
T(10);表示定义参数T,缺省值为10
IF 分支语句
分支语句IFexprTHENexprELSEexpr
THEN 分支语句
分支语句IFexprTHENexprELSEexpr
ELSE 分支语句
分支语句IFexprTHENexprELSEexpr
FOR FOR循环
循环语句FORexpr=n1TOn2DO
TO FOR循环
循环语句FORexpr=n1TOn2DO
DOWNTO FOR循环
循环语句FORexpr=n1DOWNTOn2DO
DO 循环开始
FOR循环和WHILE循环语句开始
WHILE WHILE循环
循环语句WHILEexprDO
BREAK 终止循环
循环终止语句:
终止IFWHILE循环的继续执行
BEGIN 组合语句
将BEGIN和END之间的语句合成一个复合语句
END 组合语句
将BEGIN和END之间的语句合成一个组合语句
DATA2 数据2
引用本股票之外的数据
REFLINE 参考线
使用参考线作为横坐标线
语法:
REFLINE:
l1,l2,l3...,l1,l2表示需要画水平坐标线的位置
BREAK 终止循环
终止WHILE或FOR循环
DEFINE 宏定义
宏定义DEFINENameSomething
DEFFUNC 函数宏定义
函数宏定义DEFFUNCName(x)Something
JP 跳转
BREAK BREAK
LOOP 单步循环
JT TRUE跳转
JNT FALSE跳转
JNE 不等于跳转
JEQ 等于跳转
JLE 小于等于跳转
JLT 小于跳转
JGE 大于等于跳转
JGT 大于跳转
INC 加1
DEC 减1
PERCENT 百分比
REFINDI 指标引用
REFEXPLORER 条件选股引用
REFSYSTEM 交易系统引用
REFSTK 股票引用
REFDLL 动态库引用
ARYREF 数组引用
ARYASGN 数组赋值
STRADD 字符串加
STRADDNUM 字符串加数字
DATA2 数据2 引用本股票之外的数据
:
赋值
:
= 赋值
= 相等
<> 不等
> 大于
>= 大于或等于
< 小于
<= 小于或等于
And 逻辑与运算
Or 逻辑或运算
+ 加法
- 减法
* 乘法
/ 除法
O 开盘价
H 最高价
L 最低价
C 收盘价
V 成交量
OPEN 取得该周期开盘价
HIGH 取得该周期最高价
LOW 取得该周期最低价
CLOSE 收盘价
VOL 成交量
AMOUNT 成交额
ADVANCE 取得该周期上涨家数
DECLINE 取得该周期下跌家数
TICKCOUNT 取得该周期成交笔数
BUYVOL 取得主动性买单量
SELLVOL 取得主动性卖单量
ISBUYORDER 取得该成交是否为主动性买单
BIDPRICE 取得委买1--委买3价格
BIDVOL 取得委买1--委买3量
ASKPRICE 取得委卖1--委卖3价格
ASKVOL 取得委卖1--委卖3量
DIVIDEND 每股派息数量
DIVIDBARS 派息到现在的周期数
SPLIT 除权比例SPLIT(N),取得之前第N次除权(送股或配股)的除权比例
SPLITBARS 除权到现在的周期数SPLITBARS(N),取得之前第N次除权到当前的周期数
BARSTATUS 数据位置状态返回1表示第一根K线,2表示最后一个数据,0表示中间位置
DISPSTATUS 数据显示状态返回1表示显示区域的第一根K线,2表示表示显示区域的最
后一根K线,0表示其它位置。
EXTDATA 扩展数据 取得日线扩展数据(1-11)
SELFDATA 自定义数据 SELFDATA(S),取得名为S的自定义数据
SELFSTRING 取得自定义字符串数据
ISUP 该周期是否收阳当收盘>开盘时,返回值为1,否则为0
ISEQUAL 该周期是否平盘当收盘=开盘时,返回值为1,否则为0
ISDOWN 该周期是否收阴当收盘<开盘时,返回值为1,否则为0
DAY 取得该周期的日期
WEEKDAY 取得该周期的星期数 函数返回有效值范围为(0-6),0表示星期天
MONTH 取得该周期的月份
YEAR 取得该周期的年份 函数返回有效值范围为(1970-2038)
MINUTE 取得该周期的分钟数 函数返回有效值范围为(0-59)
HOUR 取得该周期的小时数 函数返回有效值范围为(0-23)
DATE 取得该周期从1900以来的年月函数返回有效值范围为(700101-1341231)
TIME 取得该周期的时分秒 函数返回有效值范围为(000000-235959)
DAYS1970 取得该周期从1970以来的天数
TIME0 取得该周期从当日0点以来的秒数函数返回自从当日0点以来的秒数,对于
日线以上的分析周期,返回0
DATETOD1970 日期转换为1970日 DATETOD1970(X),得到日期X距离1970年1月1日以来的
天数
D1970TODATE 1970来的天数转换为日期 D1970TODATE(X),得到1970日期X的日期值
TIMETOT0 时间转化为秒数 TIMETOT0(X),得到时间X距离当日0点的秒数
T0TOTIME 秒数转换为时间 T0TOTIME(X),得到从0点开始X秒后的时间值
BARPOS 取得该周期在所有数据中的位置对于日线来说,函数返回上市以来的天数
COUNT COUNT(X,N),统计N周期中满足X条件的周期数,若N=0则从第一个有效值开始
SUM SUM(X,N),统计N周期中X的总和,N=0则从第一个有效值开始
REF REF(X,A),引用A周期前的X值
BACKSET BACKSET(X,N),若X非0,则将当前位置到N周期前的数值设为1
HHV HHV(X,N),求N周期内X最高值,N=0则从第一个有效值开始
LLV LLV(X,N),求N周期内X最低值,N=0则从第一个有效值开始
MA MA(X,N),求X的N日移动平均值。
算法:
(X1+X2+X3+...+Xn)/N
EMA EMA(X,N),求X的N日指数平滑移动平均。
算法:
若Y=EMA(X,N)
则Y=[2*X+(N-1)*Y']/(N+1),
其中Y表示上一周期Y值
SMA SMA(X,N,M),求X的N日移动平均,M为权重
算法:
若Y=SMA(X,N,M)
则Y=[M*X+(N-M)*Y')/N,
其中Y表示上一周期Y值,N必须大于M
DMA DMA(X,A),求X的动态移动平均
算法:
若Y=DMA(X,A)
则Y=A*X+(1-A)*Y',27h,',其中Y表示上一周期Y值,A必须小1