無料でロボットをダウンロードする方法を見る
Twitter上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
ライブラリ

Auto optimizer - MetaTrader 4のためのライブラリ

ビュー:
829
評価:
(19)
パブリッシュ済み:
2016.05.18 09:21
このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動

詳しくは、「実トレーディングにおける売買ロボットの自動最適化」をご覧ください。: https://www.mql5.com/ru/articles/1467

EAに入れるソースコード:

//----
extern int SetHour   = 0;                 //最適化の開始時間 
extern int SetMinute = 1;                 //最適化の開始分 
int    TestDay       = 3;                 //最適化の期間の日数 
int    TimeOut       = 4;                 //最適化が終了するまでの期待時間
string NameMTS       = "Expert_Name";     //EAの名前
string NameFileSet   = "SetFileName.set"; //セットファイルの名前
string PuthTester    = "PathTester";      //テスターのパス
//--- フィルタの順番
int    Gross_Profit   = 1;                //総利益により分類する
int    Profit_Factor  = 2;                //利益率により分類する
int    Expected_Payoff= 3;                //期待利得により分類する
//--最適化のための変数名
string Per1 = "variables_1";
string Per2 = "variables_2";
string Per3 = "variables_3";
string Per4 = "variables_4";
bool StartTest=false;
datetime TimeStart;
//--- ライブラリをインクルードすること
#include <auto_optimization.mqh>
 
//----
start()関数に加えるコード:

//----
// バックテストや最適化を実施する場合は起動しないで   
if(!IsTesting() && !IsOptimization())
  {
    // 現在時刻を指定された開始時間と比較する
    if(TimeHour(TimeLocal()) == SetHour)
      {
        // 再起動から守る
        if(!StartTest)
          {
            // 時の較差と指定された最適化の開始分と比較する
            if(TimeMinute(TimeLocal()) > SetMinute - 1)
              { 
                // 何かの理由があって長く 
                // 新しいティックが発生しない場合のみ
                if(TimeMinute(TimeLocal()) < SetMinute + 1)
                  {
                    TimeStart = TimeLocal();
                    StartTest = true;   // テスターの起動フラグ
                    Tester(TestDay, NameMTS, NameFileSet, PuthTester, TimeOut, 
                           Gross_Profit, Profit_Factor, Expected_Payoff, Per1, 
                           Per2, Per3, Per4);
                  }
              }
          }
      }
    variables_1 = GlobalVariableGet(Per1);
    variables_2 = GlobalVariableGet(Per2);
    variables_3 = GlobalVariableGet(Per3);
    variables_4 = GlobalVariableGet(Per4);
  }
// テスターの起動フラグが設定された場合
if(StartTest)
  {
    // 起動からたった時間は指定された待ち時間を超える 
    // 場合
    if(TimeLocal() - TimeStart  > TimeOut*60)
      {
        StartTest = false;  // フラグをゼロ化する
      }
  }
//----
                        
          

 

204 Buildのために修正されたライブラリ「auto_optimization_204.mqh」が追加されました。 
従って、ライブラリ呼び出しのコードは以下の通りです。

//--- ライブラリをインクルードすること
#include <auto_optimization_204.mqh>

MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/7090

s_wininet s_wininet

ウェブページをロードするためのwininet.dll ライブラリの使用例です。

WaveMarker スクリプトセット WaveMarker スクリプトセット

エリオット波動を早く表示するためのスクリプトのセットです。

HSTファイルをCSVへの変換 HSTファイルをCSVへの変換

スクリプトhst2csvは、HSTファイルをCSVへ変換するために使用されます。

History analysis on presence of holes and gaps History analysis on presence of holes and gaps

このスクリプトは、ヒストリーでローソク足のの間隔をチェックし、ローソク足のホールとギャップの幅を求めます。