MQL4 Reference MQL4命令手册(完整版)
MessageBox信息箱
The MessageBox() function return codes.
如果选择信箱中Cancel按键或是ESC取消选择,函数返回 IDCANCEL 值 。 如果信箱中不存在取消按键,按ESC无效。
注解:消息框返回的代码在 WinUser32.mqh文件中。
常数 值 描述
IDOK 1 选择确定 按钮.
IDCANCEL 2 选择取消按钮.
IDABORT 3 选择中止按钮.
IDRETRY 4 选择重试 按钮.
IDIGNORE 5 选择忽略 按钮.
IDYES 6 选择是 按钮.
IDNO 7 选择否 按钮.
IDTRYAGAIN 10 选择再次尝试按钮.
IDCONTINUE 11 选择继续 按钮.
|
|
|
|
|
MessageBox 函数是一个具有特殊功能的对话框。可以和以下值结合并用。
在邮箱中按键显示的意义
常数 值 描述
MB_OK 0x00000000 消息框中包含的一个按钮: 确定 这是默认值.
MB_OKCANCEL 0x00000001 消息框中包含的两个按钮: 确定和取消.
MB_ABORTRETRYIGNORE 0x00000002 消息框中包含的三个按钮: 中止, 重试和忽略.
MB_YESNOCANCEL 0x00000003 消息框中包含的三个按钮: 是,否和取消
MB_YESNO 0x00000004 消息框中包含的两个按钮: 是和否
MB_RETRYCANCEL 0x00000005 消息框中包含的两个按钮: 重试和取消
MB_CANCELTRYCONTINUE 0x00000006 Windows 2000: 消息框中包含的三个按钮: 取消, 重试, 继续. 使用这个消息框类型代替
要显示在消息框中的图标,指定下列值之一。
常数 值 描述
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND 0x00000010 禁止消息图标在邮箱内显示.
MB_ICONQUESTION 0x00000020 问号图标出现在消息框内.
MB_ICONEXCLAMATION, MB_ICONWARNING 0x00000030 感叹号图标出现在消息框内.
MB_ICONINFORMATION, MB_ICONASTERISK 0x00000040 图标组成的短信息显示在消息框内.
在消息框内显示的图标是以下值之一。
常数 值 描述
MB_DEFBUTTON1 0x00000000 第一个按钮为默认。 MB_DEFBUTTON1是默认的,MB_DEFBUTTON2, MB_DEFBUTTON3, MB_DEFBUTTON4 是指定的.
MB_DEFBUTTON2 0x00000100 第二个按钮为默认.
MB_DEFBUTTON3 0x00000200 第三个按钮为默认.
MB_DEFBUTTON4 0x00000300 第四个按钮为默认.
MessageBox() 功能被指定在WinUser32.mqh文件内, 这就是为什么这个文件程序必须通过#include <WinUser32.mqh>。不是所有的都可以在列表中列出。详细细节请参阅Win32 API。
|
|
|
|
|
Object types对象类型
定单类型常数在ObjectCreate(), ObjectsDeleteAll() 和 ObjectType() 函数中使用。可以使以下任意值:
对象可能有1-3 个坐标。
常数 值 描述
OBJ_VLINE 0 垂直线。使用第一坐标部分时间。
OBJ_HLINE 1 水平线。使用第一坐标部分价格。
OBJ_TREND 2 趋势线。 应用2个坐标。
OBJ_TRENDBYANGLE 3 趋势角度。应用1 个坐标。应用ObjectSet() 功能设置线的角度。
OBJ_REGRESSION 4 回归。应用头两个坐标的时间部分。
OBJ_CHANNEL 5 通道。应用3个坐标。
OBJ_STDDEVCHANNEL 6 标准偏离通道。应用头两个坐标的时间部分。
OBJ_GANNLINE 7 甘氏线。应用 2个坐标,但第二个坐标的价格部分。
OBJ_GANNFAN 8 甘氏扇形线。应用 2个坐标,但第二个坐标的价格部分。
OBJ_GANNGRID 9 甘氏网格线。应用 2个坐标,但第二个坐标的价格部分
OBJ_FIBO 10 斐波纳契撤回。应用2个坐标。
OBJ_FIBOTIMES 11 斐波纳契时间周期线。应用2个坐标。
OBJ_FIBOFAN 12 斐波纳契扇形线。应用2个坐标。
OBJ_FIBOARC 13 斐波纳契弧线。应用2个坐标。
OBJ_EXPANSION 14 斐波纳契扩展。应用3个坐标。
OBJ_FIBOCHANNEL 15 斐波纳契通道。应用3个坐标。
OBJ_RECTANGLE 16 矩形。应用2个坐标。
OBJ_TRIANGLE 17 三角形。应用3个坐标。
OBJ_ELLIPSE 18 椭圆形。应用2个坐标。
OBJ_PITCHFORK 19 安德鲁分叉线。应用3个坐标。
OBJ_CYCLES 20 周期。应用2个坐标。
OBJ_TEXT 21 文本。应用1 坐标。
OBJ_ARROW 22 字行。应用1个坐标。
OBJ_LABEL 23 文本标签。应用1个坐标。
|
|
|
|
|
Object properties对象属性
对象值函数同ObjectGet() 和 ObjectSet() 功能一起使用。它可能是以下的任意值:
常数 值 类型 描述
OBJPROP_TIME1 0 datetime 日期时间值设置为第一协调时间部分。
OBJPROP_PRICE1 1 double 双重值设置为第一协调价格部分。
OBJPROP_TIME2 2 datetime 日期时间值设置为第二协调时间部分。
OBJPROP_PRICE2 3 double 双重值设置为第二协调价格部分。
OBJPROP_TIME3 4 datetime 日期时间值设置为第三协调时间部分。
OBJPROP_PRICE3 5 double 双重值设置为第三协调价格部分。
OBJPROP_COLOR 6 color 颜色值设置对象颜色。
OBJPROP_STYLE 7 int STYLE_SOLID, STYLE_DASH, STYLE_DOT, STYLE_DASHDOT, STYLE_DASHDOTDOT 常数中的一个设置为对象线风格。
OBJPROP_WIDTH 8 int 设置对象线宽度的整数值。可以从1到5。
OBJPROP_BACK 9 bool 设定对象背景的布尔值。
OBJPROP_RAY 10 bool 设定对象射线的布尔值。
OBJPROP_ELLIPSE 11 bool 设置椭圆状的弧形布尔值。
OBJPROP_SCALE 12 double 设置对象属性的双重值。
OBJPROP_ANGLE 13 double 在级别上设置对象属性的双重值。
OBJPROP_ARROWCODE 14 int 设置对象属性箭头代码的整数值和箭头计数 。
OBJPROP_TIMEFRAMES 15 int 设置对象属性的时间范围一个值或者可见性对象常数 的组合值。
OBJPROP_DEVIATION 16 double 为标准离差对象设定双重值的离差属性。
OBJPROP_FONTSIZE 100 int 对于对象文本字体大小设定整数值。
OBJPROP_CORNER 101 int 对标记对象设定整数值的固定装置角。必须是从0-3。
OBJPROP_XDISTANCE 102 int 在像点设定整数值固定装置X间隔对象。
OBJPROP_YDISTANCE 103 int 在像点设定整数值固定装置Y间隔对象。
OBJPROP_FIBOLEVELS 200 int 设置斐波纳契对象水平数为整数值。可以从0 到32 。
OBJPROP_LEVELCOLOR 201 color 设置对象水平颜色线的颜色值。
OBJPROP_LEVELSTYLE 202 int STYLE_SOLID, STYLE_DASH, STYLE_DOT, STYLE_DASHDOT, STYLE_DASHDOTDOT 常数中的一个设置为对象线风格。
|
|
|
|
|
OBJPROP_LEVELSTYLE 202 int STYLE_SOLID, STYLE_DASH, STYLE_DOT, STYLE_DASHDOT, STYLE_DASHDOTDOT 常数中的一个设置为对象线风格。
OBJPROP_LEVELWIDTH 203 int 设置对象线宽度的整数值。可以从1到5。
OBJPROP_FIRSTLEVEL+n 210+n int 斐波纳契水平函数是设置n的水平函数。可以是从0 到31 。
|
|
|
|
|
Object visibility
时间范围将在货币对处显示。在ObjectSet()应用函数中设置OBJPROP_TIMEFRAMES 属性。
常数 值 描述。
OBJ_PERIOD_M1 0x0001 对象只在1分钟图表中显示。
OBJ_PERIOD_M5 0x0002 对象只在5分钟图表中显示。。
OBJ_PERIOD_M15 0x0004 对象只在15分钟图表中显示。
OBJ_PERIOD_M30 0x0008 对象只在30分钟图表中显示。
OBJ_PERIOD_H1 0x0010 对象只在1小时图表中显示。
OBJ_PERIOD_H4 0x0020 对象只在4小时图表中显示。
OBJ_PERIOD_D1 0x0040 对象只在天图表中显示。
OBJ_PERIOD_W1 0x0080 对象只在星期图表中显示。
OBJ_PERIOD_MN1 0x0100 对象只在月图表中显示。
OBJ_ALL_PERIODS 0x01FF 对象在所有时间周期图表中显示。
NULL 0 对象在所有时间周期图表中显示。
EMPTY -1 在所有时间周期图表中显示。
|
|
|
|
|
Uninitialize reason codes撤销初始化原因代码
常数 值 描述
0 脚本独立执行完成
REASON_REMOVE 1 从图表中删除。
REASON_RECOMPILE 2 重新编译交易。
REASON_CHARTCHANGE 3 在图表上改变货币对和时间周期。
REASON_CHARTCLOSE 4 关闭图表
REASON_PARAMETERS 5 用户改变了输入参量
REASON_ACCOUNT 6 其他账户已激活
|
|
|
|
|
Special constants特别常数
特别常数使用于指定参量和变量状态。可以是以下任意值:
常数 值 描述
NULL 0 指示空状态的字行。
EMPTY -1 指示空状态的参量。
EMPTY_值 0x7FFFFFFF 指示自定义空值。
CLR_NONE 0xFFFFFFFF 指示空状态的颜色。
WHOLE_ARRAY 0 应用数组功能。指示数组将被处理。
|
|
|
|
|
Error codes错误代码
此GetLastError()函数返回代码。错误代码被指定在stderror.mqh文件里。打印文本信息使用在stdlib.mqh文件中指定错误描述()函数。
#include <stderror.mqh>
#include <stdlib.mqh>
void SendMyMessage(string text)
{
int check;
SendMail("some subject", text);
check=GetLastError();
if(check!=ERR_NO_ERROR) Print("Cannot send message, error: ",Error描述(check));
|
|
|
|
|
从服务器返回的错误代码
常数 值 描述
ERR_NO_ERROR 0 没有错误返回。
ERR_NO_RESULT 1 没有错误返回但结果不明。
ERR_COMMON_ERROR 2 一般错误。
ERR_INVALID_TRADE_PARAMETERS 3 无效交易参量。
ERR_SERVER_BUSY 4 交易服务器繁忙。
ERR_OLD_VERSION 5 客户终端旧版本。
ERR_NO_CONNECTION 6 没有连接服务器。
ERR_NOT_ENOUGH_RIGHTS 7 没有权限。
ERR_TOO_FREQUENT_REQUESTS 8 请求过于频繁。
ERR_MALFUNCTIONAL_TRADE 9 交易运行故障。
ERR_ACCOUNT_DISABLED 64 账户禁止。
ERR_INVALID_ACCOUNT 65 无效账户
ERR_TRADE_TIMEOUT 128 交易超时。
ERR_INVALID_PRICE 129 无效价格。
ERR_INVALID_STOPS 130 无效停止。
ERR_INVALID_TRADE_VOLUME 131 无效交易量。
ERR_MARKET_CLOSED 132 市场关闭。
ERR_TRADE_DISABLED 133 交易被禁止。
ERR_NOT_ENOUGH_MONEY 134 资金不足。
ERR_PRICE_CHANGED 135 价格改变。
ERR_OFF_QUOTES 136 开价。
ERR_BROKER_BUSY 137 经纪繁忙。
ERR_REQUOTE 138 重新开价。
ERR_ORDER_LOCKED 139 定单被锁定。
ERR_LONG_POSITIONS_ONLY_ALLOWED 140 只允许看涨仓位。
ERR_TOO_MANY_REQUESTS 141 过多请求。
ERR_TRADE_MODIFY_DENIED 145 因为过于接近市场,修改否定。
ERR_TRADE_CONTEXT_BUSY 146 交易文本已满。
ERR_TRADE_EXPIRATION_DENIED 147 时间周期被经纪否定。
ERR_TRADE_TOO_MANY_ORDERS 148 开单和挂单总数已被经纪限定。
|
|
|
|
|