问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

MT4 编程函数手册

创作时间:
作者:
@小白创作中心

MT4 编程函数手册

引用
CSDN
1.
https://blog.csdn.net/pioneer_plus/article/details/143730431

本文是一份MT4交易平台的编程函数手册,详细介绍了交易变量和各类内置函数(数值相关、数学相关、时间相关、订单管理、交易量与价格相关等)的使用方法。对于MT4平台的开发者和交易员来说,本文具有较高的参考价值。

交易变量

为了最大方便用户,交易中的一些变量可以从智能系统输入。

  • AccountNumber - 账号(同义词:AccNum)
  • Ask - 卖价(买方出价)
  • Balance - 交易账户的余额值
  • Bars - 图表上条形的数目,说明用数据填充图表程度的非常重要的一个变量
  • Bid - 买入价(卖方要价)
  • Close - 收盘价格
  • Credit - 信用优先
  • Equity - 账户状况,包括未实现利润
  • FreeMargin - 交易账户的自由保证金值(也用来核查账户资金的可用性)
  • High - 期间最高价位
  • Low - 期间最低价位
  • Margin - 用来支撑开仓部位的资金(保证金)
  • Open - 开盘价
  • Point - 当前金融工具单点上的价值,例如,USD/JPY - 0.01,USD/CHF - 0.0001 等
  • PriceAsk - 在市场观测窗口上显示的当前卖价
  • PriceBid - 在市场观测窗口上显示的当前买价
  • PriceHigh - 当前24小时期间的最高买价
  • PriceLow - 当前24小时期间的最高卖价
  • PriceTime - 在市场观测窗口上显示的当前时间
  • Time - 价格图表上的条形时间的基准时间
  • TotalProfit - 所有开仓部位的总未实现利润
  • TotalTrades - 开仓部位的总数和交易中断上的延迟订单
  • Volume - 交易量(期间交易的数目)

注意:CloseOpenHighLowVolumeTime 为历史数据数组 (series arrays),在上个交易期间允许进入这些数据。

内置函数

数值相关函数

  • Abs - 返回数值的绝对值(模块)

  • 语法:Abs(表达式)

  • 参数:数值

  • Ceil - 返回最小接近整数,且大于或等于特定数值

  • 语法:Ceil(表达式)

  • 参数:数值

  • Floor - 返回最大接近整数,且小于或等于特定数值

  • 语法:Floor(表达式)

  • 参数:数值

  • Round - 返回最接近整数的特定数值

  • 语法:Round(表达式)

  • 参数:数值

  • Sqrt - 返回特定正数值的平方根

  • 语法:Sqrt(表达式)

  • 参数:正数值

数学相关函数

  • Cos - 返回数值的余弦值(弧度表示)

  • 语法:Cos(表达式)

  • 参数:数值

  • Sin - 返回数值的正弦值(弧度表示)

  • 语法:Sin(表达式)

  • 参数:数值

  • Tan - 返回数值的正切值(弧度表示)

  • 语法:Tan(表达式)

  • 参数:数值

  • Exp - 返回数值的指数

  • 语法:Exp(表达式)

  • 参数:数值

  • Log - 返回数值的对数(以自然对数为基)

  • 语法:Log(表达式)

  • 参数:正数值

时间相关函数

  • CurTime - 返回从1970年1月1日起所经过的秒数

  • 语法:CurTime()

  • 返回值:自1970年1月1日起经过的秒数

  • TimeToStr - 返回带有“yyyy.mm.dd hh:mi”格式的文本串

  • 语法:TimeToStr(时间)

  • 参数:正数值(时间戳)

  • Year - 返回当前年份

  • 语法:Year()

  • 返回值:当前年份

  • Day - 返回当月当前日序列号

  • 语法:Day()

  • 返回值:当前日期序列号

  • DayOfWeek - 返回当周当前日序列号(1 – 星期日,2 – 星期一,...,7 – 星期六)

  • 语法:DayOfWeek()

  • 返回值:当前星期序列号

  • Hour - 返回当前小时的序列数(24小时制)

  • 语法:Hour()

  • 返回值:当前小时序列数

订单管理函数

  • SetOrder - 用于开仓或设定延迟订单的主函数

  • 语法:SetOrder(操作、单位、价格、滑动、止损、获利、色彩)

  • 参数:

  • operation - 操作类型,可以取下列值:OP_BUY(开始购买部位),OP_SELL(开始出售部位),OP_BUYLIMITOP_SELLLIMITOP_BUYSTOPOP_SELLSTOP(提交延迟订单)

  • lots - 单位数

  • price - 交易优先收盘价

  • slippage - 最大价格滑动

  • stoploss - 止损水平线

  • takeprofit - 获利水平线

  • color - 图表上箭头的色彩

  • CloseOrder - 收盘头寸(部位)

  • 语法:CloseOrder(订单、单位、价格、滑动量、色彩)

  • 参数:

  • order - 开仓部位的订单数

  • lots - 单位数

  • price - 优先收盘价

  • slippage - 最大价格滑动

  • color - 图表上交叉点的色彩

  • DeleteOrder - 删除前期提交的延迟订单

  • 语法:DeleteOrder(订单)

  • 参数:订单数

交易量与价格相关函数

  • Highest - 返回期间特定数间的最大值(Open, Low, High, Close 或 Volume)

  • 语法:Highest(类型、beginbar、期间)

  • 参数:

  • type - 选择计算的变量,取值:MODE_OPEN, MODE_LOW, MODE_HIGH, MODE_CLOSE, MODE_VOLUME

  • beginbar - 表示条形的转换,与当前条形有关

  • periods - 计算执行依据的期间数

  • Lowest - 返回期间特定数间的最小值(Open, Low, High, Close 或 Volume)

  • 语法:Lowest(类型、beginbar、期间)

  • 参数:

  • type - 选择计算的变量,取值:MODE_OPEN, MODE_LOW, MODE_HIGH, MODE_CLOSE, MODE_VOLUME

  • beginbar - 表示条形的转换,与当前条形有关

  • periods - 计算执行依据的期间数

  • Minute - 返回当前小时的分钟序列数

  • 语法:Minute()

  • 返回值:当前分钟序列数

  • Mod - 返回两个数值相除的余数

  • 语法:Mod(表达式1,表达式2)

  • 参数:数值1、数值2

  • Lowest - 特定期间返回开仓、低、收盘或交易量的最小值(依据"类型"参数而定)

  • 语法:Lowest(类型、beginbar、期间)

  • 参数:

  • type - 返回的变量类型,可以是:MODE_OPENMODE_LOWMODE_HIGHMODE_CLOSEMODE_VOLUME

  • beginbar - 表示条形的转换,基于当前条形并从其中取值。

  • periods - 计算所依据的期间数。

  • Minute - 返回当前小时的分钟序列数

  • 语法:Minute()

  • 返回值:当前小时内的分钟序列数。

  • Mod - 返回代表着一个接着一个的数值的整数

  • 语法:Mod(数值1, 数值2)

  • 参数:

  • 数值1 - 第一个数值。

  • 数值2 - 第二个数值。

  • ModifyOrder - 修改前期开仓部位或延迟订单的特征

  • 语法:ModifyOrder(订单、价格、止损、获利、色彩)

  • 参数:

  • order - 开仓或延迟部位的数目或订单。

  • price - 新的价格(仅适用于延迟部位)。

  • stoploss - 新的止损水平。

  • takeprofit - 新的获利水平。

  • color - 图表上交叉点的颜色。

  • Month - 返回当前月的序列号

  • 语法:Month()

  • 返回值:当前月的序列号。

  • MoveObject - 移动或创建命名对象

  • 语法:MoveObject(名称、类型、时间、价格、时间2、价格2)

  • 参数:

  • name - 对象名称。

  • type - 对象类型,可以是:OBJ_HLINE(水平线)、OBJ_VLINE(垂直线)、OBJ_TRENDLINE(趋势线)、OBJ_SYMBOL(设定象形图)、OBJ_TEXT(文本串)。

  • time - 参照图表第一时间。

  • price - 参照图表第一价格。

  • time2 - 参照图表第二时间。

  • price2 - 参照图表第二价格。

  • NumberToStr - 返回特定数值转换成特定准确格式的文本串

  • 语法:NumberToStr(数字、准确性)

  • 参数:

  • number - 特定数值。

  • precision - 十进位的精度,决定小数点后的位数。

  • OrderValue - 返回订单特定价值之一

  • 语法:OrderValue(部位、模式)

  • 参数:

  • position - 交易终端列表的订单头寸部位,从1开始。

  • mode - 返回的数据类型,可以是:VAL_TICKET(订单号)、VAL_OPENTIME(开盘时间)、VAL_TYPE(订单类型)、VAL_LOTS(单位数)、VAL_SYMBOL(工具名称)、VAL_OPENPRICE(开盘价)、VAL_STOPLOSS(止损水平)、VAL_TAKEPROFIT(获利水平)、VAL_CLOSEPRICE(收盘价)、VAL_COMMISSION(委托交易量)、VAL_SWAP(部位展期的展期费用)、VAL_PROFIT(交易利润)、VAL_COMMENT(订单注释)、VAL_CLOSETIME(订单收盘时间)。

  • Ord - 和OrderValue完全相同

  • Period - 返回界定的已用期间分钟数

  • 语法:Period()

  • 返回值:已用的期间分钟数。

  • Pow - 返回由nBaseExpression数值提高到nExponentExpression倍数而产生的数值

  • 语法:Pow( nBaseExpression, nExponentExpression )

  • 参数:

  • nBaseExpression - 基数数值。

  • nExponentExpression - 指数数值。

  • Print - 打印由用户在系统日志中界定的数据

  • 语法:Print(...)

  • 参数:任何非零数都可以。

  • PrintTrade - 存储日志中特殊部位的细节

  • 语法:PrintTrade(部位)

  • 参数:

  • 部位 - 交易终端中已开仓部位的数字。

  • Rand - 返回一个伪随机数字

  • 语法:Rand()

  • 返回值:一个生成的伪随机数字。

  • Round - 返回代表最接近整数的特定数值

  • 语法:Round(数值)

  • 参数:一个数值。

  • ServerAddress - 返回服务器IP地址

  • 语法:ServerAddress()

  • 返回值:服务器的IP地址。

  • SetArrow - 设置图表绘图标志

  • 语法:SetArrow(时间、价格、标志、色彩)

  • 参数:

  • time - 参照图表第一时间。

  • price - 参照图表第一价格。

  • symbol - 从Wingdings字体设定标志的数值。

  • color - 图表颜色。

  • SetObjectText - 指定文本串到特定的对象

  • 语法:SetObjectText(名称、文本、字体、尺寸、颜色)

  • 参数:

  • name - 对象名称。

  • text - 特定文本。

  • font - 字体名称。

  • size - 字体大小。

  • color - 文本颜色。

  • SetOrder - 用于开仓或设定延迟订单的主函数

  • 语法:SetOrder(操作、单位、价格、滑动、止损、获利、色彩)

  • 参数:

  • operation - 操作类型,可以取下列值:OP_BUY(开始购买部位)、OP_SELL(开始出售部位)、OP_BUYLIMITOP_SELLLIMITOP_BUYSTOPOP_SELLSTOP(提交延迟订单)。

  • lots - 单位数。

  • price - 交易优先收盘价。

  • slippage - 最大价格滑动。

  • stoploss - 止损水平。

  • takeprofit - 获利水平。

  • color - 图表上的箭头颜色。

  • SetText - 将图表中的文本创放到特定位置

  • 语法:SetText(时间、价格、字符串、色彩)

  • 参数:

  • time - 参照图表的第一时间。

  • price - 参照图表的第一价格。

  • string - 文本串。

  • color - 文本颜色。

  • Sin - 计算并返回代表弧度角度的正弦值

  • 语法:Sin(数值)

  • 参数:一个数值。

  • Sqrt - 计算并返回特定正数值的平方根

  • 语法:Sqrt(数值)

  • 参数:正数值。

  • Srand - 设置伪随机数字发生器到初始状态

  • 语法:Srand(时间)

  • 参数:正数值,通常为时间函数返回的值。

  • Symbol - 返回智能交易系统运行的金融工具名称的文本串

  • 语法:Symbol()

  • 返回值:当前运行的金融工具的名称。

  • Tan - 计算并返回代表角度弧度的正切数值

  • 语法:Tan(数值)

  • 参数:一个数值。

  • TimeToStr - 返回带有"yyyy.mm.dd hh:mi" 类型的文本串

  • 语法:TimeToStr(时间)

  • 参数:一个时间戳,表示自1970年1月1日起经过的秒数。

  • Year - 返回当前年份

  • 语法:Year()

  • 返回值:当前年份。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号