[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 522

 
没有。这个问题将不会得到解决。
 

还有,如果一个订单的获利 不等于一个特定的价格,你如何实施订单变更。我是这样做的

if(OrderTakeProfit() != buytakeprofit)
          {
          if(OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),buytakeprofit,OrderExpiration(),Green) == false)
            {
            Print("Ошибка модифицирования ордера ",GetLastError());
            }
          }
例如,buytakeprofit等于1.2555

事实证明,如果订单的获利不等于1.2555,那么订单就会被修改,产生错误1,这意味着我正试图设置相同的值。但是,如果获利已经等于这个价格,为什么OrderTakeProfit()条件会启动=buytakeprofit?

 

因为它没有被正常化

double nd(double in){return(NormaliseDouble(in,Digits));}
/*-------------------------------------------------------*/
if(nd(OrderTakeProfit())!=nd(новая цена)){then GO!!! :);}
 
哦,我早就想问了 -- 32种速度下的滚动速度对鼠标移动的依赖性 -- 是这个意思吗?
 

你如何更好地组织EA的最大缩减量,在这个时候它就会停止工作,你能不能设置一个静态变量,将损失的数额累积起来?

专家顾问应该停止工作,但在重新启动或改变参数后,它将再次开始工作。

 
Alert(iBars(NULL, 1),"  ",GetLastError()); // получаем ошибку - 4066

// ждем мально, повторяем запрос, все нормально...
// потом обновляем окошко с этим таймфреймом вручную, и получаем вот такую запись в журнале:

2012.01.23 11:26:04     HistoryCenter: 3235 bars imported in 'SILVER1'

此后,你开始怀疑程序行为的正确性,请你解释一下其中的诀窍是什么?

产生错误后的程序访问了历史中心,得到了必要的报价,但事实证明,不是所有的报价?或者说,这有什么意义呢?

 
fore-x:

此后,你开始怀疑程序行为的正确性,请你解释一下其中的诀窍是什么?

产生错误后的程序访问了历史中心,得到了必要的报价,但事实证明,不是所有的报价?或者说,这有什么意义呢?

https://www.mql5.com/ru/forum/116126
 

同志们,我们需要一些建议。如何修正,使价格正确地写入文件中。现在EA有时会输出红圈中的内容,见下图。我把专家顾问的代码和写在文件中的图片粘贴在一起)

//+------------------------------------------------------------------+
//|                                                          TP1.mq4 |
//|                                                      S.I.Shlikov |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "S.I.Shlikov"
#property link      ""
int init()  
  {
   string Name=Symbol();
   int h=FileOpen(Symbol()+"-"+Period()+".csv",FILE_CSV|FILE_WRITE|FILE_READ,";");
    if(h<1)
      {
      Print("Файл не найден : ", GetLastError());
      return(false);
      }
   FileSeek(h, 0, SEEK_END);
   FileWrite(h,"Date",Name,"Period",Period());
   FileClose(h);        
  }
int start()
  {
   int h=FileOpen(Symbol()+"-"+Period()+".csv",FILE_CSV|FILE_WRITE|FILE_READ,";");
    if(h<1)
      {
      Print("Файл C не найден : ", GetLastError());
      return(false);
      }
   string Wtime=TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES);
   FileSeek(h, 0, SEEK_END);
   FileWrite(h,Wtime,NormalizeDouble(Close[0], Digits));
   FileClose(h);   
   return(0);
  }

因此,我们有。

(红圈--它将价格作为日期,这对进一步的工作非常不方便)

 

而这是你的Excel设置的问题。而且不要责怪专家顾问,在记事本中查看文件,它是好的。

我一直在为2007年的这套方案而奋斗,但一直没能完全征服这个问题。唯一的办法是:为了让Excel把你的数据看成是数值,在正数前加 "+",而用负数,这样就清楚了。

 
已经向我的MT4道歉了))检查了txt,它显示了所有的东西,谢谢,否则我就会坐下来探究一下。你知道是否有可能复制,即上传欧元兑美元和美元兑日元的数据?