错误、漏洞、问题 - 页 67

 
gumgum:
我想选择安装x64或x32位版本的终端。
根据我的理解,你可以下载普通的32位版本,然后安装在64位的电脑上...
 
Interesting:
根据我的理解,可以下载通常的32位版本,并把它放在64位的电脑上......

在这里下载https://download.mql5.com/cdn/web/metaquotes/mt5/mt5setup.exe,自动安装x64。

因此,如果是64位操作系统,请选择x64或x86。

 
gumgum:

在这里下载https://download.mql5.com/cdn/web/metaquotes/mt5/mt5setup.exe,自动安装x64。

因此,如果是64位操作系统,请选择x64或x86。

那么目前最简单的是使用小于292的构建(那里已经有64位支持)。

虽然如果你考虑一下,终端比特率的选择对于64位PC来说是必要的,也是可取的。

 
开发人员--请处理终端信息"错误地修改位置:....''。在测试器或演示器上运行MACD样本 时,它们不断出现...
 
Interesting:
请帮助开发者理解错误信息"Error modifying position by....''。在测试器或演示器中运行MACD样本 时,它们不断出现...
"

这是一个从MACD样本mql4 继承的错误: )

试图修改一个订单而不改变止损。

代码中存在错误的双数比较。

 
Swan:

这是一个从MACD样本mql4 继承的错误: )

试图修改一个订单而不改变止损。

该代码错误地比较了双数。

那么,错误应该被纠正。还是什么?
 
Interesting:
好吧,错误必须被纠正。还是什么?

这是一个 "复古专家" :)

你可以像这样修复它。

//+------------------------------------------------------------------+
//| Check for long position modifying                                |
//+------------------------------------------------------------------+
bool CSampleExpert::LongModified()
  {
   bool res=false;
//--- check for trailing stop
   if(InpTrailingStop>0)
     {
      if(m_symbol.Bid()-m_position.PriceOpen()-m_adjusted_point*InpTrailingStop>0.1*_Point)
        {
         if(m_symbol.Bid()-m_traling_stop-m_position.StopLoss()>0.1*_Point || m_position.StopLoss()==0.0)
           {
            double sl=m_symbol.Bid()-m_traling_stop;
            double tp=m_position.TakeProfit();
            //--- modify position
            if(m_trade.PositionModify(Symbol(),sl,tp))
               printf("Long position by %s to be modified",Symbol());
            else
              {
               printf("Error modifying position by %s : '%s'",Symbol(),m_trade.ResultComment());
               printf("Modify parameters : SL=%f,TP=%f",sl,tp);
              }
            //--- modified and must exit from expert
            res=true;
           }
        }
     }
//---
   return(res);
  }
//+------------------------------------------------------------------+
//| Check for short position modifying                               |
//+------------------------------------------------------------------+
bool CSampleExpert::ShortModified()
  {
   bool   res=false;
//--- check for trailing stop
   if(InpTrailingStop>0)
     {
      if(m_position.PriceOpen()-m_symbol.Ask()-m_adjusted_point*InpTrailingStop>0.1*_Point)
        {
         if(m_position.StopLoss()-m_symbol.Ask()-m_traling_stop>0.1*_Point || m_position.StopLoss()==0.0)
           {
            double sl=m_symbol.Ask()+m_traling_stop;
            double tp=m_position.TakeProfit();
            //--- modify position
            if(m_trade.PositionModify(Symbol(),sl,tp))
               printf("Short position by %s to be modified",Symbol());
            else
              {
               printf("Error modifying position by %s : '%s'",Symbol(),m_trade.ResultComment());
               printf("Modify parameters : SL=%f,TP=%f",sl,tp);
              }
            //--- modified and must exit from expert
            res=true;
           }
        }
     }
//---
   return(res);
  }
 
开发人员--298版中的变化描述在哪里?
 
Swan:

这是一个 "复古专家" :)

你可以像这样修复它。

我希望开发商能修复他们的EA版本,这样一切都会好起来......
 
你好,请你告诉我,我是否正确理解了CFD工具有一个限制,即订单类型 是日内不包括SL和TP。也就是说,如果这是正确的,应该用什么函数来检测SL,TP,他们不应该被放置。谢谢你
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
原因: