.新版MQL语言程序设计:MQL5语言下所有交易函数功能说明重新翻译并整理

发布时间:2024年01月24日

原说明书对MQL5交易函数的翻译采用机器翻译,翻译结果糟糕透顶,语句不通,晦涩难懂。
糟糕的翻译对新手的学习误导严重,耽误大量时间成本,让学习难度倍增。
现重新翻译并整理所有MQL5语言下交易函数如下,功能说明通俗易懂。

所有MQL交易函数列表整理

OrderCalcMargin

功能:计算订单所需要保证金

bool  OrderCalcMargin( 
   ENUM_ORDER_TYPE       action,           // 订单类型 
   string                symbol,           // 交易品种名称 
   double                volume,           // 交易量 
   double                price,            // 入场价 
   double&               margin            // 为获取保证金值的值 
   );

OrderCalcProfit

功能:根据输入的订单类型、产品、成交量、入场价、出场价来计算订单的利润,并返回是否计算成功。

bool  OrderCalcProfit( 
   ENUM_ORDER_TYPE       action,           // 订单类型 (ORDER_TYPE_BUY 或者 ORDER_TYPE_SELL) 
   string                symbol,           // 交易品种名称 
   double                volume,           // 交易量 
   double                price_open,       // 入场价 
   double                price_close,      // 出场价 
   double&               profit            // 为获得利润值的变量 
   );

OrderCheck

功能:检测是否有足够的钱执行本次交易操作,检测结果保存在 MqlTradeCheckResult 结构体中。

bool  OrderCheck( 
   MqlTradeRequest&       request,      // 交易请求参数结构体 
   MqlTradeCheckResult&   result        // 返回检测结果结构体 
   );

OrderSend

向服务器发送交易请求,执行交易操作。

bool  OrderSend( 
   MqlTradeRequest&  request,      // 交易请求参数结构体
   MqlTradeResult&   result        // 返回交易结果结构体
   );

OrderSendAsync

向服务器发送异步交易请求,无需浪费时间等待服务器对请求的回应,专为高频交易设计。

bool  OrderSendAsync( 
   MqlTradeRequest&  request,      // 交易请求参数结构体
   MqlTradeResult&   result        // 返回交易结果结构体
   );

PositionsTotal

返回持仓的数量。

int  PositionsTotal();

PositionGetSymbol

根据仓位的索引,返回仓位的交易品种名称。

string PositionGetSymbol(int index /* 仓位索引 */);

PositionSelect

根据产品符号选择仓位,成功返回true,如果失败返回false。

bool  PositionSelect(string symbol /* 交易品种名称 */);

PositionSelectByTicket

根据持仓ID选择仓位,成功返回true,失败返回false。

bool  PositionSelectByTicket(ulong ticket /* 持仓价格 */);

PositionGetDouble

成功选择仓位后,返回持仓的双精度浮点型属性值

// 立即返回属性值。
double  PositionGetDouble(ENUM_POSITION_PROPERTY_DOUBLE property_id  /* 属性标识符 */ );
 
// 执行成功返回true,否则false,属性值保存在变量double_var中。
bool  PositionGetDouble( 
   ENUM_POSITION_PROPERTY_DOUBLE  property_id,     // 属性标识符 
   double&                        double_var       // 这里接受属性值 
   );

PositionGetInteger

成功选择仓位后,返回仓位的整型属性值

// 立即返回属性值
long PositionGetInteger( 
   ENUM_POSITION_PROPERTY_INTEGER  property_id // 属性标识符 
   );
 
// 执行成功返回true,否则false,属性值保存在变量long_var中。
bool PositionGetInteger( 
   ENUM_POSITION_PROPERTY_INTEGER  property_id,     // 属性标识符 
   long&                           long_var         // 这里接受属性值 
   );

PositionGetString

成功选择仓位后,返回仓位的字符串型属性值

// 立即返回属性值
string  PositionGetString( 
   ENUM_POSITION_PROPERTY_STRING  property_id      // 属性标识符 
   );
 
// 执行成功返回true,否则false,属性值保存在变量string_var中。
bool  PositionGetString( 
   ENUM_POSITION_PROPERTY_STRING  property_id,     // 属性标识符 
   string&                        string_var       // 这里接受属性值 
   );

PositionGetTicket

根据订单的索引,计算并返回仓位的ID,失败返回0。

ulong  PositionGetTicket( 
   int  index      // 列表中的持仓编号 
   );

OrdersTotal

返回挂单的个数,挂单就是未成交订单。

int  OrdersTotal();

OrderGetTicket

根据挂单的索引,计算并返回挂单的ID。

ulong  OrderGetTicket(int index /* 订单列表中的数量 */);

OrderSelect

根据挂单ID,选择挂单。成功返回true,失败返回false,读取挂单属性值首先要选择挂单。

bool OrderSelect(ulong ticket /* 订单号 */);

OrderGetDouble

成功选择挂单后,返回挂单的双精度浮点型属性值

//立即返回属性值。
double  OrderGetDouble(ENUM_ORDER_PROPERTY_DOUBLE property_id /* 属性标识符 */ );

// 执行成功返回true,否则false,属性值保存在变量double_var中。
bool  OrderGetDouble( 
   ENUM_ORDER_PROPERTY_DOUBLE  property_id,       // 属性标识符 
   double&                     double_var         // 这里接受属性值 
   );

OrderGetInteger

成功选择挂单后,返回挂单的整型属性值

// 立即返回属性值。
long  OrderGetInteger( 
   ENUM_ORDER_PROPERTY_INTEGER  property_id        // 属性标识符 
   );
// 执行成功返回true,否则false,属性值保存在变量long_var中。
bool  OrderGetInteger( 
   ENUM_ORDER_PROPERTY_INTEGER  property_id,       // 属性标识符 
   long&                        long_var           // 这里接受属性值 
   );

OrderGetString

成功选择挂单后,返回挂单的字符串型属性值

// 立即返回属性值。
string  OrderGetString( 
   ENUM_ORDER_PROPERTY_STRING  property_id        // 属性标识符 
   );

// 执行成功返回true,否则false,属性值保存在变量string_var中。
bool  OrderGetString( 
   ENUM_ORDER_PROPERTY_STRING  property_id,       // 属性标识符 
   string&                     string_var         // 这里接受属性值 
   );

HistorySelect

根据开始和结束时间选择历史订单

bool  HistorySelect( 
   datetime  from_date,     // 开始日期 
   datetime  to_date        // 结束日期 
   );

HistorySelectByPosition

根据仓位ID 选择历史仓位

bool  HistorySelectByPosition( 
   long   position_id     // 仓位标识符 - POSITION_IDENTIFIER 
   );

HistoryOrderSelect

根据挂单ID 选择历史挂单

bool  HistoryOrderSelect(ulong ticket /* 订单号 */);

HistoryOrdersTotal

统计历史挂单的总个数。

int  HistoryOrdersTotal();

HistoryOrderGetTicket

根据历史挂单的索引选择历史挂单。

ulong  HistoryOrderGetTicket(int  index /* 订单列表中的数量 */);

HistoryOrderGetString

成功选择历史挂单后,返回历史挂单的字符串型属性值

// 立即返回属性值。
string  HistoryOrderGetString( 
   ulong                       ticket_number,     // 订单号 
   ENUM_ORDER_PROPERTY_STRING  property_id        // 属性标识符 
   );
 
// 执行成功返回true,否则false,属性值保存在变量string_var中。
bool  HistoryOrderGetString( 
   ulong                       ticket_number,     // 订单号 
   ENUM_ORDER_PROPERTY_STRING  property_id,       // 属性标识符 
   string&                     string_var         // 这里接受属性值 
   );

HistoryOrderGetDouble

成功选择历史挂单后,返回历史挂单的双精度浮点型属性值

// 立即返回属性值。
double  HistoryOrderGetDouble( 
   ulong                       ticket_number,     // 订单号 
   ENUM_ORDER_PROPERTY_DOUBLE  property_id        // 属性标识符 
   );
// 执行成功返回true,否则false,属性值保存在变量double_var中。
bool  HistoryOrderGetDouble( 
   ulong                       ticket_number,     // 订单号 
   ENUM_ORDER_PROPERTY_DOUBLE  property_id,       // 属性标识符 
   double&                     double_var         // 这里接受属性值 
   );

HistoryOrderGetInteger

成功选择历史挂单后,返回历史挂单的整型属性值

// 立即返回属性值。
long  HistoryOrderGetInteger( 
   ulong                        ticket_number,     // 订单号 
   ENUM_ORDER_PROPERTY_INTEGER  property_id        // 属性标识符 
   );

// 执行成功返回true,否则false,属性值保存在变量long_var中。
bool  HistoryOrderGetInteger( 
   ulong                        ticket_number,     // 订单号 
   ENUM_ORDER_PROPERTY_INTEGER  property_id,       // 属性标识符 
   long&                        long_var           // 这里接受属性值 
   );

HistoryDealSelect

根据历史持仓ID选择历史仓位,成功返回true,失败返回false。

bool  HistoryDealSelect(ulong ticket /* 交易订单号 */
   );

HistoryDealsTotal

返回历史持仓的数量。

int  HistoryDealsTotal();

HistoryDealGetTicket

根据历史仓位的索引,计算并返回历史仓位的ID,失败返回0。

ulong  HistoryDealGetTicket(int index /* 订单号交易 */ );

HistoryDealGetDouble

成功选择历史仓位后,返回历史持仓的双精度浮点型属性值

// 立即返回属性值。
double  HistoryDealGetDouble( 
   ulong                      ticket_number,     // 订单号 
   ENUM_DEAL_PROPERTY_DOUBLE  property_id        // 属性标识符 
   );

// 执行成功返回true,否则false,属性值保存在变量double_var中。
bool  HistoryDealGetDouble( 
   ulong                      ticket_number,     // 订单号 
   ENUM_DEAL_PROPERTY_DOUBLE  property_id,       // 属性标识符 
   double&                    double_var         // 这里接受属性值 
   );

HistoryDealGetInteger

成功选择历史仓位后,返回历史仓位的整型属性值

// 立即返回属性值。
long  HistoryDealGetInteger( 
   ulong                       ticket_number,     // 订单号 
   ENUM_DEAL_PROPERTY_INTEGER  property_id        // 属性标识符 
   );
// 执行成功返回true,否则false,属性值保存在变量long_var中。
bool  HistoryDealGetInteger( 
   ulong                       ticket_number,     // 订单号 
   ENUM_DEAL_PROPERTY_INTEGER  property_id,       // 属性标识符 
   long&                       long_var           // 这里接受属性值 
   );

HistoryDealGetString

成功选择历史仓位后,返回历史仓位的字符串型属性值

// 立即返回属性值。
string  HistoryDealGetString( 
   ulong                      ticket_number,     // 订单号 
   ENUM_DEAL_PROPERTY_STRING  property_id        // 属性标识符 
   );
 
// 执行成功返回true,否则false,属性值保存在变量string_var中。
bool  HistoryDealGetString( 
   ulong                      ticket_number,     //订单号 
   ENUM_DEAL_PROPERTY_STRING  property_id,       // 属性标识符 
   string&                    string_var         // 这里接受属性值 
   );
文章来源:https://blog.csdn.net/FXSuperLee/article/details/135784231
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。