大智慧新一代公式编辑语法大全大智慧新一代公式编辑语法大全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,缺省值为10IF 分支语句分支语句 IF expr THEN expr ELSE exprTHEN 分支语句分支语句 IF expr THEN expr ELSE exprELSE 分支语句分支语句 IF expr THEN expr ELSE exprFOR FOR循环循环语句 FOR expr=n1 TO n2 DOTO FOR循环循环语句 FOR expr=n1 TO n2 DODOWNTO FOR循环循环语句 FOR expr=n1 DOWNTO n2 DODO 循环开始FOR循环和WHILE循环语句开始WHILE WHILE循环循环语句 WHILE expr DOBREAK 终止循环循环终止语句: 终止IF WHILE循环的继续执行BEGIN 组合语句将 BEGIN 和 END 之间的语句合成一个复合语句END 组合语句将 BEGIN 和 END 之间的语句合成一个组合语句DATA2 数据2引用本股票之外的数据REFLINE 参考线使用参考线作为横坐标线语法:REFLINE:l1,l2,l3...,l1,l2表示需要画水平坐标线的位置BREAK 终止循环终止WHILE或FOR循环DEFINE 宏定义宏定义 DEFINE Name SomethingDEFFUNC 函数宏定义函数宏定义 DEFFUNC Name(x) SomethingJP 跳转BREAK BREAKLOOP 单步循环JT TRUE跳转JNT FALSE跳转JNE 不等于跳转JEQ 等于跳转JLE 小于等于跳转JLT 小于跳转JGE 大于等于跳转JGT 大于跳转INC 加1DEC 减1PERCENT 百分比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,否则为ISDOWN 该周期是否收阴当收盘<开盘时,返回值为1,否则为0DAY 取得该周期的日期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点以来的秒数,对于日线以上的分析周期,返回0DATETOD1970 日期转换为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周期前的数值设为1HHV 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必须大于MDMA DMA(X,A),求X的动态移动平均算法: 若Y=DMA(X,A)则 Y=A*X+(1-A)*Y',27h,',其中Y 表示上一周期Y值,A必须小1例如:DMA(CLOSE,VOL/CAPITAL)表示求以换手率作平滑因子的平均价BARSCOUNT BARSCOUNT(X)第一个有效数据到当前的周期数BARSSINCE BARSSINCE(X):第一次X不为0到现在的周期数BARSLAST BARSLAST(X):上一次X不为0到现在的周期数LAST LAST(X),统计连续满足X条件的周期数HHVBARS HHVBARS(X,N):求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计LLVBARS LLVBARS(X,N):求N周期内X最低值到当前周期数,N=0表示从第一个有效值开始统计SUMBARS SUMBARS(X,A):将X向前累加直到大于等于A,返回这个区间的周期数ALL ALL(X,N),统计N周期中是否一直都满足X条件,N=0表示从第一个有效值开始统计ANY ANY(X,N),统计N周期中是否至少有一次满足X条件,N=0表示从第一个有效值开始统计FILTER FILTER(X,N):X满足条件后,将其后N周期内的数据置为0,若N 为0表示将其后的所有数据置0IF IF(X,A,B)若X不为0则返回A,否则返回BCROSS CROSS(A,B)表示当A从下方向上穿过B时返回1,否则返回0 LONGCROSS LONGCROSS(A,B,N)表示A在N周期内都小于B,本周期从下方向上穿过B时返回1,否则返回0BETWEEN BETWEEN(A,B,C)表示A处于B和C之间时返回1,否则返回0 RANGE RANGE(A,B,C)表示A大于B同时小于C时返回1,否则返回0 NOT 求逻辑非REVERSE 求相反数。
REVERSE(X)返回-XMOD 求模运算。
MOD(A,B)返回A对B求模MAX 最大值 MAX(A,B...)返回所有参数的中的最大值,参数数量可以有2—16个MIN 最小值 MIN(A,B...)返回所有参数的中的最小值,参数数量可以有2—16个ABS 求绝对值 ABS(X)返回X的绝对值SGN 求符号值 SGN(X),当X>0,X=0,X<0分别返回1,0,-1LOG 求10为底的对数 LOG(X)取得X的对数LN 求自然对数POW 乘幂 POW(A,B)返回A的B次幂CEILING 向数值增大方向舍入FLOOR 向数值减小方向舍入INTPART 切断取整FRACPART 取得小数部分EXP 指数 EXP(X)为e的X次幂SQRT 开平方STD STD(X,N)为X的N日估算标准差STDP STDP(X,N)为X的N日总体标准差VAR VAR(X,N)为X的N日估算样本方差VARP : VARP(X,N)为X的N日总体样本方差AVEDEV AVEDEV(X,N)为X的N日平均绝对偏差DEVSQ DEVSQ(X,N)为X的N日数据偏差平方和FORCAST FORCAST(X,N)为X的N周期线性回归预测值SLOPE SLOPE(X,N)为X的N周期线性回归线的斜率COVAR COVAR(X,Y,N)为X与Y的N周期协方差RELATE RELATE(X,Y,N)为X与Y的N周期相关系数,其有效值范围在-1 — 1之间BETA BETA(N)为N周期当前股票收益与大盘收益相比的贝塔系数,该系数表明大盘每变动1%,则该股票将变动几%BETAUP BETAUP(N)为当前股票收益与大盘收益相比的上涨贝塔系数,该系数表明大盘每上涨1%,则该股票将上涨几%BETADOWN BETAUP(N)为当前股票收益与大盘收益相比的下跌贝塔系数,该系数表明大盘每下跌1%,则该股票将下跌几%BETA2 BETA2(X,Y,N)为X与Y的N周期相关贝塔系数,该系数表示Y 变化1%,则X将变化几%SAR SAR(N,S,M),N为计算周期,S为步长,M为极值的抛物转向SARTURN SARTURN(N,S,M),N为计算周期,S为步长,M为极值的抛物转向点,若向上转向则1,若向下转向则-1,否则为0ZIG ZIG(K,N,ABS),当价格变化量超过N%时转向,K表示 0:开盘价,1:最高价2:最低价,3:收盘价,4:低点采用最低价、高点采用最高价。