MT5ターミナルが本日アップデートされ、テスト中に「最適化」ウィンドウが表示されなくなりました。 - ページ 19

 
Сергей Таболин:

なんか私の1835からこのBuild 1845にアップデートされないんですけど・・・。

MetaQuotes-Demoに接続されている...

バージョン情報」ウィンドウを開く

 
Сергей Таболин:

うまくいかないんです。

そして、端末を再起動します

 
Сергей Таболин:

MT版1845。

あなたの例を繰り返し、標準のMACDサンプルにこのパラメータを挿入しました。


どうしてこの実験を繰り返すことができないのか理解できないのですが?

私も同じように、明日、EAを比較してみます。すべてのティック "モードでチェックしたのみ

もう一度実行したところ、ログが表示されました。

ファイル:
20180612.zip  24 kb
 
Сергей Таболин:

すべてのダニは無関係であり、そのようなダニには至らないからです。

しかし、あなたのログから

あなたは1288枚、私は122221枚と、その差は歴然です。

そして、ここで私は5149になりました。


最適化時間の比較のために、あえてコストのかかるティック生成 方法を入れてみました。

正しいフェイクパラメータで最適化すると、1時間くらいで終わる(計測していない)。したがって、私はあなたの状況を再現していません。

 
Сергей Таболин:

もう一度言います。

初期段階で出力した場合、原価方式が立つか立たないかの違いは?最適化(パラメータを使ったパス)が始まらない!?

こんな感じです。

このコードの実行にかかる時間は?それはないでしょう、そうでしょう。

私の例でも同じことが起こります。return(INIT_PARAMETERS_INCORRECT) の 後の残りのコードは全て実行 されません(少なくとも実行されるべきではない)。


あなたは他の人の投稿を読んでいないようですね。 私はプロキシを持っていますが、間違った入力パラメータでは実行されません - つまり、あなたの状況を再現することはできないということです。

 
Rashid Umarov:

他の人の投稿を読んでいないようですね。 私はプロキシを持っていますが、間違った入力パラメータでは実行されません - つまり、あなたの状況を再現することはできません。

これらのブレーキは、特に自社ネットワークを使って最適化した場合に顕著に現れます。

 

Oh yoy yoy!Help!コンパイルが停止しました!

 //+------------------------------------------------------------------+
//|                                                   TimeSeries.mqh |
//|                                        Copyright 2012, komposter |
//|                                         http://www.komposter.me/ |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, komposter"
#property link        "http://www.komposter.me/"
#property version    "10.15"
//+------------------------------------------------------------------+
//| iBars
//+------------------------------------------------------------------+
int iBars ()
  {
   return ( Bars ( _Symbol , _Period ));
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iBars ( string symbol, ENUM_TIMEFRAMES timeframe)
  {
   return ( Bars (symbol,timeframe));
  }
//+------------------------------------------------------------------+
//| iTime
//+------------------------------------------------------------------+
datetime iTime ( int bar)
  {
   if (bar< 0 ) return (- 1 );

   datetime array[];
   if ( CopyTime ( _Symbol , _Period ,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
datetime iTime ( string symbol, ENUM_TIMEFRAMES timeframe, int bar)
  {
   if (bar< 0 ) return (- 1 );

   datetime array[];
   if ( CopyTime (symbol,timeframe,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//| iOpen
//+------------------------------------------------------------------+
double iOpen ( int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyOpen ( _Symbol , _Period ,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double iOpen ( string symbol, ENUM_TIMEFRAMES timeframe, int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyOpen (symbol,timeframe,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//| iHigh
//+------------------------------------------------------------------+
double iHigh ( int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyHigh ( _Symbol , _Period ,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double iHigh ( string symbol, ENUM_TIMEFRAMES timeframe, int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyHigh (symbol,timeframe,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//| iLow
//+------------------------------------------------------------------+
double iLow ( int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyLow ( _Symbol , _Period ,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double iLow ( string symbol, ENUM_TIMEFRAMES timeframe, int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyLow (symbol,timeframe,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//| iClose
//+------------------------------------------------------------------+
double iClose ( int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyClose ( _Symbol , _Period ,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double iClose ( string symbol, ENUM_TIMEFRAMES timeframe, int bar)
  {
   if (bar< 0 ) return (- 1 );

   double array[];
   if ( CopyClose (symbol,timeframe,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//| iVolume
//+------------------------------------------------------------------+
long iVolume ( int bar)
  {
   if (bar< 0 ) return (- 1 );

   long array[];
   if ( CopyTickVolume ( _Symbol , _Period ,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
long iVolume ( string symbol, ENUM_TIMEFRAMES timeframe, int bar)
  {
   if (bar< 0 ) return (- 1 );

   long array[];
   if ( CopyTickVolume (symbol,timeframe,bar, 1 ,array)> 0 )
       return (array[ 0 ]);
   else
       return (- 1 );
  }
//+------------------------------------------------------------------+
//| iHighest
//+------------------------------------------------------------------+
int iHighest ( int bar_left, int bar_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyHigh ( _Symbol , _Period ,bar_right,bar_left-bar_right+ 1 ,array);
   if (copied< 0 ) return (- 1 );

   int highest_bar=- 1 ; double highest= DBL_MIN ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]>highest)
        {
         highest=array[i];
         highest_bar=i;
        }
     }

   if (highest_bar< 0 ) return (- 1 );

   return (bar_right+highest_bar);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iHighest ( string symbol, ENUM_TIMEFRAMES timeframe, int bar_left, int bar_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyHigh (symbol,timeframe,bar_right,bar_left-bar_right+ 1 ,array);
   if (copied< 0 ) return (- 1 );

   int highest_bar=- 1 ; double highest= DBL_MIN ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]>highest)
        {
         highest=array[i];
         highest_bar=i;
        }
     }

   if (highest_bar< 0 ) return (- 1 );

   return (bar_right+highest_bar);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iHighest ( datetime time_left, datetime time_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyHigh ( _Symbol , _Period ,time_left,time_right,array);
   if (copied< 0 ) return (- 1 );

   int highest_bar=- 1 ; double highest= DBL_MIN ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]>highest)
        {
         highest=array[i];
         highest_bar=i;
        }
     }

   if (highest_bar< 0 ) return (- 1 );

   return (highest_bar+ iBarShift ( _Symbol , _Period ,time_right));
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iHighest ( string symbol, ENUM_TIMEFRAMES timeframe, datetime time_left, datetime time_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyHigh (symbol,timeframe,time_left,time_right,array);
   if (copied< 0 ) return (- 1 );

   int highest_bar=- 1 ; double highest= DBL_MIN ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]>highest)
        {
         highest=array[i];
         highest_bar=i;
        }
     }

   if (highest_bar< 0 ) return (- 1 );

   return (highest_bar+ iBarShift (symbol,timeframe,time_right));
  }
//+------------------------------------------------------------------+
//| iLowest
//+------------------------------------------------------------------+
int iLowest ( int bar_left, int bar_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyLow ( _Symbol , _Period ,bar_right,bar_left-bar_right+ 1 ,array);
   if (copied< 0 ) return (- 1 );

   int lowest_bar=- 1 ; double lowest= DBL_MAX ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]<lowest)
        {
         lowest=array[i];
         lowest_bar=i;
        }
     }

   if (lowest_bar< 0 ) return (- 1 );

   return (bar_right+lowest_bar);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iLowest ( string symbol, ENUM_TIMEFRAMES timeframe, int bar_left, int bar_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyLow (symbol,timeframe,bar_right,bar_left-bar_right+ 1 ,array);
   if (copied< 0 ) return (- 1 );

   int lowest_bar=- 1 ; double lowest= DBL_MAX ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]<lowest)
        {
         lowest=array[i];
         lowest_bar=i;
        }
     }

   if (lowest_bar< 0 ) return (- 1 );

   return (bar_right+lowest_bar);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iLowest ( datetime time_left, datetime time_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyLow ( _Symbol , _Period ,time_left,time_right,array);
   if (copied< 0 ) return (- 1 );

   int lowest_bar=- 1 ; double lowest= DBL_MAX ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]<lowest)
        {
         lowest=array[i];
         lowest_bar=i;
        }
     }

   if (lowest_bar< 0 ) return (- 1 );

   return (lowest_bar+ iBarShift ( _Symbol , _Period ,time_right));
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iLowest ( string symbol, ENUM_TIMEFRAMES timeframe, datetime time_left, datetime time_right)
  {
   double array[]; ArraySetAsSeries (array, true );
   int copied= CopyLow (symbol,timeframe,time_left,time_right,array);
   if (copied< 0 ) return (- 1 );

   int lowest_bar=- 1 ; double lowest= DBL_MAX ;
   for ( int i=copied- 1 ; i>= 0 ; i --)
     {
       if (array[i]<lowest)
        {
         lowest=array[i];
         lowest_bar=i;
        }
     }

   if (lowest_bar< 0 ) return (- 1 );

   return (lowest_bar+ iBarShift (symbol,timeframe,time_right));
  }
//+------------------------------------------------------------------+
//| iBarShift
//+------------------------------------------------------------------+
int iBarShift ( datetime time, bool exact= false )
  {
   if (time< 0 ) return (- 1 );

   datetime array[],time0;
   if ( CopyTime ( _Symbol , _Period , 0 , 1 ,array)< 0 ) return (- 1 );
   time0=array[ 0 ]; //Время открытия нулевого бара

   if ( CopyTime ( _Symbol , _Period ,time0,time,array)< 0 ) return (- 1 );

   datetime temptime= iTime ( _Symbol , _Period , ArraySize (array)- 1 );
   if (array[ 0 ]==temptime && temptime<=time)
     {
       return ( ArraySize (array)- 1 );
     }
   else
     {
       if (exact)
        {
         return (- 1 );
        }
       else
        {
         return ( ArraySize (array)- 1 );
        }
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int iBarShift ( string symbol, ENUM_TIMEFRAMES timeframe, datetime time, bool exact= false )
  {
   if (time< 0 ) return (- 1 );

   datetime array[],time0;
   if ( CopyTime (symbol,timeframe, 0 , 1 ,array)< 0 ) return (- 1 );
   time0=array[ 0 ]; //Время открытия нулевого бара

   if ( CopyTime (symbol,timeframe,time0,time,array)< 0 ) return (- 1 );

   datetime temptime= iTime (symbol,timeframe, ArraySize (array)- 1 );
   if (array[ 0 ]==temptime && temptime<=time)
     {
       return ( ArraySize (array)- 1 );
     }
   else
     {
       if (exact)
        {
         return (- 1 );
        }
       else
        {
         return ( ArraySize (array)- 1 );
        }
     }
  }
//+------------------------------------------------------------------+
 
Nikolay Gaylis:

あ、そうだ、助けて! コンパイルが止まってる!?

それで?

せめてプラットフォームの変更については、たまにはフォーラムを読んで ください

 
Nikolay Gaylis:

オイオイ、助けてくれ! コンパイルが止まったんだ!」。

TimeSeries.mqhとそれへの参照をすべて削除して、それなしで動作するようにしてください(ただし、不具合が生じる可能性があります)。

 
Сергей Таболин:

残念です...。

最適化の間、OnInit またはそれ以前に呼ばれた Print は、テスターエージェントのログに出力されます。これは、特にExpert Advisorの読み込み 時に起こりうる問題を解決するために行われました。OnInit後、最適化中のログの出力はすべてオーバーラップしています。

エージェントログを開き、プリントを確認する