如何了解市场是否关闭?(mql4) - 页 4

 

而我们这样做。

MqlTick Tick;
bool IsNewTick(string symbol)
  {
   MqlTick t;
   SymbolInfoTick(symbol,t);
   if(t.time>Tick.time)
     {
      SymbolInfoTick(symbol,Tick);
      return(true);
     }
   return(false);
  }

该函数输出仪器上是否有一个新的刻度。

很适合OnTime。只有每个符号,必须有一个不同的Tick

 
Vasyl Nosal:

哇,那是一个很大的文本。

MarketInfo(Symbol(),MODE_TRADEALLOWED)

通过这种方式,你将只获得交易工具的许可状态。如果该工具被交易,你将在一周的 任何一天 得到真实的交易。
 
Ihor Herasko:
这只会给你提供该工具的交易授权状态。如果该工具是可交易的,你将在一周的 任何一天 得到真实的信息。
并非如此。
 
在发送订单之前,进行一次检查,http://docs.mql4.com/check/istradeallowed
 
Ramiz Mavludov:
在发送订单之前,进行一次检查,http://docs.mql4.com/check/istradeallowed
而这指的是自动交易按钮。
 
Vasyl Nosal:
而这指的是自动交易按钮。
我不明白。如果不开启自动交易,你的EA根本就不应该做任何事情。
 
Ramiz Mavludov:
我不明白。如果不开启自动交易,你的EA根本就不应该做任何事情。
没有。它可以,事实上,更多时候,它应该什么都不做。当自动交易按钮被禁用时,它不能只工作于交易功能。其余的计算方法都很好。
 
Ramiz Mavludov:
我不明白。如果你不启用自动交易,你的EA应该根本不做任何事情。
链接上写的内容与关闭市场的问题完全没有关系。
 
Vasyl Nosal:
并非如此。

也许应该再检查一下。我最后一次处理这个问题是在MQL4的更新之前。当时,这种方式表示可以在一般情况下进行交易,而不是在特定时间进行交易。此外,现在的帮助是以这样一种方式制定的,它没有给出一个明确的答案。让我们等到周末再来检查。也可能是有人在符号清单上有一些美国股票,现在市场已经关闭。那么我们现在就可以检查了。

至于Ramiz Mavludov指出的IsTradeAllowed,确实是正确的。这个功能允许你检查一个封闭市场的情况。而且你现在就可以提前知道,而不是等到周末。

   datetime curDay = D'2015.12.14 05:00';
   Print("Trade allowed for 2015.12.14 05:00: ", IsTradeAllowed(_Symbol, curDay));
   
   datetime sunday = D'2015.12.20 03:00';
   Print("Trade allowed for Sunday: ", IsTradeAllowed(_Symbol, sunday));

结果。

2015.12.16 13:37:23.662 TestData EURUSD,Daily: Trade allowed for Sunday: false
2015.12.16 13:37:23.662 TestData EURUSD,Daily: Trade allowed for 2015.12.14 05:00: true
 
Ihor Herasko:

也许应该再检查一下。我最后一次研究这个问题是在MQL4的更新之前。当时,这种方式表示可以在一般情况下进行交易,而不是在特定时间进行交易。此外,现在的帮助是以这样一种方式制定的,它没有给出一个明确的答案。让我们等到周末再来检查。也可能是有人在符号清单上有一些美国股票,现在市场已经关闭。那么我们现在就可以检查了。

至于Ramiz Mavludov指出的IsTradeAllowed,确实是正确的。这个功能允许你检查一个封闭市场的情况。而且你现在就可以提前知道,而不是等到周末。

结果。

是的,它是。

我以为他是指boolIsTradeAllowed();。