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

 
odyn:

请解释。

OnTradeTransaction 函数。

是否一定要在专家顾问中?

如果不是,在什么情况下必须包括在代码中? 以及为什么?

只有OnInit()和OnTick()是必须的,其余的都是可选的。这方面的原因在该语言的文档中已有明确描述。

论坛引擎在功能名称上放了一个链接,点击它就可以阅读。
 
Alexey Viktorov:

只有OnInit()和OnTick()是强制性的,其余的由代码生成器决定。为什么在语言的文档中会有明确的描述。

论坛引擎已经把链接放到了函数的名称上,所以我们可以读到它。

我只在无法理解文档、文章和论坛中的解释时才提出问题。

如果是 "明确描述",我就不会问。

该函数旨在处理一个交易请求 的结果。这个函数不返回任何东西。

这个功能对它来说是没有必要的。

那么,当专家顾问收到来自服务器的处理请求的结果时,这个功能是必要的吗?但是,难道没有任何专家顾问会发送这些信息吗?那么,该函数必须始终插入到专家顾问中?

 

你好!向有经验的用户提问

MQL5有OBJ_CHART

请告知如何在OBJ_CHART中使用指标,特别是MA,是否可以?

 
odyn:

我只有在无法理解文档、文章和论坛中的解释时才会提出问题。

如果是 "明确描述",我就不会问。

该函数旨在处理一个交易请求 的结果。这个函数不返回任何东西。

这个功能对它来说是没有必要的。

那么,当专家顾问收到来自服务器的处理请求的结果时,这个功能是必要的吗?但是,难道没有任何专家顾问会发送这些信息吗?那么,该函数必须始终插入到专家顾问中?

一些程序员被那些他们在mql4中掌握的例子所困,无法摆脱它们。OnTradeTransaction()对这类程序员来说就像狗尾续貂。但是,如果你想,例如,当一个挂单被激活时,轻松检测一个事件,没有比OnTradeTransaction()更容易做到的了。如果你需要在平仓的时候做出一些决定和执行一些行动,你会发现它和OnTradeTransaction()一样简单。如果有必要在用TP平仓时执行一些动作,而在用SL平仓时执行其他动作,那就不能比在OnTradeTransaction()中更容易完成。

但是......现在,我提到的那些人将会过来,开始猜测这里和那里有多少毫秒......。总而言之,这取决于业余爱好者。如果你有兴趣,可以运行它,看看你在OnTradeTransaction()中能得到什么,并思考如何为自己所用。

 

告诉我,如果我需要同时开立两笔交易,但在开立其中一笔时检查是否有错误,我怎样才能抓住这个错误?

是否有一个函数可以返回对某一资产进行交易的能力?

 
Alexey Viktorov:


谢谢你的答复

 

我无法在测试器中打开该文件。我得到错误5004。

int               m_file_handle;
short             m_delimiter;

m_delimiter='\t';
m_file_handle=FileOpen(m_filename,FILE_READ|FILE_CSV,m_delimiter);
if(m_file_handle==INVALID_HANDLE)
  {
   Print(__FUNCTION__+": file open failed. Error: ",GetLastError());
   return false;
  }

这是一个普通的csv文件,以表格为分隔符。我把它放在代理的MQL5\Files文件夹中。在试图打开它之后,文件消失了。

 
leonerd:

我无法在测试器中打开该文件。我得到错误5004。

这是一个普通的csv文件,以表格为分隔符。我把它放在代理的MQL5\Files文件夹中。试图打开文件后,该文件消失了。

好的,没有#属性的tester_file显然是不行的。

 
Roman Sharanov:

告诉我,如果我需要同时开立两笔交易,但在开立其中一笔时检查是否有错误,我怎样才能抓住这个错误?

是否有一个函数可以返回对某一资产进行交易的可能性?

使用OnTradeTransaction()

 

请建议在MQL5中对MQL4函数MarketInfo(asymbol, MODE_MARGIN_REQUIRED)进行模拟。

我需要获得开1手买入所需的自由资金数额

我尝试了MQL5中SymbolInfoDouble(symbol, ...)函数的不同变体,我找不到正确的变体,它到处都返回0。

Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
, то позиции по каждому символу разрешается закрывать только в том порядке, в котором они были открыты — сначала самую старую, затем более новую и т.д. При попытке закрыть позиции в ином порядке будет получена ошибка. Уровень залоговых средств, при достижении которого происходит принудительное закрытие самой убыточной позиции (Stop Out...