麦语言函数手册.docx

上传人:b****1 文档编号:13730778 上传时间:2023-06-16 格式:DOCX 页数:126 大小:355.27KB
下载 相关 举报
麦语言函数手册.docx_第1页
第1页 / 共126页
麦语言函数手册.docx_第2页
第2页 / 共126页
麦语言函数手册.docx_第3页
第3页 / 共126页
麦语言函数手册.docx_第4页
第4页 / 共126页
麦语言函数手册.docx_第5页
第5页 / 共126页
麦语言函数手册.docx_第6页
第6页 / 共126页
麦语言函数手册.docx_第7页
第7页 / 共126页
麦语言函数手册.docx_第8页
第8页 / 共126页
麦语言函数手册.docx_第9页
第9页 / 共126页
麦语言函数手册.docx_第10页
第10页 / 共126页
麦语言函数手册.docx_第11页
第11页 / 共126页
麦语言函数手册.docx_第12页
第12页 / 共126页
麦语言函数手册.docx_第13页
第13页 / 共126页
麦语言函数手册.docx_第14页
第14页 / 共126页
麦语言函数手册.docx_第15页
第15页 / 共126页
麦语言函数手册.docx_第16页
第16页 / 共126页
麦语言函数手册.docx_第17页
第17页 / 共126页
麦语言函数手册.docx_第18页
第18页 / 共126页
麦语言函数手册.docx_第19页
第19页 / 共126页
麦语言函数手册.docx_第20页
第20页 / 共126页
亲,该文档总共126页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

麦语言函数手册.docx

《麦语言函数手册.docx》由会员分享,可在线阅读,更多相关《麦语言函数手册.docx(126页珍藏版)》请在冰点文库上搜索。

麦语言函数手册.docx

麦语言函数手册

 

文华财经“麦语言”函数手册

 

(2011年10月更新)

 

文华财经资讯有限公司

 

“麦语言”源于2004年文华推出的国内第一套程序化函数库,经过6年的发展,吸收几

十万用户的意见反馈,一点一点完善起来的,是一套成熟稳定的模型开发平台。

麦语言,是国内使用人数最多的程序化模型开发平台。

 

麦语言倡导的是积木式的编程理念,把复杂算法封装到一个个的函数里,采用“小语法,大函数”的构建模式。

语法虽然简单,但是配合专门的程序化数据结构,配合丰富的金融统

计函数库,同样可以支持逻辑复杂的金融应用。

麦语言的函数库,是经常更新的,根据客户的新要求随时添加新函数,来支持编程者的交易新思想和新应用

 

一、自编策略模型支持的函数

 

1.历史数据引用

 

AVPRICE

取得均价(在盘后对于国内三个期货交易所指结算价

取得结算价(只有在日线周期盘后才能取得当日的结算价

说明:

如果用在周期小于

'日'的K线上如5分钟K线,一小时k线,每根k线返回

SETTLE

的值表示这根k线当日开盘时到这根

k线的为止的结算价(均价)

如果用在周期大于等于

'日'的K线上,返回当根

K线结束时间所在日的结算价.

CLOSE

取得收盘价(在盘中指最新价),也可简写为C。

HIGH

求高价,也可简写为H。

LOW

求最低价,也可简写为

L。

OPEN

求开盘价,也可简写为

O。

OPI

取持仓量

引用X在N个周期前的值

REF(X,N)

例:

REF(CLOSE,5);表示引用当前周期前第

5个周期的收盘价

引用N个周期后的数据。

(N为大于等于

1的整数)『未来函数』

REFX(X,N)

例:

REFX(CLOSE,5);表示引用自当前周期后第

5个周期的收盘价

本函数运算量很大,将占用很多的

CPU资源,导致行情刷新速度变慢,请谨慎使用!

引用某品种在某个周期上加载了某个指标的数据。

#IMPORT

用法:

#IMPORT[CODE,PERIOD,FORMULA]ASVAR。

引用CODE所对应的合约PERIOD

 

1

 

周期下指标FORMULA的数据。

 

CODE文华码,PERIOD周期,FORMULA引用指标名,VAR定义变量名

注意:

1.只能引用.FML/.XFML文件

2.只能引用如下周期:

MIN1MIN3MIN5MIN15MIN30HOUR1DAYWEEKMONTH

 

s3.只能短周期引用长周期

4.被引用的指标中不能存在引用

 

5.如果不写文华码,默认引用当前合约

 

返回某品种的最小变动价位。

用法:

MINPRICE(CODE);返回CODE所对应合约的最小变动价位。

MINPRICECODE文华码或交易代码。

例:

MINPRICE('IF1107');表示返回IF1007的最小变动

 

价位。

注意:

某些合约(如橡胶指数)查不到最小变动价位,返回0。

 

VOL求成交量,也可简写为V。

 

2.日内高频数据引用

 

取秒周期末买1价(K线图)或该笔TICK时刻的买1价(Tick图)。

 

用法:

L2_BID1

L2_BID1K线图时返回当前秒周期最后时刻的买1价。

TICK图时返回该笔TICK

时刻的买1价。

 

取秒周期末买2价(K线图)或该笔TICK时刻的买2价(Tick图)。

用法:

L2_BID2

L2_BID2K线图时返回当前秒周期最后时刻的买2价。

TICK图时返回该笔TICK

时刻的买2价。

 

取秒周期末买3价(K线图)或该笔TICK时刻的买3价(Tick图)。

 

用法:

L2_BID3

L2_BID3K线图时返回当前秒周期最后时刻的买3价。

TICK图时返回该笔TICK

时刻的买3价。

 

L2_BID4取秒周期末买4价(K线图)或该笔TICK时刻的买4价(Tick图)。

 

2

 

用法:

L2_BID4K线图时返回当前秒周期最后时刻的买4价。

TICK图时返回该笔TICK

时刻的买4价。

 

取秒周期末买5价(K线图)或该笔TICK时刻的买5价(Tick图)。

 

用法:

L2_BID5

L2_BID5K线图时返回当前秒周期最后时刻的买5价。

TICK图时返回该笔TICK

时刻的买5价。

 

取秒周期末卖1价(K线图)或该笔TICK时刻的卖1价(Tick图)。

 

用法:

L2_ASK1

L2_ASK1K线图时返回当前秒周期最后时刻的卖1价。

TICK图时返回该笔TICK

时刻的卖1价。

 

取秒周期末卖2价(K线图)或该笔TICK时刻的卖2价(Tick图)。

 

用法:

L2_ASK2

L2_ASK2K线图时返回当前秒周期最后时刻的卖2价。

TICK图时返回该笔TICK

时刻的卖2价。

 

取秒周期末卖3价(K线图)或该笔TICK时刻的卖3价(Tick图)。

 

用法:

L2_ASK3

L2_ASK3K线图时返回当前秒周期最后时刻的卖3价。

TICK图时返回该笔TICK

时刻的卖3价。

 

取秒周期末卖4价(K线图)或该笔TICK时刻的卖4价(Tick图)。

 

用法:

L2_ASK4

L2_ASK4K线图时返回当前秒周期最后时刻的卖4价。

TICK图时返回该笔TICK

时刻的卖4价。

 

取秒周期末卖5价(K线图)或该笔TICK时刻的卖5价(Tick图)。

 

用法:

L2_ASK5

L2_ASK5K线图时返回当前秒周期最后时刻的卖5价。

TICK图时返回该笔TICK

时刻的卖5价。

 

取秒周期末买1量(K线图)或该笔TICK时刻的买1量(Tick图)。

L2_BIDVOL1

用法:

 

3

 

L2_BID1K线图时返回当前秒周期最后时刻的买1量。

TICK图时返回该笔TICK

 

时刻的买1量。

 

取秒周期末买2量(K线图)或该笔TICK时刻的买2量(Tick图)。

 

用法:

L2_BIDVOL2

L2_BID2K线图时返回当前秒周期最后时刻的买2量。

TICK图时返回该笔TICK

时刻的买2量。

 

取秒周期末买3量(K线图)或该笔TICK时刻的买3量(Tick图)。

 

用法:

L2_BIDVOL3

L2_BID3K线图时返回当前秒周期最后时刻的买3量。

TICK图时返回该笔TICK

时刻的买3量。

 

取秒周期末买4量(K线图)或该笔TICK时刻的买4量(Tick图)。

 

用法:

L2_BIDVOL4

L2_BID4K线图时返回当前秒周期最后时刻的买4量。

TICK图时返回该笔TICK

 

时刻的买4量。

 

取秒周期末买5量(K线图)或该笔TICK时刻的买5量(Tick图)。

 

用法:

L2_BIDVOL5

L2_BID5K线图时返回当前秒周期最后时刻的买5量。

TICK图时返回该笔TICK

时刻的买5量。

 

取秒周期末卖1量(K线图)或该笔TICK时刻的卖1量(Tick图)。

用法:

L2_ASKVOL1

L2_ASK1K线图时返回当前秒周期最后时刻的卖1量。

TICK图时返回该笔TICK

 

时刻的卖1量。

 

取秒周期末卖2量(K线图)或该笔TICK时刻的卖2量(Tick图)。

 

用法:

L2_ASKVOL2

L2_ASK2K线图时返回当前秒周期最后时刻的卖2量。

TICK图时返回该笔TICK

时刻的卖2量。

 

取秒周期末卖

 

3量(K线图)或该笔

 

TICK时刻的卖

 

3量(Tick

 

图)。

 

L2_ASKVOL3

用法:

 

L2_ASK3K线图时返回当前秒周期最后时刻的卖

3量。

TICK图时返回该笔

TICK

 

 

4

 

时刻的卖3量。

 

取秒周期末卖4量(K线图)或该笔TICK时刻的卖4量(Tick图)。

 

用法:

L2_ASKVOL4

L2_ASK4K线图时返回当前秒周期最后时刻的卖4量。

TICK图时返回该笔TICK

时刻的卖4量。

 

取秒周期末卖5量(K线图)或该笔TICK时刻的卖5量(Tick图)。

 

用法:

L2_ASKVOL5

L2_ASK5K线图时返回当前秒周期最后时刻的卖5量。

TICK图时返回该笔TICK

时刻的卖5量。

 

取Tick图中该笔TICK的成交价。

 

L2_PRICE用法:

 

L2_PRICE返回TICK图中该笔TICK的成交价。

 

取TICK图中该笔TICK的成交量。

L2_VOLUME用法:

 

L2_VOLUME返回TICK图中该笔TICK的成交量。

 

TICK图中该笔Tick盘口中空头满足大单条件的与最新价的最近价格。

用法:

ASKBIGVOLPRICE

ASKBIGVOLPRICE返回TICK图中该笔Tick盘口满足大单条件的与最新价的最

近价格,注模型中需调用一次CALVOLPRICELIST函数

 

TICK图中该笔Tick盘口中多头满足大单条件的与最新价的最近价格。

 

用法:

BIDBIGVOLPRICE

BIDBIGVOLPRICE返回TICK图中该笔Tick盘口满足大单条件的与最新价的最

近价格,注模型中需调用一次CALVOLPRICELIST函数

 

TICK图中初始化盘口大单价格表,主要在BIDBIGVOLPRICE与ASKBIGVOLPRICE

前使用,提供初始化。

CALVOLPRICELIST

用法:

CALVOLPRICELIST

 

设置大单成交手数阈值

L2_SETBIGVOL

用法:

 

5

 

L2_SETBIGVOL(nVol)成交手数大于nVol的为大单,

 

例:

L2_SETBIGVOL(10);//大于10手的是大单

L2_BKBIGCOUNT;//查看买开的大单成交次数;

 

取秒周期主动买的成交量。

L2_BIDVOL用法:

 

L2_BIDVOL返回当前秒周期主动买的成交量

 

取秒周期主动卖的成交量。

L2_ASKVOL用法:

 

L2_ASKVOL返回当前秒周期主动卖的成交量

 

取秒周期主动买的大单成交次数。

L2_BIDBIGCOUNT用法:

 

L2_BIDBIGCOUNT返回当前秒周期主动买的大单成交次数

 

取秒周期主动卖的大单成交次数。

L2_ASKBIGCOUNT用法:

 

L2_ASKBIGCOUNT返回当前秒周期主动卖的大单成交次数

 

取秒周期主动买的大单成交量。

L2_BIDBIGTOTVOL用法:

 

L2_BIDBIGTOTVOL返回当前秒周期主动买的大单成交量

 

取秒周期主动卖的大单成交量。

L2_ASKBIGTOTVOL用法:

 

L2_ASKBIGTOTVOL返回当前秒周期主动卖的大单成交量

 

取秒周期买开的成交量。

L2_BKVOL用法:

 

L2_BKVOL返回当前秒周期买开的成交量

 

取秒周期卖开的成交量。

L2_SKVOL用法:

L2_SKVOL返回当前秒周期卖开的成交量

 

L2_BPVOL取秒周期买平的成交量。

 

6

 

用法:

L2_BPVOL返回当前秒周期买平的成交量

 

取秒周期卖平的成交量。

L2_SPVOL用法:

 

L2_SPVOL返回当前秒周期卖平的成交量

 

取秒周期买开的大单成交次数。

L2_BKBIGCOUNT用法:

 

L2_BKBIGCOUNT返回当前秒周期买开的大单成交次数

 

取秒周期卖开的大单成交次数。

L2_SKBIGCOUNT用法:

 

L2_SKBIGCOUNT返回当前秒周期卖开的大单成交次数

 

取秒周期买平的大单成交次数。

L2_BPBIGCOUNT用法:

 

L2_BPBIGCOUNT返回当前秒周期买平的大单成交次数

 

取秒周期卖平的大单成交次数。

L2_SPBIGCOUNT用法:

L2_SPBIGCOUNT返回当前秒周期卖平的大单成交次数

 

取秒周期买开的大单成交量。

L2_BKBIGTOTVOL用法:

 

L2_BKBIGTOTVOL返回当前秒周期买开的大单成交量

 

取秒周期卖开的大单成交量。

L2_SKBIGTOTVOL用法:

 

L2_SKBIGTOTVOL返回当前秒周期卖开的大单成交量

 

取秒周期买平的大单成交量。

L2_BPBIGTOTVOL用法:

 

L2_BPBIGTOTVOL返回当前秒周期买平的大单成交量

 

取秒周期卖平的大单成交量。

L2_SPBIGTOTVOL

用法:

 

7

 

L2_SPBIGTOTVOL返回当前秒周期卖平的大单成交量

 

3.行情数据引用

 

根据文华码取出某一品种的最新价。

GETPRICE(N)

例:

GETPRICE(1209);返回文华码为1209的合约品种的最新价。

 

4.金融统计

 

若X条件成立,则将当前位置到N周期前的数值设为1。

『未来函数』

BACKSET(X,N)例:

BACKSET(CLOSE>OPEN,3);表示当K线收阳时,自当前位置到3周期前的数值

设为1

 

BARSLAST(X)求上一次条件成立到当前的周期数。

 

表示统计在N周期内满足X条件的周期数。

如果N为0则表示从已申请到的数据

 

的第一天开始算起。

COUNT(X,N)

例:

WR:

=-100*(HHV(HIGH,N)-CLOSE)/(HHV(HIGH,N)-LLV(LOW,N));

COUNT(WR>80,5);表示统计在5个周期内满足WR>80的次数

 

DMA(X,A)

返回X的动态移动平均,其中A为常数,并且必须介于

0及1之间。

计算方法:

DMA(N)=DMA(N-1)*(1-A)+X(N)*A其中DMA(N-1)为第(N-1)天的DMA值。

表示求X在N周期内的平滑移动平均。

(指数加权)

EMA(X,N)

计算方法:

EMA(X,N)=[2*X+(N-1)*EMA(X,(N-1))]/(N+1)

其中EMA(X,(N-1))

为第

(N-1)天的EMA值

 

表示求X在N周期内的加权平均。

(线性加权)

计算方法:

EMA2(X,N)

EMA2(X,N)=(N*X0+(N-1)*X1+(N-2)*X2+...+1*XN-1)/(N+(N-1)+(N-2)+...+1),X0

表示本周期值,X1表示上一周期值...

 

得到X在N周期内的最高值,如果N=0,则从本地数据的第一个有效周期开始算

HHV(X,N)

起。

 

8

 

例:

HHV(HIGH,13);求13个周期内的最高价的最大值。

得到X在N周期内的最高值位置到当前的周期数。

如果

N=0,则从本地数据的第

HHVBARS(X,N)

一个有效周期开始算起。

例:

HHVBARS(VOL,0);求历史成交量最大的周期到当前的周期数

得到X在N周期内的最小值,如果N=0,则从本地数据的第一个有效周期开始算

LLV(X,N)

起。

例:

LLV(LOW,25);表示求25个周期内最低价的最小值

得到X在N周期内的最小值的位置到当前的周期数。

如果

N=0则从本地数据的第

LLVBARS(X,N)

一个有效周期开始算起。

例:

LLVBARS(VOL,0);求历史成交量最小的周期到当前的周期数

求X在N周期内的简单移动平均。

MA(X,N)

计算方法:

MA=(A1+A2+A3+A4+A5)/5求A在5个周期内的简单移动平均

求线型回归的斜率。

用法:

SLOPE(X,N)

SLOPE(X,N)得到X的N周期的线型回归的斜率。

例:

SLOPE(CLOSE,5);表示求收盘价5个周期线性回归线的斜率

之字转向,当X变化量超过P时转向,当N取1,P为百分比数;当N取0,P为价位差

值绝对值。

『未来函数』

ZIGZAG(X,P,N)

例:

ZIGZAG(HIGH,10,1);表示最高价的

10%的之字转向

ZIGZAG(MA(HIGH,34),100,0);表示34个周期内最高价均线的100个价位的之字转

取得ZIGZAG前M个波峰的值。

其中X为数据,P为转折值(如果N为1,这个值

为百分比数,否则为价位差值绝对值),

M为大于等于

1的整数。

『未来函数』

PEAK(X,P,M,N)

例:

PEAK(HIGH,10,1,1);表示最高价的

10%的之字转向的上一个波峰的数值;

PEAK(MA(HIGH,34),100,1,0);表示34个周期内最高价均线的100个价位的之字转

向的上一个波峰的数值

取得ZIGZAG前M个波峰到当前周期的周期数。

其中

X为数据,P为转折值(如果

PEAKBARS(X,P,M,N)

N为1,这个值为百分比数,否则为价位差值绝对值),

M为大于等于1的整数。

『未来函数』

9

 

例:

PEAKBARS(HIGH,10,1,1);表示最高价的10%的之字转向的上一个波峰到当前

 

的周期数

PEAKBARS(MA(HIGH,34),100,1,0);表示34个周期内最高价均线的100个价位的之

 

字转向的上一个波峰到当前的周期数

 

取得ZIGZAG前M个波谷的值。

其中X为数据,P为转折值(如果N为1,这个值

 

为百分比数,否则为价位差值绝对值),M为大于等于1的整数。

『未来函数』

TROUGH(X,P,M,N)例:

TROUGH(LOW,10,1,1);表示最低价的10%的之字转向的上一个波谷的数值

TROUGH(MA(LOW,34),100,1,0);表示34个周期内最低价均线的100个价位的之字

 

转向的上一个波谷的数值

 

取得ZIGZAG前M个波谷到当前周期的周期数。

其中X为数据,P为转折值(如果

N为1,这个值为百分比数,否则为价位差值绝对值),M为大于等于1的整数。

 

『未来函数』

TROUGHBARS(X,P,M,N)TROUGH(LOW,10,1,1);表示最低价的10%的之字转向的上一个波谷到当前的周期

TROUGH(MA(LOW,34),100,1,0);表示34个周期内最低价均线的100个价位的之字

 

转向的上一个波谷到当前的周期数

 

得到抛物转向值。

N为计算周期,Step为步长,Max为极值。

(系统函数,计算步

SAR(N,Step,Max)

骤后台自动完成)

例:

SAR(17,0.03,0.3);

表示计算

17个周期抛物转向,步长为

3%,极限值为30%

得到X在N个周期内的移动平均,

M为权重(M为常数)。

SMA(X,N,M)

计算方法:

SMA(N)=SMA(N-1)*(N-M)/N+X(N)*M/N

求标准差。

STD(X,N)

用法:

STD(X,N)求X在N个周期内的标准差。

 

求总体标准差。

STDP(X,N)用法:

STDP(X,N)为X的N日总体标准差。

 

得到X在N周期内的总和,如果N=0,则从第一个有效周期开始算起。

SUM(X,N)

例:

SUM(VOL,10);表示统计10周期内的成交量总和

 

10

 

SUMBARS(X,A)得到X向前累加直到大于A时的周期数。

 

TRMA(X,N)求X在N周期内的三角移动平均。

 

求X在N周期内的时间序列移动平均。

TSMA(X,N)

计算方法:

TSMA(X,N)=FOCAST(X,N)+SLOPE(X,N)

 

5.数理统计

 

AVEDEV(X,N)求X在N周期内的平均绝对偏差

 

DEVSQ(X,N)数据偏差平方和。

 

得到X的N周期线性回归预测值。

FORCAST(X,N)

例:

FORCAST(CLOSE,5);表示求5周期线性回归预测

 

VAR(X,N)得到X在N周期内的样本方差

 

VARP(X,N)得到X在N周期内的总体样本方差

 

设一个数列,数列中数据的总个数为N,以今天(2005-10-14)五天内的A0605收盘价

 

为例,N就为5。

数列的内容为:

{2766,2805,2814,2886,2885}。

1、算术平均值MA(CLOSE,5):

数据总和除以总个数N。

(2766+2805+2814+2886+2885)/5=2831.20。

可以用公式MA(C

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2