記事"連続ウォークフォワード最適化(パート5):自動オプティマイザプロジェクトの概要とGUIの作成"についてのディスカッション

 

新しい記事 連続ウォークフォワード最適化(パート5):自動オプティマイザプロジェクトの概要とGUIの作成 はパブリッシュされました:

この記事では、MetaTrader5 ターミナルでのウォークフォワード最適化の詳細を説明します。 以前の記事では、最適化レポートを生成およびフィルタリングする方法を検討し、最適化プロセスを担当するアプリケーションの内部構造の分析を開始しました。 自動オプティマイザは C# アプリケーションとして実装され、独自のグラフィカル インターフェイスを備えています。 5番目となるこの記事では、このグラフィカルインタフェースの作成に専念します。

グラフィカルインターフェイスに移りましょう。 以前は、C# 言語で MetaTrader5 のアドオンを作成するメソッドと、その関数を.dll と OnTimer コールバックを使用してEAと組み合わせる方法について考察しました。 現在の実装では、自動オプティマイザはターミナルの外部に実装されます。 今では、外部の最適化マネージャーとして実行し、最適化を起動し、結果を処理するトレーダーのタスクを模倣します。 さらに、同じコンピュータ上で実行されている複数のターミナルで同時に最適化を行うのを避け、自動オプティマイザを別々のアプリケーションとして実装することで、オプティマイザが実行されているコンピュータを含め、コンピュータにインストールされているすべてのターミナルにアクセスできます。 このコンピュータは、前のプロジェクトで使用できませんでした。

そのため、現在のプロジェクトは完全に.dll として実装されていませんが、現在は.dll と自動オプティマイザ プロジェクトの実行可能ファイルに分割されています。


上のスクリーンショットからわかるように、プロジェクト ウィンドウはHeaderFooter、およびTabControlで構成されたSettingsReportsがあります。 中央部で選択されているタブに関係なく、ウィンドウのヘッダ部分とフッターは変更されず、部分にあるすべてのコントロール要素にアクセスできます。

作者: Andrey Azatskiy

 
どうすればいいのか、どう最適化すればいいのか。
 
Dzmitry Adzinets:
何をすべきか、どのように最適化するか?

記事#4 - 最適化の方法について

Непрерывная скользящая оптимизация (Часть 4): Программа для управления оптимизацией (автооптимизатор)
Непрерывная скользящая оптимизация (Часть 4): Программа для управления оптимизацией (автооптимизатор)
  • www.mql5.com
Продолжая цикл статей про непрерывную скользящую оптимизацию, вашему вниманию представляется созданная программа для осуществления запрограммированной автоматической оптимизации. Ранее написанные статьи описывали детали реализации данной программы как на стороне терминала, так и библиотеки, которая используется для работы с созданными отчетами...
 
アンドレイ、"APPEND_BOT_PARAM "フィールドに入力する正しい方法は何ですか?Expert Advisor のすべてのパラメータを入力するのでしょうか、それとも現在最適化する必要があるパラメータだけを入力するのでしょうか?また、「MetatraderAuto Optimiser」のメインウィンドウで利用可能なのに、なぜExpert Advisorのコードで入力する必要があるのでしょうか?
 
Good Beer:
アンドレイ、"APPEND_BOT_PARAM "フィールドに入力する正しい方法は何ですか?Expert Advisor のすべてのパラメータを入力するのですか、それとも現在最適化する必要があるパラメータだけを入力するのですか?

Expert Advisor のすべてのパラメータを入力する必要があります。

Good Beer:
また、「Metatrader Auto Optimiser」のメインウィンドウで利用可能なのに、なぜExpert Advisorのコードに入力する必要があるのでしょうか?

メタトレーダー・オート・オプティマイザーのメイン・ウィンドウでは、これらのパラメーターはターミナルによって生成された(*set)ファイルから取得されます。しかし、ロボットのパラメータも保存される最適化レポートでは、パラメータはレポート生成の瞬間にロボット自身によって書き込まれます。もしこれらのパラメータを入力しなければ、まず第一に、自動オプティマイザは、先に行われた最適化についてテストを実行することができません。なぜなら、テストを実行するためには、最適化レポートの ファイルからパラメータを取得するからです。第二に、最適化のプロセスで問題が発生する。選択した基準に従って通路を選択しても、テストを実行すべきロボットのパラメータが見つからないため、テストを実行できない。というより、テストは開始される可能性が高いが、期待されたパラメータでは開始されない。

 
Andrey Azatskiy:

最適化レポート ファイルから正確にパラメータを取得

この情報を得るには、実績のある別のオプションを使うのが賢明だろう。

 
fxsaber:

この情報を得るには、実績のある別の選択肢を使うのが賢明だろう。

何か代替案はありますか?ポイントは、ロボット自身がレポートを生成するということです。私は、レポートにもっと多くのデータを追加したいという理由から、端末が行う標準的なアップロードを使用しないことに決めました。原則的には、これは最適化のたびに行うのではなく、一度だけ行うので、それほど難しいことではないと思いますが、もしもっと便利な方法があれば、コードを微調整する用意があります。

 
Andrey Azatskiy:

何か提案はありますか?ポイントは、ロボット自身がレポートを生成することですが、レポートにもっと多くのデータを追加したいという理由から、ターミナルが行う標準的なアップロードを使用しないことにしました。原則的に、これは最適化のたびに行うのではなく、一度だけ行うものなので、それほど難しいことではないと思いますが、もしもっと便利な方法があれば、コードを微調整する用意はあります。

KBのMTTester.mqhでは、いつでもEAのすべての設定を取得することができます。また、最適化の 結果からセットを引き出すこともできます。

 
fxsaber:

MTTester.mqh KBでは、いつでもすべてのEA設定を取得できます。また、Optimisation(最適化)の結果からも セットを引き出すことができます。

まあ、セットを引き出す必要はなく、勝手に全部カウントしてくれるのですが、設定受信の自動化の仕組みはありがたいので、暇を見て勉強して、新バージョンで実装してみます。

 
Andrey Azatskiy:
どのような方法がありますか?

オプションとして、Expert Advisorにフレームを最低限接続し、FrameInputs()を使用 します。

 
Good Beer:

また、オプションとして、Expert Advisorにフレームを最低限接続し、FrameInputs()を使用する。

フレームは使いたくないのですが、アドバイスありがとうございます。現在のバリアントを使用すると、Expert Advisorに接続されているクラスは1つだけですが、フレームはそれらを操作するための一連のメソッドを持つメカニズム全体です。それに、私の記憶では、フレームはプリミティブなデータ型しか サポートしておらず、私は構造をファイルに保存したかったので、xmlマークアップを使用することにしました。