前程无忧 发表于 2022-10-19 10:33:17

MT4,MQ4,保证金交易,EA交易,获取当前交易价格的2种方式

MQ4获取价格

获取价格方法1:
1、Ask:获取当前品种的最新卖方价格(要价),返回:double。
2、Bid:获取当前品种的最新买方价格(报价、出价),返回:double。
获取价格方法2:
价格结构 (MqlTick):
struct MqlTick{   datetime   time;          // 价格更新的最近时间   double       bid;         // 当前卖价   double       ask;         // 当前买价   double       last;          // 最后交易的价格(Last)   ulong      volume;      // 当前最后价格的交易量   long         time_msc;      // 价格最后一次更新的时间,以毫秒计算   uint         flags;         // 报价标识   double       volume_real;   // 精确度更高的当前最后价格的交易量};通过调用 SymbolInfoTick() 函数,MqlTick type 变量允许获得要价,开价,最后价和成交量的值。
代码案例

案例1:
#property copyright "佚名金人"#property link      "https://www.mql5.com"#property version   "1.00"#property strict//+------------------------------------------------------------------+//| 脚本启动函数                                    |//+------------------------------------------------------------------+void OnStart()   {// 交易品种    string trading_symbol = "XAU";// 当前持仓数量    int orderNumber = OrdersTotal();// 获取当前价格=====================1,    Alert("当前卖价【double】:",Ask);    Alert("当前卖价【double】:",Bid);// 获取当前价格=====================2    MqlTick last_tick;    if(SymbolInfoTick(trading_symbol,last_tick))       {      Alert("当前卖价【double】:",last_tick.ask);      Alert("当前卖价【double】:",last_tick.bid);       }    else       {      Alert("SymbolInfoTick() failed,:",GetLastError());       }   }//+------------------------------------------------------------------+
页: [1]
查看完整版本: MT4,MQ4,保证金交易,EA交易,获取当前交易价格的2种方式