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

 
Alexey Kozitsyn:

使用OnTradeTransaction()

我通过CTrade圣经进行交易

 
Elena Baranova:

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

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

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

在这里,但我使用fxsaber函数,像这样

double AccountFreeMarginCheck(string Symb,int Cmd,double dVolume) {
 double Margin;
   return(::OrderCalcMargin((ENUM_ORDER_TYPE)Cmd, Symb, dVolume,
          ::SymbolInfoDouble(Symb,(Cmd==::ORDER_TYPE_BUY) ? ::SYMBOL_ASK : ::SYMBOL_BID),Margin) ?
          ::AccountInfoDouble(::ACCOUNT_MARGIN_FREE) - Margin : -1);
 }
Документация по MQL5: Торговые функции / OrderCalcMargin
Документация по MQL5: Торговые функции / OrderCalcMargin
  • www.mql5.com
Вычисляет размер маржи, необходимой для указанного типа ордера на текущем счете и при текущем рыночном окружении без учета текущих отложенных ордеров и открытых позиций. Позволяет оценить размер маржи для планируемой торговой операции. Значение возвращается в валюте счета. [out]  Переменная, в которую...
 
Roman Sharanov:

我通过CTrade圣经进行交易

正确答案。

为什么这么说:对CTrade 交易类的帮助,例如开立买入 头寸。

买入(...)方法的成功终止并不总是意味着交易操作的成功执行。有必要通过调用ResultRetcode()方法 以及ResultDeal()方法返回的值来检查交易请求的执行结果(交易服务器返回代码


但是!即使这种检查也是不够的,因为只有OnTradeTransaction()允许获得交易TRADE_TRANSACTION_DEAL_AD--将交易加入历史


一般来说,需要一套--通过CTrade发送交易请求,一次性检查是否成功,并在OnTradeTransaction()中等待TRADE_TRANSACTION_DEAL_AD 交易。

 
Elena Baranova:

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

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

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


bool  OrderCalcMargin( 
   ENUM_ORDER_TYPE       action,           // тип ордера 
   string                symbol,           // имя символа 
   double                volume,           // объем 
   double                price,            // цена открытия 
   double&               margin            // переменная для получения значения маржи 
   );
 
大家好。
我最近在MQLe购买了一个产品。
但我无法激活或下载它们,因为MT5工具栏中没有MARKET标签。有人遇到过这样的问题吗?
可能的原因是什么?原因是什么? 或者我可以就这个问题联系谁?
非常感谢。谢谢你
附加的文件:
 
Vladimir Karputov:

正确答案。


为什么这么说:阅读CTrade 的参考资料,例如开立一个买入 头寸。


但是!即使这样的检查也是不够的,因为只有在OnTradeTransaction()中我们才能得到交易TRADE_TRANSACTION_DEAL_AD - 将交易加入历史。


一般来说,我们需要一个设定--通过CTrade发送交易请求,立即检查是否成功,然后在OnTradeTransaction()中等待交易TRADE_TRANSACTION_DEAL_ADD

谢谢

 
假设我运行遗传优化--我怎样才能看到每一次的交易日志?
 
你能告诉我是否有一个指标可以在很短的时间内超过10点的蜡烛上做一个标记?好吧,让我们说,识别冲动。最好是直接在这支蜡烛的图表上画出来,而不是在地下室的指标中。
 

StringToTime()的时间应该是什么格式?


 
Vladimir Karputov:
假设我运行遗传优化--我怎样才能看到每一次的交易日志?

穿越框架。这里 有现成的解决方案。

Report
Report
  • www.mql5.com
Данная библиотека является несколько переработанной версией замечательного скрипта 2006 года с учетом современных реалий MQL. Некоторые возможности убраны, некоторые - добавлены. В обеих платформах (MetaTrader 4/5) для сохранения отчета (в виде MetaTrader 4) можно запустить такой скрипт: и увидеть в соответствующем файле сформированный...