麦语言基本语法与指令说明

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例: CLOSE>MA(CLOSE,5),BK(500);//收盘价大于 5 周期均线,买入 500 股。设置的数量无效
2、指令指定交易数量,买入数量为变量 a.BK 后面括号中的计算公式可任意编写,计算结果为买入数量。 b.小数采用向下取整原则。 c.指定交易数量后,设置的数量无效。 例: CLOSE>MA(CLOSE,5),BK(MONEY*0.5/(C+0.5*FEE));//收盘价大于 5 周期均线,按照理论可用资金 50%买入。
DATE<>REF(DATE,1);当根 k 线的日期与前一 根 k 线的日期不等(当根 k 线为当日第一根 k 线) 返回 1,否则返回 0。
TIME=1459;当根 k 线的时间为 14 点 59 分返 回 1,否则返回 0。
AA:=(OPEN+CLOSE)/2;定义变量 AA,模型加
:=
定义变量(模型加载时不显示线)
语法 操作符
自编模型支持的操作符
操作符
意义
举例
+ 加法
- 减法
*
乘法
/
除法
&& 与(并且),也可简写为 AND
|| 或(或者),也可简写为 OR
>
大于
<
小于
>= 大于等于
<= 小于等于
<> 不等于
=
等于操作符
CLOSE+OPEN;返回收盘价与开盘价的和。
CLOSE-OPEN;返回收盘价与开盘价的差。
载时 AA 在图表上不显示线。
: 定义变量(模型加载时显示线)
AA:(OPEN+CLOSE)/2;定义变量 AA,模型加载时 AA 在图表上显示线。
AA^^(OPEN+CLOSE)/2;//定义变量 AA,主图
定义变量(以主图附加坐标方式显
^^
加载时,无论指标属性如何,AA 都以主图附加坐标
示)
方式在主图显示。
3、指令指定对应组别,同时指定交易手数,
a.下面例 1 中,BK 后面的括号中“1”位置为下单手数。 b.下单手数为固定手数或者变量。 c.如下单手数为变量且结果包含小数,小数采用向下取整原则。 d.指定交易手数后,模组设置的手数无效。 例 1: CROSSUP(C,MA(C,5)),BK('A',1);//A 组做多指令,收盘价向上穿越 5 周期均线,下单手数为固定手数,1 手
例 2: CROSSUP(C,MA(C,5)),BK('A',MONEY*0.5/(C+0.5*FEE));//A 组做多指令,收盘价向上穿越 5 周期均线,买入数量为变量, 按照理论可用资金 50%买开仓
3、指令指定对应组别,同时指定交易数量,
a.下面例 1 中,BK 后面的括号中“100”位置为买入数量。 b.买入数量为固定数量或者变量。 c.如买入数量为变量且结果包含小数,小数采用向下取整原则。 d.指定交易数量后,设置的数量无效。 例 1: CROSSUP(C,MA(C,5)),BK('A',100);//A 组做多指令,收盘价向上穿越 5 周期均线,买入数量为固定数量,100 股
AA..(OPEN+CLOSE)/2;//定义变量 AA,主图

定义变量(以独立坐标方式显示) 加载时,无论指标属性如何,AA 以独立坐标方式在
主图显示。
编辑平台的语法
1、编写规则 (1)请使用半角输入,不区分大小写; (2)每一行语句以“;”结束; (3)注释行前用“//”标识; 2、变量命名 “O”“H”“L”“C”为系统关键字,不可以用作变量名。 3、交易指令冲突 过滤模型不支持指令里定义手数,例如:BK(5)。 4、函数冲突 (1)"TRADE_OTHER"的基础数据是一分钟数据,与"CHECKSIG_MIN"、"MULTSIG_MIN"配套,但是不能与"CHECKSIG"、 "MULTSIG"函数一起使用。 (2)"CLOSEKLINE"/"CLOSEKLINE_MIN"只支持收盘价模型,不能再写"CHECKSIG"/"CHECKSIG_MIN"函数、 "MULTSIG"/"MULTSIG_MIN"函数。 (3)"CLOSEKLINE"和"CLOSEKLINE_MIN"函数有冲突,不能一起使用。 (4)"CHECKSIG"/"CHECKSIG_MIN"这类函数,"MULTSIG"/"MULTSIG_MIN"这类函数,二类函数是有冲突的,不能一 起使用。 (5)"CHECKSIG"和"CHECKSIG_MIN"函数有冲突,不能一起使用。 (6)"MULTSIG"和"MULTSIG_MIN"函数有冲突,不能一起使用。 (7)"MULTSIG"/"MULTSIG_MIN"表示一根 k 线多信号,和表示一根 k 线一个信号但是不同 k 线指令行重复生效的 "TRADE_AGAIN"函数有冲突,不能一起使用。 (8)"CLOSEMINUTE/CLOSESEC"只支持收盘价模型,不能再写 CHECK_MIN/CHECKSIG、MULTSIG_MIN/MULTSIG 函数。 (9)"CLOSEMINUTE1/CLOSESEC1"只支持指令价模型,不能与 CLOSEKLINE/CLOSEKLINE_MIN 一起使用。 5、IF ... THEN BEGIN ... END 语法
6、定义全局变量 VARIABLE:VAR1:=X,VAR2:=Y; IF 条件 1 THEN VAR1:=VAR1+1; IF 条件 2 THEN VAR2:=VAR2+1; VARIABLE 表示声明后面的变量名为全局变量
VAR1 VAR2 全局变量的名字 X Y 为全局变量的初始值 VAR1:=VAR1+1;表示给 VARI 赋值 如果当前 K 线条件满足条件 1,则给 VARI 赋值为 VAR1+1,否则仍旧取值为之前的 VAR1 的值
2、指令指定对应组别,不指定交易数量,买入数量为设置的固定数量。 例: CROSSUP(C,MA(C,5)),BK('A');//A 组做多指令,收盘价向上穿越 5 周期均线,买入,买入数量为设置的固定数量
在非过滤模型中的应用
1、指令指定交易数量,买入数量为固定数量
a.BK 后面的括号中为买入数量,可为任意正整数。 b.指定交易数量后,设置的数量无效。
BK 指令使用说明:
1、用于期货、外盘合约上为买入开仓 2、用于股票合约上为买入,但和 STOCKT0 或 STOCKT0_PLUS 连用加载在股票合约上不出信号
//后为使用方法的文字解释
在期货、外盘合约中的应用
在过滤模型中的应用
1、指令不指定交易手数,下单手数为模组设置的固定手数。 例: CLOSE>MA(CLOSE,5),BK; //收盘价大于 5 周期均线,买开仓,下单手数为模组设置的固定手数
例: CLOSE>MA(CLOSE,5),BK(5);//收盘价大于 5 周期均线,买开 5 手。模组设置的手数无效
2、指令指定交易手数,下单手数为变量 a.BK 后面括号中的计算公式可任意编写,计算结果为下单手数。 b.小数采用向下取整原则。 c.指定交易手数后,模组设置的手数无效。 例: CLOSE>MA(CLOSE,5),BK(MONEY*0.5/(C*MARGIN*D));//收盘价大于 5 周期均线,按照理论可用资金 50%买开仓。模组 设置的手数无效
例 2: CROSSUP(C,MA(C,5)),BK('A',MONEY*0.5/(C*MARGIN*D));//A 组做多指令,收盘价向上穿越 5 周期均线,按照理论可用 资金 50%买开仓
在股票模型中的数量为设置的固定数量。 例: CLOSE>MA(CLOSE,500),BK; //收盘价大于开盘价,买入,买入数量为设置的固定数量
2、指令指定对应组别,不指定交易手数,下单手数为模组设置的固定手数。 例: CROSSUP(C,MA(C,5)),BK('A');//A 组做多指令,收盘价向上穿越 5 周期均线,买开仓,下单手数为模组设置的固定手数
在非过滤模型中的应用
1、指令指定交易手数,下单手数为固定手数
a.BK 后面的括号中为下单手数,可为任意正整数。 b.指定交易手数后,模组设置的手数无效。
CLOSE*OPEN;返回收盘价与开盘价的积。 CLOSE/OPEN;返回收盘价与开盘价的商。
CLOSE>OPEN&&REF(CLOSE>OPEN,1);当根 k 线 与前一根 k 线都收阳返回 1,否则返回 0。
CLOSE>OPEN||REF(CLOSE>OPEN,1);当根 k 线收阳或 前一根 k 线收阳返回 1,否则返回 0。
CLOSE>OPEN;当根 k 线的收盘价大于开盘价 (阳线)返回 1,否则返回 0。
CLOSE<OPEN;当根 k 线的收盘价小于开盘价(阴线) 返回 1,否则返回 0。
CLOSE>=2000;当根 k 线收盘价大于等于 2000 返回 1,否则返回 0。
CLOSE<=2000;当根 k 线收盘价小于等于 2000 返回 1,否则返回 0。
相关文档
最新文档