编辑东方财富通的函数doc.docx
《编辑东方财富通的函数doc.docx》由会员分享,可在线阅读,更多相关《编辑东方财富通的函数doc.docx(49页珍藏版)》请在冰豆网上搜索。
编辑东方财富通的函数doc
东方财富通的函数(上)
东方财富通是在通达信基础上建立起来的软件。
函数和通达信一样。
我此前的通达信函数是早期的,所以不全。
虽然后来补了一次,但不在一起。
这次东方财富通的函数,算是全了。
但东方财富通在处理千年虫的方法上,与通达信不同。
在转换二者公式运用DATE函数时,要注意它们的区别。
[引用函数]
[DRAWNULL]
说明:
返回无效数
用法:
DRAWNULL
例如:
IF(CLOSE>REF(CLOSE,1),CLOSE,DRAWNULL),表示下跌时分析图上不画线
[BACKSET]
说明:
将当前位置到若干周期前的数据设为1
用法:
BACKSET(X,N),若X不为0,则将当前位置到N周期前的数值设为1
例如:
BACKSET(CLOSE>OPEN,2),若收阳则将该周期及前一周期数值设为1,否则为0
[BARSCOUNT]
说明:
求总的周期数
用法:
BARSCOUNT(X),第一个有效数据到当前的周期数
例如:
BARSCOUNT(CLOSE),对于日线数据取得上市以来总交易日数
[CURRBARSCOUNT]
说明:
求到最后交易日的周期数
用法:
CURRBARSCOUNT(X),最新有效数据到当前的周期数
例如:
CURRBARSCOUNT,对于日线数据取得距离最新交易日的交易日数
[TOTALBARSCOUNT]
说明:
求总的周期数
用法:
TOTALBARSCOUNT,求总的周期数
[BARSLAST]
说明:
上一次条件成立到当前的周期数
用法:
BARSLAST(X),上一次X不为0到现在的天数
例如:
BARSLAST(CLOSE/REF(CLOSE,1)>=1.1),表示上一个涨停板到当前的周期数
[COUNT]
说明:
统计满足条件的周期数
用法:
COUNT(X,N),统计N周期中满足X条件的周期数,若N=0则从第一个有效值开始
例如:
COUNT(CLOSE>OPEN,20),表示统计20周期内收阳的周期数
[HHV]
说明:
求最高值
用法:
HHV(X,N),求N周期内X最高值,N=0则从第一个有效值开始
例如:
HHV(HIGH,22),表示求22日最高价
[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,22),求得22日最低点到当前的周期数
[REVERSE]
说明:
求相反数
用法:
REVERSE(X),返回-X
例如:
REVERSE(OPEN),返回-OPEN
[REF]
说明:
引用若干周期前的数据
用法:
REF(X,A),引用A周期前的X值
例如:
REF(CLOSE,1),表示上一周期的收盘价,在日线上表示昨收价
[REFDATE]
说明:
引用指定日期的数据
用法:
REFDATE(X,A),引用A日期的X值
例如2010年12月08日的收盘价
[SUM]
说明:
求总和
用法:
SUM(X,N),统计N周期中X的总和,N=0则从第一个有效值开始
例如:
SUM(VOL,0),表示统计从上市第一天以来的成交量总和
[FILTER]
说明:
过滤连续出现的信号
用法:
FILTER(X,N),X满足条件后,删除其后N周期内的数据,将其置为0
例如:
FILTER(CLOSE>OPEN,7),查找阳线,7天内再次出现的阳线不被记录在内
[SUMBAR]
说明:
向前累加到指定值到现在的周期数
用法:
SUMBAR(X,A),将X向前累加直到大于等于A,返回这个区间的周期数
例如:
SUMBAR(VOL,CAPITAL),求完成一次100%累计换手到现在的周期数
[SUMBARS]
说明:
向前累加到指定值到现在的周期数
用法:
SUMBARS(X,A),将X向前累加直到大于等于A,返回这个区间的周期数
例如:
SUMBARS(VOL,CAPITAL),求完成一次100%累计换手到现在的周期数
[SMA]
说明:
返回移动平均
用法:
SMA(X,N,M),X的N日移动平均,M为权重,若Y=SMA(X,N,M)则Y=(X*M+Y'*(N-M))/N
[MA]
说明:
返回简单移动平均
用法:
MA(X,M),X的M日简单移动平均
[DMA]
说明:
求动态移动平均
用法:
DMA(X,A) 求X的动态移动平均
算法:
若Y=DMA(X,A)则Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必须小于1
例如:
DMA(CLOSE,VOL/CAPITAL),表示求以换手率作平滑因子的平均价
[EMA]
说明:
求指数移动平均
用法:
EMA(X,N),求X的N日指数平滑移动平均。
若Y=EMA(X,N)则Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值
例如:
EMA(CLOSE,22)表示求22日指数平滑均价
[WMA]
说明:
X的加权移动平均
用法:
WMA(X,N),统计N周期的数组X,若Y=WMA(X,N),则Y=(N*X0+(N-1)*X1+(N-2)*X2)+...+1*XN)/(N+(N-1)+(N-2)+...+1),X0表示本周期值,X1表示上一周期值
例如:
WMA(CLOSE,30),表示求30日加权均价
[EXPMA]
说明:
求指数移动平均(同EMA)
用法:
EXPMA(X,N),求X的N日指数平滑移动平均。
若Y=EXPMA(X,N)则Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值
例如:
EXPMA(CLOSE,22)表示求22日指数平滑均价
[MEMA]
说明:
返回平滑移动平均
用法:
MEMA(X,M),X的M日平滑移动平均。
MEMA(X,N)与MA的差别在于起始值为一平滑值,而不是初始值
[EXPMEMA]
说明:
返回指数平滑移动平均
用法:
EXPMEMA(X,M),X的M日指数平滑移动平均。
EXPMEMA同EMA(即EXPMA)的差别在于他的起始值为一平滑值
[RANGE]
说明:
判断是否在某一区间
用法:
RANGE(A,B,C),A在B和C
例如:
RANGE(A,B,C),A大于B同时小于C时返回1,否则返回0
[CONST]
说明:
取某值为常量
用法:
CONST(A),取A最后的值为常量.
例如:
CONST(INDEXC),表示取大盘现价
[ISLASTBAR]
说明:
判断是否最后一个周期
用法:
ISLASTBAR判断是否为最后一个周期
[BARSLASTCOUNT]
说明:
统计连续满足条件的周期数
用法:
BARSLASTCOUNT(X),统计连续满足条件的周期数
例如:
BARSLASTCOUNT(C>O),表示统计连续收阳的周期数
[FILTERX]
说明:
反向过滤连续出现的信号
用法:
FILTERX(X,N):
X满足条件后,将其前N周期内的数据置为0
例如:
FILTERX(C>O,3),前三日出现过的阳线不被记录在内
[LOD]
说明:
求低值名次
用法:
LOD(X,N),当前数据X是N周期内的第几个低值,N=0则从第一个有效值开始
例如:
LOD(LOW,20),表示是20个周期内的第几个低价。
[TMA]
说明:
返回递归移动平均
用法:
TMA(X,N,M),求X的递归移动平均,N、M为权重。
若Y=TMA(X,N,M),则Y=(N*Y'+M*X),其中Y'表示上一周期Y值,初值为M*X
例如:
TMA(CLOSE,0.9,0.1),表示求X的递归移动平均
[指标函数]
[COST]
说明:
成本分布情况(矩形分布)
用法:
COST(10),表示10%获利盘的价格是多少,即有10%的持仓量在该价格以下,其余90%在该价格以上,为套牢盘。
该函数仅对日线分析周期有效
[PEAK]
说明:
前M个ZIG转向波峰值
用法:
PEAK(K,N,M,ABS)表示之字转向ZIG(K,N,ABS)的前M个波峰的数值,M必须大于等于1。
若ABS为0或省略,则表示相对ZIG转向,否则为绝对ZIG转向
例如:
PEAK(1,5,1)表示%5最高价ZIG转向的上一个波峰的数值
[PEAKBARS]
说明:
前M个ZIG转向波峰到当前距离
用法:
PEAKBARS(K,N,M,ABS)表示之字转向ZIG(K,N,ABS)的前M个波峰到当前的周期数,M必须大于等于1。
若ABS为0或省略,则表示相对ZIG转向,否则为绝对ZIG转向
例如:
PEAK(0,5,1)表示%5开盘价ZIG转向的上一个波峰到当前的周期数
[SAR]
说明:
抛物转向
用法:
SAR(N,S,M),N为计算周期,S为步长,M为极值
例如:
SAR(10,2,20)表示计算10日抛物转向,步长为2%,极限值为20%
[SARTURN]
说明:
抛物转向点
用法:
SARTURN(N,S,M),N为计算周期,S为步长,M为极值,若发生向上转向则返回1,若发生向下转向则返回-1,否则为0,其用法与SAR函数相同
[TROUGH]
说明:
前M个ZIG转向波谷值
用法:
TROUGH(K,N,M,ABS)表示之字转向ZIG(K,N,ABS)的前M个波谷的数值,M必须大于等于1。
若ABS为0或省略,则表示相对ZIG转向,否则为绝对ZIG转向
例如:
TROUGH(2,5,2)表示%5最低价ZIG转向的前2个波谷的数值
[TROUGHBARS]
说明:
前M个ZIG转向波谷到当前距离
用法:
TROUGHBARS(K,N,M,ABS)表示之字转向ZIG(K,N,ABS)的前M个波谷到当前的周期数,M必须大于等于1。
若ABS为0或省略,则表示相对ZIG转向,否则为绝对ZIG转向
例如:
TROUGH(2,5,2)表示5%最低价ZIG转向的前2个波谷到当前的周期数
[WINNER]
说明:
获利盘比例(矩形分布)
用法:
WINNER(CLOSE),表示以当前收市价卖出的获利盘比例,例如返回0.1表示10%获利盘;WINNER(10.5)表示10.5元价格的获利盘比例
该函数不包含未来数据,且仅对日线分析周期有效,运算过程比较耗时
[LWINNER]
说明:
近期获利盘比例
用法:
LWINNER(5,CLOSE),表示最近5天的那部分成本以当前收市价卖出的获利盘比例,返回0.1表示10%获利盘。
该函数不包含未来数据,运算比较耗时
[PWINNER]
说明:
远期获利盘比例
用法:
PWINNER(5,CLOSE),表示5天前的那部分成本以当前收市价卖出的获利盘比例,返回0.1表示10%获利盘。
该函数不包含未来数据,运算比较耗时
[ZIG]
说明:
之字转向
用法:
ZIG(K,N),当价格变化量超过N%时转向,K表示0:
开盘价,1:
最高价,2:
最低价,3:
收盘价,其余:
数组信息
例如:
ZIG(3,5),表示收盘价的5%的ZIG转向
[数学函数]
[ABS]
说明:
求绝对值
用法:
ABS(X)返回X的绝对值
例如:
ABS(-23)返回23
[ACOS]
说明:
反余弦值
用法:
ACOS(X),返回X的反余弦值
[ASIN]
说明:
反正弦值
用法:
ASIN(X),返回X的反正弦值
[ATAN]
说明:
反正切值
用法:
ATAN(X),返回X的反正切值
[CEILING]
说明:
向数值增大方向舍入
用法:
CEILING(X)返回沿X数值增大方向最接近的整数
例如:
CEILING(3.3)求得4,CEILING(-3.5)求得-3
[COS]
说明:
余弦值
用法:
COS(X),返回X的余弦值
[EXP]
说明:
指数
用法:
EXP(X)为e的X次幂
例如:
EXP(CLOSE)返回e的CLOSE次幂
[FLOOR]
说明:
向数值减小方向舍入
用法:
FLOOR(X)返回沿X数值减小方向最接近的整数
例如:
FLOOR(3.3)求得3,FLOOR(-3.5)求得-4向下
[FRACPART]
说明:
取得数据的小数部分
用法:
FRACPART(X)返回数值的小数部分
例如:
FRACPART(12.3)求得0.3,FRACPART(-3.5)求得-0.5
[INTPART]
说明:
取得数据的整数部分
用法:
INTPART(X)返回沿X绝对值减小方向最接近的整数
例如:
INTPART(12.3)求得12,INTPART(-3.5)求得-3
[LN]
说明:
求自然对数
用法:
LN(X)以e为底的对数
例如:
LN(CLOSE)求收盘价的对数
[LOG]
说明:
求10为底的对数
用法:
LOG(X)取得X的对数
例如:
LOG(1000)等于3
[MAX]
说明:
求最大值
用法:
MAX(A,B)返回A和B中的较大值
例如:
MAX(CLOSE-OPEN,0)表示若收盘价大于开盘价返回它们的差值,否则返回0
[MIN]
说明:
求最小值
用法:
MIN(A,B)返回A和B中的较小值
例如:
MIN(CLOSE,OPEN)返回开盘价和收盘价中的较小值
[MOD]
说明:
求模运算
用法:
MOD(A,B)返回A对B求模
例如:
MOD(18,10)返回8
[POW]
说明:
乘幂
用法:
POW(A,B)返回A的B次幂
例如:
POW(CLOSE,2)求得收盘价的2次方
[RAND]
说明:
随机整数
用法:
RAND(N),返回一个范围在1-N的随机整数
例如:
CLOSE*(RAND(10)/10+0.4),输出收盘价乘以[0.5-1.4]的随机系数
[REVERSE]
说明:
求相反数
用法:
REVERSE(X)返回-X
例如:
REVERSE(OPEN)返回-OPEN
[ROUND]
说明:
四舍五入为整数,显示时不带小数
用法:
ROUND(X)将X四舍五入为整数
例如:
ROUND(3.3)求得3,ROUND(3.5)求得4,ROUND(-3.5)求得-4
[SGN]
说明:
求符号值
用法:
SGN(X),当X>0,X=0,X<0分别返回1,0,-1
[SIGN]
说明:
求符号值
用法:
SIGN(X),当X>0,X=0,X<0分别返回1,0,-1
[SIN]
说明:
正弦值
用法:
SIN(X),返回X的正弦值
[SQRT]
说明:
开平方
用法:
SQRT(X)为X的平方根
例如:
SQRT(CLOSE)收盘价的平方根
[TAN]
说明:
正切值
用法:
TAN(X),返回X的正切值
[时间函数]
[PERIOD]
说明:
周期
用法:
结果从0到11,依次分别是1/5/15/30/60分钟,日/周/月,多分钟,多日,季,年
[DATE]
说明
用法
[TIME]
说明:
取得该周期的时分秒
用法:
TIME,函数返回有效值范围为(000000-235959)
[YEAR]
说明:
取得该周期的年份
用法:
YEAR,函数返回有效值范围为(1970-2038)
[MONTH]
说明:
取得该周期的月份
用法:
MONTH,函数返回有效值范围为(1-12)
[WEEK]
说明:
取得该周期的星期数
用法:
WEEKDAY,函数返回有效值范围为(0-6),0表示星期天
[DAY]
说明:
取得该周期的日期
用法:
DAY,函数返回有效值范围为(1-31)
[HOUR]
说明:
取得该周期的小时数
用法:
HOUR,函数返回有效值范围为(0-23),对于日线及更长的分析周期值为0
[MINUTE]
说明:
取得该周期的分钟数
用法:
MINUTE,函数返回有效值范围为(0-59),对于日线及更长的分析周期值为0
[FROMOPEN]
说明:
取得当前时刻距开盘的时长
用法:
FROMOPEN,返回当前时刻距开盘有多长时间,单位为分钟
例如:
FROMOPEN,当前时刻为早上10点,则返回31
[DATETOD1970]
说明:
距离1970年1月1日以来的天数
用法:
DATETOD1970(X),得到日期X距离1970年1月1日以来的天数
例如:
DATETOD1970(DATE)就返回今天距离1970年1月1日的天数
[D1970TODATE]
说明:
得到1970年1月1日后的日期值
用法:
D1970TODATE(X),得到1970年1月1日后的日期值
例如:
D1970TODATE
(1)就返回700102
[IF]
说明:
根据条件求不同的值
用法:
IF(X,A,B),若X不为0则返回A,否则返回B
例如:
IF(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值
[IFF]
说明:
根据条件求不同的值
用法:
IFF(X,A,B),若X不为0则返回A,否则返回B
例如:
IFF(CLOSE>OPEN,HIGH,LOW),表示该周期收阳则返回最高值,否则返回最低值
[IFN]
说明:
根据条件求不同的值
用法:
IFN(X,A,B),若X不为0则返回B,否则返回A
例如:
IFN(CLOSE>OPEN,HIGH,LOW),表示该周期收阴则返回最高值,否则返回最低值
[绘图函数]
[POLYLINE]
说明:
在图形上绘制折线段
用法:
POLYLINE(COND,PRICE),当COND条件满足时,以PRICE位置为顶点画折线连接
例如:
POLYLINE(HIGH>=HHV(HIGH,20),HIGH)表示在创20天新高点之间画折线
[DRAWLINE]
说明:
在图形上绘制直线段
用法:
DRAWLINE(COND1,PRICE1,COND2,PRICE2,EXPAND),当COND1条件满足时,在PRICE1位置画直线起点;当COND2条件满足时,在PRICE2位置画直线终点;EXPAND为延长类型。
COND1,表示条件变量1;PRICE1,表示第一个画线点,通常取值为H,L,C,O等等;COND2,表示条件变量2;PRICE2,表示第二个画线点;EXPAND,常数变量,1、向右延伸;2、向左延伸;3、左右同时延伸
例如:
DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,LOW<=LLV(LOW,20),LOW,1),表示在创20天新高与创20天新低之间画直线并且向右延长
[DRAWKLINE]
说明:
在图形上绘制K线
用法:
DRAWKLINE(HIGH,OPEN,LOW,CLOSE),以HIGH为最高价,OPEN为开盘价,LOW为最低,CLOSE收盘画K线
[STICKLINE]
说明:
在图形上绘制柱线
用法:
STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY),当COND条件满足时,在PRICE1和PRICE2位置之间画柱状线,宽度为WIDTH(10为标准间距),EMPTH为0画实心柱,-1画虚线空心柱,否则画实线空心柱
例如:
STICKLINE(CLOSE>OPEN,CLOSE,OPEN,0.8,1),表示画K线中阳线的空心柱体部分
[DRAWICON]
说明:
在图形上绘制小图标
用法:
DRAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标
15种图标编码为1-15(1-3为小脸,4-5为上下箭头,6-7为红绿小旗,8-9为三角形,10-12为信号灯,13-15为O、X、四方形)
例如:
DRAWICON(CLOSE>OPEN,LOW,4)表示当收阳时在最低价位置画4号图标
[DRAWTEXT]
说明:
在图形上显示文字
用法:
DRAWTEXT(COND,PRICE,TEXT),当COND条件满足时,在PRICE位置书写文字TEXT
例如:
DRAWTEXT(CLOSE/OPEN>1.08,LOW,'大阳线')表示当日涨幅大于8%时在最低价位置显示'大阳线'字样
[DRAWNUMBER]
说明:
在图形上显示数字
用法:
DRAWNUMBER(COND,PRICE,NUMBER),当COND条件满足时,在PRICE位置书写数字NUMBER
例如:
DRAWNUMBER(CLOSE/OPEN>1.08,LOW,C),表示当日涨幅大于8%时在最低价位置显示收盘价
[DRAWBAND]
说明:
画出带状线
用法:
DRAWBAND(VAL1,COLOR1,VAL2,COLOR2),当VAL1>VAL2时,在VAL1和VAL2之间填充COLOR1;当VAL1
例如:
DRAWBAND(OPEN,RGB(0,224,224),CLOSE,RGB(255,96,96))
[DRAWBARCHART]
说明:
在图形上绘制美国线
用法:
DRAWBARCHART(HIGH,OPEN,LOW,CLOSE)以HIGH为最高价,OPEN为开盘价,LOW为最低价,CLOSE为收盘价绘制美国线
[RGB]
说明:
将自定颜色作为数值输出.
用法:
RGB(Red,Green,Blue),输出为0XRRGGBB,参数使用十进制数,范围为0至255,以最近一个周期数值为准
例如:
RGB(0,0,255)输出结果为16进制的0XFF0000
[FILLRGN]
说明:
根据条件填充区域
用法:
FILLRGN(PRICE1,PRICE2,COND1,COLOR1,COND2,COLOR2...),填充PRICE1到PRICE2之间的区域,当COND1条件满足时,用COLOR1颜色,当COND2条件满足时,用COLOR2颜色,否则不填充,从COND1之后的参数均可以省略,最多可以有10组条?
例如:
FILLRGN(CLOSE,OPEN,CLOSE>OPEN,RGB(255,0,0),CLOSE[DRAWGBK]
说明:
根据条件填充背景区域
用法:
DRAWGBK(COND,COLOR),填充满足COND条件的背景区域
例如:
DRAWGBK(CLOSE>OPEN,COLORRED)表示收阳时用红色填充背景
[统计函数]
[AVEDEV]
说明:
平均绝对偏差
用法:
AVEDEV(X,N)
[DEVSQ]
说明:
数据偏差平方和
用法:
DEVSQ(X,N)
[FORCAST]
说明:
线性回归预测值
用法:
FORCAST(X,N)为X的N周期线性回归预测值
例如:
FORCAST(CLOSE,20),表示求20周期线性回归预测本周期收盘价
[SLOPE]
说明:
线性回归斜率
用法:
SLOPE(X,N)为X的N周期线性回归线的斜率
例如:
SLOPE(CLOSE,20)表示求20周期线性回归线的斜率
[STD]
说明:
估算标准差
用法:
STD(X,N)为X的N日估算标准差
[STDP]
说明:
总体标准差
用法:
STDP(X,N)为X的N日总体标准差
[STDDEV]
说明:
标准差
用法:
STDDEV(X,N)为X的N日标准差
[VAR]
说明:
估算样本方差
用法:
VAR(X,N)为X的N日估算样本方差
[VARP]
说明:
总体样本方差
用法:
VARP(X,N)为X的N日总体样本方差
[基础行情函数]
[HIGH]
说明:
返回该周期最高价
用法:
返回该周期最高价
[H]
说明:
返回该周