記事"トレード履歴のカスタム表示とレポート図の作成"についてのディスカッション

 

新しい記事 トレード履歴のカスタム表示とレポート図の作成 はパブリッシュされました:

この記事では、トレード履歴を評価するためのカスタム・メソッドについて説明します。 2つのクラスが、ヒストリーを分析するために書かれ、ダウンロード可能です。 最初のトレード履歴を収集し、要約表として表します。 2番目は、統計情報を扱います。: 変数を計算し、トレード結果のより効率的な評価チャートを構築します。

トレーディングの中核部分は、損益曲線を形成するトレーディングアルゴリズムです。 このようなアルゴリズムは、合成資産と比較することができます。その値は、元になる資産 (すなわち、トレードされたツール) に対して相対的に形成されます。 たとえば、オプショントレードで、ブラックショールズモデル式は、原資産価格に基づいてそのような合成資産を計算するために使用します。 しかし、トレードアルゴリズムのような式はありません。 したがって、アルゴリズムは、合成シンボルのロングポジションと比較することができます。そのうちの PL 曲線は、アルゴリズムのプログラムされたロジックによって形成されます。 この "アセット " によって形成される利益は、ある期間に不安定になる可能性があります。 計量モデルで評価できても、このモデルを統一することはできません。 しかし、どうすれば資産とトレード段階を追跡することができるでしょうか? 適切な解決策の1つは、アルゴリズムトレードのこれまでを監視し、予想される結果からの逸脱を検出することです。

アルゴリズムを分析するメソッドについてアドバイスはありませんが、トレード履歴の完全な詳解を可能にする方法を提供します。 得られたデータに基づいて、複雑な計量モデルを構築し、確率特性を計算し、さまざまな結論を出すことができます。

この記事は、2つのセクションに分かれています。 最初の (技術) セクションでは、ターミナルに格納されている情報の大部分に基づいてトレードレポートを生成するためのメソッドについて説明します。 このセクションでは、分析に使用するソースデータを扱います。 2番目のセクションでは、選択したデータのトレード結果を評価することによって、主な値を処理します。 データサンプリングは、すべての資産または選択したシンボル、利用可能な履歴全体、または一定期間にわたって変化させることができます。 解析結果は別のファイルに表示され、ターミナルで視覚化できます。

分析の例の実際のトレード履歴からデータを使用していました。 コードの実装例は、意図的にデモ口座のトレードで蓄積されたテスト期間を使用して作成されました。


作者: Andrey Azatskiy

 

記事に添付されたアーカイブには、今回の記事で例を挙げたファイルの場所や取引履歴に関する説明がない!

 
Alexander:

記事に添付されたアーカイブには、ファイルの場所や取引履歴に関する説明がありません!

その通り、アーカイブは短くなった。

スクリプトに変更を加えずに、アーカイブからフォルダを転送する。このフォルダの中に、説明されたすべてのファイルが配置されるプロジェクトが あります。
1) 添付された取引履歴へのパス(コンピュータ上にある必要があります)。

2) 添付履歴の結果をアップロードするフォルダ

3) 自分の取引履歴の結果をアップロードするフォルダ。

スクリプトは同じ名前のアップロードを生成し、フォルダが同じであれば単純に互いに置き換わるため、これらのフォルダは異なる必要があります。何らかの理由でスクリプトの起動時に入力パラメータがない場合は、スクリプト自体(ファイルGet_TradingHistory.mq5)でパラメータを変更してください。

ファイル:
dealHistory.zip  12 kb
 
Alexander:

記事に添付されたアーカイブには、ファイルの場所や取引履歴に関する説明がありません!

記事に添付されたファイルのアーカイブは差し替えられました。スクリプトをテストするためのファイルはMQL5/Files/article_4803 フォルダにあります

 

スクリプトを実行してみた。

結果は以下の通りです。

2018.09.01 18:17:58.442 Get_TradingHistory (Si-9.18,M1) Failed FindFirstFile ("C:◆MQL5テスト_1 レポートを保存する") with error: 2
2018.09.01 18:18:06.008 Get_TradingHistory (Si-9.18,M1) Abnormal termination
2018.09.01 18:18:06.172 Get_TradingHistory (Si-9.18,M1) Error CopyFile C:\MQL5 тест сохранения истории\dealHistory.csv to C:\Users\***\AppData\Roaming\MetaQuotes\Terminal\Common\Files\temp.csv
2018.09.01 18:18:06.172 Get_TradingHistory (Si-9.18,M1) An error occurred while test_3 !
2018.09.01 18:18:06.172 Get_TradingHistory (Si-9.18,M1) An error occurred while test_4 !
2018.09.01 18:18:06.177 Get_TradingHistory (Si-9.18,M1) An error occurred while test_11 !
2018.09.01 18:18:23.346 Get_TradingHistory (Si-9.18,M1) zero divide in 'DealHistoryGetter.mqh' (432,60)

ポータブルモードのMT5は動作します。

よくわからないのですが、スクリプトは履歴を扱う方法を知っているのでしょうか、それとも特別なルールに従って履歴ファイルを準備する必要があるのでしょうか。

 
Aleksey Vyazmikin:

スクリプトを実行してみた。

結果はこうだ。

ファイルのパス、またはファイルの作成と読み込みのパーミッションにエラーがあります。一行ずつ確認してみてください。私がテストをしたときは、すべてのデータをCドライブに保存し、テスト履歴のファイルも同じ場所にありました。

 
Andrey Azatskiy:

ファイルのパス、またはファイルの作成と読み込みのパーミッションにエラーがあります。一行ずつ確認してみてください。私がテストをしたとき、すべてのデータをCドライブに保存し、テスト履歴のファイルも同じように保存しました。

私はすべての権限を持っています。

スクリプト用の履歴ファイルはどのように準備するのですか?

 
Aleksey Vyazmikin:

私はすべてのライセンスを持っている。

スクリプト用の履歴ファイルはどのように準備するのですか?

テスト・クラスは履歴ファイルを読み込むことができます(この目的のために、テスト・クラス内に別のメソッドが用意されています)。テストファイルのパスを渡すだけです。

 
Aleksey Vyazmikin:

私はすべてのライセンスを持っている。

スクリプトの履歴ファイルはどのように作成するのですか?

一行ずつ見て、どの段階でエラーが発生したか教えてください。

 
Andrey Azatskiy:

テスト・クラスは、このファイルを読み込んでロードする方法を知っています(このために、テスト・クラスには別のメソッドが用意されています)。テストファイルへのパスを渡すだけです。

おそらく私の説明の仕方が間違っているのでしょう。"dealHistory.csv "というファイルはアーカイブと一緒にダウンロードされ、すでにデータを含んでいます。どうすれば私のデータでレポートを作成できますか?

 
Andrey Azatskiy:

一行ずつ調べて、どのステップでエラーが出るのか教えてください。

どうすればいいですか?用語がよくわかりません。