任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 139

 
nikelodeon:

谁能解释一下,为什么在优化期间会出现EA的设置没有盈利的情况。这是什么意思????

很少有交易,最多8个。通过更多的历史来运行它。
 
Forexman77:
你能告诉我如何用策略测试器找到历史上的绝对最大值和最小值吗?
什么的最大和最小?
 
paladin80:
什么的最大和最小?

在欧元兑美元的历史上,当天的最高和最低价格。他们形成的时间。
 
Forexman77:

欧元兑美元的历史最高价和最低价为一天。他们形成的时间。
阅读iHighestiLowest
 
paladin80:
阅读iHighestiLowest

通过iHighestiLowest 寻找并不是问题。如何把这一点烘托到测试器中,使它在形成时间上,在特定的历史上给出信息。
 
Forexman77:

通过iHighestiLowest 寻找并不是问题。如何把这一点烘托到测试器中,以便它能提供关于形成时间、关于特定历史的信息。

你可以这样试一试。

 for (int i=0; i<iBars(Symbol(),PERIOD_D1); i++) {
  double HistoryMaximum=iHigh(Symbol(),PERIOD_D1,i);
  double HistoryMinimum=iLow(Symbol(),PERIOD_D1,i);
  Print("Дата ",TimeToStr(iTime(Symbol(),PERIOD_D1,i),TIME_DATE)," Максимум=",DoubleToStr(HistoryMaximum,Digits)," Минимум=",DoubleToStr(HistoryMinimum,Digits));
 }

 
Forexman77:

通过iHighestiLowest 寻找并不是问题。如何把这个弄到测试器中去,以便它提供关于形成时间的信息,关于一个特定的历史。

double High_price=-1.0;
double Low_price=10000000000.0;
double Time_high_price, Time_low_price;
//+------------------------------------------------------------------+
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
int start()
  {
//----
   if (iHigh(NULL,PERIOD_M1,0)>High_price)
   {
     High_price=iHigh(NULL,PERIOD_M1,0);
     Time_high_price=iTime(NULL,PERIOD_M1,0);
   }
   
   if (iLow(NULL,PERIOD_M1,0)<Low_price)
   {
     Low_price=iLow(NULL,PERIOD_M1,0);
     Time_low_price=iTime(NULL,PERIOD_M1,0);
   }
//----
   return(0);
  }
//+------------------------------------------------------------------+
int deinit()
  {
//----
   Print("Highest price = ",DoubleToStr(High_price,Digits)," on ",TimeToStr(Time_high_price,TIME_DATE|TIME_SECONDS));
   Print("Lowest price = ",DoubleToStr(Low_price,Digits)," on ",TimeToStr(Time_low_price,TIME_DATE|TIME_SECONDS));
//----
   return(0);
  }
 
Sepulca:

你可以这样试一试。


怎样才能使最小和最大的时间分别输出?或者说,这并不是一个问题。在日志中,每个时间段都有几行。

可能是什么问题?如何使每个值有一行输出。理想情况下,你想要一个可以复制到excel中的数字时间,并通过以下方式进行比较

匹配。


 
请给我一个关于如何为MetaTrader 4设置信号的文章链接。
 

同样,我的删除挂单 功能并没有删除所有的东西。此外,它不会删除测试器中的所有内容。请帮助我了解它有什么问题。

void DeletePendingOrders()
{
    int numberOfTry = 0,
        err,
        ticket;

   for (int i=OrdersTotal()-1; i>=0; i--)
   {
      if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
      if (OrderMagicNumber() != i_magic) continue;
      if (OrderSymbol() != Symbol()) continue;
      if (OrderType() > 1 && OrderType() < 6)
      {
         ticket = OrderTicket();
         numberOfTry = 0;
      
         while (numberOfTry < 3)
         {
            while (!IsTradeAllowed()) Sleep(5000);
                err = 0;

           if (OrderDelete(ticket, Red))
            {
                numberOfTry = 3;
            }
            else
            {
                err = GetLastError();
                Print("err = ", err);
            }
      
            if (err > 0)
            { 
              Print(numberOfTry," #",ticket," Error modifing order: (", err , ") ");
              Sleep(5000); RefreshRates(); numberOfTry++;
            }
         }
      }
   }
}