四、板块函数
CODE 品种代码
返回品种代码.
用法:
DRAWTEXT_FIX(ISLASTBAR,0,0,0,CODE);在屏幕左上角显示品种代码
STKNAME 品种名称
返回品种名称.
用法:
DRAWTEXT_FIX(ISLASTBAR,0,0,0,STKNAME);在屏幕左上角显示品种名称
HYBLOCK 所属行业(字串)
返回品种所属行业
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,HYBLOCK); 在屏幕左上角显示所属行业板块
DYBLOCK 所属地域(字串)
返回品种所属地域 .
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,DYBLOCK) ;在屏幕左上角显示所属地域板块
GNBLOCK 所属概念板块 (字串)
返回所属概念板块 .
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,GNBLOCK) 在屏幕左上角显示所属概念板块
FGBLOCK 所属风格板块 (字串)
返回股票所属风格板块 .
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,FGBLOCK) 在屏幕左上角显示所属风格板块
ZSBLOCK 所属指数板块 (字串)
返回股票所属指数板块 .
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,ZSBLOCK) 在屏幕左上角显示所属指数板块
ZHBLOCK 所属组合板块(字串)
返回股票所属组合板块 .
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,ZHBLOCK) 在屏幕左上角显示所属组合板块
ZDBLOCK 所属自定义板块 (字串)
返回股票所属自定义板块 .
用法: DRAWTEXT_FIX(ISLASTBAR,0,0,0,ZDBLOCK) 在屏幕左上角显示所属自定义板块
GNBLOCKNUM 所属概念板块(个数)
返回所属概念板块的个数,比如:IF(GNBLOCKNUM>5,1,0);.
FGBLOCKNUM 所属风格板块(个数)
返回所属风格板块的个数.
ZSBLOCKNUM 所属指数板块(个数)
返回所属指数板块的个数.
ZHBLOCKNUM 所属组合板块(个数)
返回所属组合板块的个数.
ZDBLOCKNUM 所属自定义板块(个数)
返回所属自定义板块的个数
HYZSCODE 所属行业的板块指数代码
返回品种所属行业的板块指数代码.比如: CALCSTOCKINDEX(HYZSCODE,'KDJ',3);
HYSYL 指数市盈率或个股所属行业的市盈率.
返回指数市盈率或个股所属行业的市盈率.
HYSJL 指数市净率或个股所属行业的市净率
返回指数市净率或个股所属行业的市净率.
INBLOCK 属于某板块
返回品种是否属于某板块.
用法:
if(INBLOCK('沪深300'),x,y);
板块名称支持系统板块(上证A股,深证A股,沪深A股,创业板,自选股,临时条件股,板块指数等),地区,行业,概念,风格,指数,组合和自定义板块,注意名称要准确
NAMELIKE 模糊匹配品种名称
返回股票名称是否以参数开头 .
用法: if(NAMELIKE('ST'),x,y)
CODELIKE 模糊匹配品种代码
返回品种代码是否以参数开头 .
用法: if(CODELIKE('600'),x,y)
NAMEINCLUDE 品种名称中包含
品种名称中是否包含参数.
用法: if(NAMEINCLUDE('文化'),x,y);
CON2STR 取值转为字符串
用法: CON2STR(A,N):取A最后的值(非序列值)转为字符串,小数位数N.
CON2STR(FINANCE(20),3)表示取营业收入,以3位小数转为字符串
VAR2STR 取值转为字符串(序列)
用法: VAR2STR(A,N) :取 A 的每一个值转为字符串,小数位数 N
用法: VAR2STR(C,3) 表示取收盘以 3 位小数转为字符串
STR2CON 字符串转为数字
用法: STR2CON(S) 将 S 字符串转化为数字 .
例如: STR2CON('2365.02') 表示将字符串 '2365.02' 转化为数字 2365.02
STRCAT 字符串相加
用法: STRCAT(A,B) 将两个字符串 A,B(非序列化) 相加成一个字符串 C
例如: STRCAT(' 多头 ',' 开仓 ') 将两个字符串 ' 多头 ' , ' 开仓 ' 相加成一个字符串 ' 多头开仓 '
STRSPACE 字符串加一空格
STRSPACE(A):字符串附带一空格
VARCAT 字符串相加(序列)
VARCAT(A,B):将两个字符串A,B相加成一个字符串C.
用法:
DRAWTEXT(CLOSE>OPEN,LOW,VARCAT('多头',VAR2STR(C,2))) 将两个字符串相加成一个字符串并按条件显示出来
STRCMP 字符串比较
STRCMP(A,B):比较两个字符串A,B是否相等.
用法:
STRCMP(HYBLOCK,'房地产')将成分股行业字符串与'房地产'比较,是否相等,如果相等表示属于房地产板块
FINDSTR 字符串查找
FINDSTR(A,B):在字符串A中查找字符串B,如果找到返回1,否则返回0.
用法:
FINDSTR('多头开仓','开仓')在字符串'多头开仓'中查找字符串'开仓',返回1
五、窗口输出函数
DRAWTEXT_FIX 定点文字
固定位置显示文字;在指标排序中显示字符串栏目.
用法:
DRAWTEXT_FIX(COND,X,Y,TYPE,TEXT),当COND条件满足时,在当前指标窗口内(X,Y)位置书写文字TEXT,X,Y为书写点在窗口中相对于左上角的百分比,TYPE:0为左对齐,1为右对齐.
例如:
DRAWTEXT_FIX(CURRBARSCOUNT=1 AND CLOSE/OPEN>1.08,0.5,0.5,0,'大阳线')表示最后一个交易日实体阳线大于8%时在窗口中间位置显示'大阳线'字样.
DRAWNUMBER_FIX 画定点数字
固定位置显示数字.
用法:
DRAWNUMBER_FIX(COND,X,Y,TYPE,NUMBER),当COND条件满足时,在当前指标窗口内(X,Y)位置书写数字NUMBER,X,Y为书写点在窗口中相对于左上角的百分比,TYPE:0为左对齐,1为右对齐.
例如:
DRAWNUMBER_FIX(CURRBARSCOUNT=1 AND CLOSE/OPEN>1.08,0.5,0.5,0,C)表示最后一个交易日实体阳线大于8%时在窗口中间位置显示收盘价.
函数范例:
示例公式: DRAWFIX
公式名称: DRAWFIX
公式脚本:
DRAWTEXT_FIX(ISLASTBAR,0.5,0,0,HYBLOCK),COLORYELLOW;
DRAWTEXT_FIX(ISLASTBAR,0,0,0,' 股本结构 :'),COLORRED;
DRAWTEXT_FIX(ISLASTBAR,0,0.1,0,' 总股本 :'),COLORRED;
DRAWNUMBER_FIX(ISLASTBAR,0,0.2,0,FINANCE(1)),COLORMAGENTA;
DRAWTEXT_FIX(ISLASTBAR,0.3,0.1,0,' 流通 A 股 :'),COLORGREEN;
DRAWNUMBER_FIX(ISLASTBAR,0.3,0.2,0,FINANCE(7)),COLORYELLOW;
DRAWTEXT_FIX(ISLASTBAR,0.5,0.1,0,' 今日换手率 :'),COLORGREEN;
DRAWNUMBER_FIX(ISLASTBAR,0.5,0.2,0,V*100/CAPITAL),COLORYELLOW;
六、逻辑函数
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个周期,M为常量
DOWNNDAY 连跌
返回是否连跌周期.
用法:
DOWNNDAY(CLOSE,M)
表示连跌M个周期,M为常量
NDAY 连大
返回是否持续存在X>Y
用法:
NDAY(CLOSE,OPEN,3)
表示连续3日收阳线
EXIST 存在
是否存在.
例如:
EXIST(CLOSE>OPEN,10)
表示10日内存在着阳线
EXISTR 存在
EXISTR(X,A,B):是否存在(前几日到前几日间).
例如:
EXISTR(CLOSE>OPEN,10,5)
表示从前10日内到前5日内存在着阳线
若A为0,表示从第一天开始,B为0,表示到最后日止
EVERY 一直存在
一直存在.
例如:
EVERY(CLOSE>OPEN,N)
表示N日内一直阳线(N应大于0,小于总周期数,N支持变量)
LAST 持续存在
LAST(X,A,B):持续存在.
例如:
LAST(CLOSE>OPEN,10,5)
表示从前10日到前5日内一直阳线
若A为0,表示从第一天开始,B为0,表示到最后日止
NOT 取反
求逻辑非.
用法:
NOT(X)返回非X,即当X=0时返回1,否则返回0
例如:
NOT(ISUP)表示平盘或收阴
ISVALID 判断有效值
七、选择函数
IF 条件判断
根据条件求不同的值.
用法:
IF(X,A,B)若X不为0则返回A,否则返回B
例如:
IF(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值
IFF 条件判断
用法同IF一样
IFN 条件反判断
根据条件求不同的值,同IF判断相反.
用法:
IFN(X,A,B)若X不为0则返回B,否则返回A
例如:
IFN(CLOSE>OPEN,HIGH,LOW)表示该周期收阴则返回最高值,否则返回最低值
IFC 条件判断,可中止
根据条件求不同的值,可中止.
用法:
IFC(X,A,B)若X不为0则返回A,否则返回B.IFC与IF函数的区别:根据X的值来选择性执行A、B表达式.
例如:
IFC(CLOSE>OPEN,HIGH,TESTSKIP(1));L;表示当日收阳则返回最高值,并执行下一句"L;",否则退出公式计算
VALUEWHEN境 条件跟随
VALUEWHEN(COND,X)
当COND条件成立时,取X的当前值,否则取VALUEWHEN的上个值.
TESTSKIP 是否就此返回
TESTSKIP(A):满足A则直接返回.
用法:
TESTSKIP(A)
表示如果满足条件A则该公式直接返回,不再计算接下来的表达式 注意:A为非序列数据,只取最后一个数据
八、数学函数
MAX 较大值
求最大值.
用法:
MAX(A,B)返回A和B中的较大值
例如:
MAX(CLOSE-OPEN,0)表示若收盘价大于开盘价返回它们的差值,否则返回0
MIN 较小值
求最小值.
用法:
MIN(A,B)返回A和B中的较小值
例如:
MIN(CLOSE,OPEN)返回开盘价和收盘价中的较小值
MAX6 较大值
求6个参数中的最大值.
用法:
MAX6(A,B,C,D,E,F)返回较大值
MIN6 较小值
求6个参数中的最小值.
用法:
MIN6(A,B,C,D,E,F)返回较小值
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.3) 求得 12 ; FLOOR(-3.5) 求得 -4 。
INTPART 整数部分
取整
用法: INTPART(A) 返回沿 A 绝对值减小方向最接近的整数。
例如: INTPART(12.3) 求得 12 , INTPART(-3.5) 求得 -3 。
BETWEEN 介于
介于。
用法: BETWEEN(A , B , C) 表示 A 处于 B 和 C 之间时返回 1 ,否则返回 0 。
例如: BETWEEN(CLOSE , MA(CLOSE , 10) , MA(CLOSE , 5)) 表示收盘价介于 5 日均线和 10 日均线之间。
FRACPART 小数部分
小数部分 .
用法: FRACPART(X) 返回 X 的小数部分
ROUND 四舍五入
四舍五入
用法: ROUND(X) 返回 X 四舍五入到个位的数值
ROUND2 四舍五入
四舍五入.
用法:
ROUND2(X,N),返回X四舍五入到N位小数的数值
由于精度问题,数据越大误差可能越大
SIGN 符号
取符号
用法: SIGN(X) 返回 X 的符号。当 X>0,X=0,X<0 分别返回 1,0,-1
MOD 模
取模
用法: MOD(M,N) 返回 M 关于 N 的模 (M 除以 N 的余数 )
例如: MOD(5,3) 返回 2
RAND 随机正整数
取随机数 .
用法: RAND(N), 返回一个范围在 1-N 的随机整数