初学者的问题 MQL5 MT5 MetaTrader 5 - 页 28

 
谢谢你。正是我所需要的。做了一个脚本和.........测量了一下。文件中的TERMINAL_MEMORY_TOTAL和TERMINAL_MEMORY_AVAILABLE错误,一直不明白他们给出的是什么,在什么测量中,但这似乎不是目的。
 
paladin800:

请告知如何检查代码中的条件,例如。

累积起来,1是最正常的。
 
我正在使用标准库来 获取当前的出价。

CSymbolInfo m_symbol;

m_symbol.Bid()


在测试器中(All ticks, M1),我得到的不是当前的买入价,而是条形图的开盘价。也许我错过了什么?我如何正确地检查点子上的价格,以便在测试器中获得正确的结果?

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
tyun:
我正在使用标准库来 获取当前的出价。

CSymbolInfo m_symbol;

m_symbol.Bid()


在测试器中(All ticks, M1),我得到的不是当前的买入价,而是条形图的开盘价。也许我错过了什么?我如何正确地检查点子上的价格,以便在测试器中获得正确的结果?

https://www.mql5.com/ru/docs/standardlibrary/tradeclasses/csymbolinfo/csymbolinforefreshrates
Документация по MQL5: Стандартная библиотека / Торговые классы / CSymbolInfo / RefreshRates
Документация по MQL5: Стандартная библиотека / Торговые классы / CSymbolInfo / RefreshRates
  • www.mql5.com
Стандартная библиотека / Торговые классы / CSymbolInfo / RefreshRates - Документация по MQL5
 

我使用CTrade 开了一笔交易,并设置了止损。

还有,我怎样才能在OnTrade或OnTransactionTrade方法中通过止损来抓住关闭交易的时机?

我知道票据,我知道表盘,但它们在OnTransactionTrade中总是不同的(虽然我明白为什么)。

 
WiND:

我使用CTrade开了一笔交易,并设置了止损。

还有,我怎样才能在OnTrade或OnTransactionTrade方法中通过止损来抓住关闭交易的时机?

我知道票据,我知道表盘,但它们在OnTransactionTrade中总是不同的(虽然我明白为什么)。

从评论中你可以发现,该仓位 是否被止损/止盈 关闭。对于止损,请查看评论中的sl,对于获利,请查看tp
 
tol64:
根据评论,我们可以找出是否已通过止损/止盈 平仓。对于止损,请检查评论sl,而对于止盈,请检查tp。

我想到了评论,但在我的印象中,评论是可以由服务器改变的。

一般来说,我不关心它是否被止损、止盈或手动关闭。

最主要的是要确定某个订单的关闭时刻。

 
WiND:

我想到了评论,但在我的印象中,评论是可以由服务器改变的。

一般来说,我不关心它是否被止损、止盈或手动关闭。

最主要的是要确定某个订单的关闭时刻。

你也可以使用ENUM_DEAL _ENTRY中的标识符DEAL_ ENTRY _OUT 来理解头寸已经被关闭。

参考资料: 贸易的属性

 

你好!

我有一个MQl4的EA,需要转换到MQL5。请帮助我理解CopyBuffer()函数。

在MQl4中,代码看起来像这样。

....
int start()
{ 
   induk_real1 = iCustom(NULL, PERIOD_H1, "Laguerre", gamma, 950, 0, 0);
   induk1 = NormalizeDouble(induk_real1,2);
 
   if(OrdersTotal( )<1){
  
   if(induk1==1) {

......
}}}

在MQL5中,它看起来像这样。CopyBuffer "错误--没有一个重载可以应用于函数调用

....
int OnInit()
  {
   SymbolSelect(_Symbol,true);
   induk_handle = iCustom(NULL,PERIOD_H1,"Laguerre",gamma); 
   return(0);
  }
void OnDeinit(const int reason)
  {
  }
void OnTick()
  {
   CopyBuffer(induk_handle,0,1,2,induk_real1);
   induk1 = NormalizeDouble(induk_real1,2);
   
    if(OrdersTotal()<1){
    if(induk1==1) {
    ......
     }}}   
 
Aid:

你好!

我有一个MQl4的EA,需要转换到MQL5。请帮助我理解CopyBuffer()函数。

在MQl4中,代码看起来像这样。

在MQL5中,它看起来像这样。CopyBuffer "错误--没有一个重载可以应用于函数调用。

induk_real1 - 应该有一个数组。