TSR - トレーディングシステムの蘇生

 

続・フィッティングとリアルパターンの 境界線はどこにあるのか?


TSRは、Trading Systems Recoveryの略称です。


理論の説明もなく、スクリーンショットもないまま投稿しています。スクリーンショットはCode Baseに 掲載される予定です。


そして、特に才能のある人に警告します。

1.添付のExpert Advisorは、教育目的に適した最小限のサイズにカットされています。

2.Expert Advisorの改善課題については、BFGへ

などの質問があれば、どうぞ。"なぜ違う結果が出るのか?" 作者からの回答はありません。



過去のデータから、初歩的な1層ニューラルネットワークであるパーセプトロンの重み付け係数( )を調整して、将来の相場の動きを予測する取引システムを使って実験してみましょう。この取引システムの原理は、拙稿「取引システムの探し方」で詳しく説明した。H1タイムフレームのチャートで、過去9ヶ月以上のEURUSD通貨ペアのヒストリカルデータをとってみましょう。3ヶ月ずつの独立した3つのセクションに分ける予定です。は最終テストに使用し、残りの2つは履歴のフィッティングに使用する予定です。トレーディングシステムを別々に動かすのを避けるため、さっそく2つのパーセプトロンを組み合わせて1つのトレーディングシステムにしました。1:第一パーセプトロンのフィッティングとテスト、2:第二パーセプトロンのフィッティングとテスト、3:最適化なしのテストモードまたはデモや実預金での自動売買モードで、両方のパーセプトロンの矛盾した読み取り値をふるい落とすことによるフィルタリングです。

過去のデータに対して調整可能なのは、パーセプトロンの重みx11, x12 ...x42と、pとslである。入力パラメータslは、すべてのセクションで定数である。ストップロスとテイクプロフィットのレベルは、まさにこの値によって、すべてのオープンポジションに設定されます。もう一つの入力パラメータp(始値差のラグ時間)も定数である。相場への参入は、新しいバーが形成された時、つまりパスの入力パラメータの値に応じてバーの始値やパーセプトロンの読みに従って行われ、ストップロスやテイクプロフィットがトリガーされた時のみ終了します。最適化は、極値を特定する遺伝的アルゴリズムを用いて行われ、最大残高が極値とされる。 最適化の際には、アルゴリズムがマージンコールで行き詰まるのを防ぐため、初期金額、例えば$10000を非常に大きくする必要がある。入力パラメータ: lots - ロット単位でオープンするポジションの数量、mn - 一意のマジックナンバー、Expert Advisorが(オープンした)自身の注文と(オープンしていない)他者の注文の管理を混同しないようにするため。


最初の段階では、入力変数pと slの 値をどうすべきかを見つける必要があります。そのために、履歴の最後の2部分、つまり6ヶ月前から今日までを選択します。パーセプトロンの重みの全てのパラメータを、Start = 0からStop = 200まで1刻みで設定した。p値はStart=3からStop=100まで1刻み、sl値はStart=100からStop=1000まで10刻み(4桁の場合は10~100まで1刻み)で設定します。パス値を1に設定する。最適化するパラメータとして、x11、x21、x31、x41、pslに チェックを入れます。その他のチェックボックスはすべて無効にしてください。最適化を有効にする。最適化が完了したら、最適なパスで入力パラメータを設定します。


第二段階として、第二区間の履歴データに対して第一パーセプトロンの重みを調整します。 最適化日時を6ヶ月前から3ヶ月前に設定します。 入力変数pとslから最適化したパラメータのみチェックをはずします。 最適化を実行します。フィッティングが完了したら、最適なパスに応じて入力パラメータを設定します。


第三段階:第三区間の履歴データに第二パーセプトロンの重みを当てはめる。 最適化の日時を 3ヶ月前から現在までに設定する。最適化されたパラメータ:x11、x21、x31、x41のチェックを外し、x12、x22、x32、x42に 設定します。その他のチェックボックスはチェックを外す必要があります。入力変数passを2に設定する。最適化を開始する。最適化が完了したら、最適なパスで入力パラメータを設定します。


以上、当社の取引システムは、6ヶ月前から現在までのヒストリカルデータに調整されています。入力パラメータの値を設定ファイルに保存しておこう。パス入力変数を 3 に設定する。日付を使用する」のチェックを外して、テストを起動します。テストチャートを見るのです。バランス・アンド・エクイティ・カーブは、チャートの右側が上昇傾向、左側が下降傾向であることがわかる。あとは、調整用サンプルの外側の領域で、天秤が上向きに傾くことを確認する必要があります。マウスのカーソルを利益の増加が始まるバランスラインに持っていき、ツールチップの日付を見ます。今日から数えて9ヶ月近く前に、10日間を除いて、つまり8ヶ月と20日間、バランスカーブが上昇傾向にあることが判明したのです。そして、その調整は6ヶ月のスパンで行われました。したがって、最適化された のサンプル以外でもテストに成功しています。このサンプル外れの部分を強調して、より詳しく分析してみましょう。J. Sorosの記録にはかなり劣るが、W. Niederhofferの記録よりは優れており、全体としてはかなり満足のいく結果であった。


履歴の一部でフィッティングに対応したことを確認するため、「日付を使う」のチェックを外すことが必要かつ十分である。そして、利用可能な履歴全体を通して、値1と値2でExpert Advisorのテストを実行します。これらのモードでは、あるパーセプトロンがフィッティングされた期間においてのみ、バランスカーブの上方成長が観察されることがわかる。それ以外の時代には、谷に終わる個々のこぶを除いて、正のトレンドはない。


このように、両パーセプトロンは最適化された履歴データ以外ではフォワードテストに合格しなかったにもかかわらず、両者の結合信号のフィルタリングにより、フィッティング時に何もわかっていない履歴データで良好な結果を得ることができました。また、単純な移動平均のブレークダウンに基づくものや、より高度な多層ニューラルネットに基づくものなど、他の取引システムも試してみることができます。取引システムが堅牢であれば、最適化期間外でもフィルタリングされた取引シグナルに対してプラスの結果を出す可能性が高くなります。ロバストでない場合、フィルターを有効にした最適化期間ではプラスの結果を得ることができません。しかし、スプレッド、スワップ、ブローカー手数料などのオーバーヘッド・コストに比べれば、TSの堅牢性は二の次である。したがって、オーバーヘッドが大きいと、期待されるペイオフが必然的にマイナスになるため、フォワードテストでのポジティブな結果は夢のまた夢となるのです。



ファイル:
tsr.mq4  4 kb
 

私はレシェトフとはいろいろな意味で意見が合わなかった(このテーマではない)。彼と私は時折ドッキングして意見交換をするのだが、たいていの場合、彼は私を明示的に、あるいは暗にバカだ、マヌケだと言って追い払うのである。私自身は、それを鵜呑みにすることはありませんでした。

皆さんに大きなお願いがあります。このスレッドでフルーダースティーなことはしないでください。そのテーマについて建設的なことを言えるなら書けばいいし、そうでないなら書くなということです。

 

Gg :) Reshetovオタクのためのもう一つの宝物:)

建設的?OOSを後ろから見ているのは誰だ?当たり前のことからです。

 
TheXpert:


建設的?OOSを後ろから見ているのは誰だ?それは、当たり前のことからです。


OOSを前面に出す - 誰も止めない。ポイントは、TSでは、まず理由(売買シグナル)があり、次に結果(利益または損失で決済される新規注文)があることです。したがって、OOSの前にあっても後ろにあっても、因果関係においては、OOSに信号が設定されているわけではなく、そこでお粗末さをチェックするだけなので、何の影響もありません。トレードシグナルはマーケットエントリーに 先行し、その逆はありません、つまり順序は変わりません。Expert Advisor が負けている場合、前にも後ろにも負けます。利益が出るなら、OOSが正確にどこにあるかは気にしないでしょう。最も重要なことは、OOSエリアがフィッティングエリアに隣接していることです。また、相場は常に変化しており、儲かる筋書きは賞味期限が限られているので、これから取引する未来は先にあるのだから、OOSは奥で確認した方が良いというのは理解できる。

そこで、より確実にするために、前と後ろの両方でOOSをテストすることができるのです。TSがここぞとばかりに負けているとしたら、確かにロバストではないですね。

 
ユーリ、あなたの発見の本質と結論を一言で言うと?
 
Avals:
ユーリ、あなたの発見の本質と結論を一言で言うと?
冒頭はこちらでご紹介しています。https://www.mql5.com/ru/forum/131724
 
Avals:
ユーリ、あなたの発見の本質と結論について、簡単に、いくつかの文章で説明してくれるかい?

1.フィッティングからも、多かれ少なかれ偽信号を識別し、排除することができる。しかし、これを行うには、最適化が行われた少なくとも2つの異なるプロットが必要です。このうち、読み取り値の一致を比較することで、利益を生む可能性のあるシグナルから偽のシグナルを排除しています。例外なくすべての偽信号をカットすることは不可能であり、つまり、その一部はいずれにせよ失われることは明らかである。しかし、あるTSにとっては、正の数学的期待値という形で優位性を得るだけで十分なのである。

2.以前は、「フィットするから」といって却下されたTSが、フォワードテストでは満足のいく結果が得られないことも少なくありません。さて、このTSを上記の方法で分析したところ、中にはかなり優秀な作業馬がいることがわかった。このように、トレーディングシステムの一部を再生させることができます。

3.方法論の本質を理解しようと思えば、単純に最適化してテストしたOOSよりも信頼性が高いことが分かるはずです。

 
Reshetov:
...OOSでは、取引する未来が先にあるため、後方で確認した方が良いというのは理解できる。
数年前、OOSの「後ろ」が「前」に何かを与えるかどうか、自分で確認したことがあります。そして、その相関関係はまったく明白ではないという結論に至りました。特に保証するものではありません。TSの成功確率は若干上がるかもしれませんが、Expert Advisorが利益を出せず、損をすることもあります。ここでは、他の方法が必要です。
 
voltair:
私は数年前に、OOSが「後ろ」にあると「前」にあるものが見えるかどうかを確認しました。そして、その相関関係はまったく明白ではないという結論に至りました。特に保証するものではありません。TSの成功確率は若干上がるかもしれませんが、Expert Advisorが利益を出せず、損をすることもあります。ここでは、他の方法が必要です。

もう一度、上記の方法で、表と裏のOOSを確認することは誰も禁じていない。もし、どのフォワードでも利益が得られないのであれば、TSは堅牢ではなく、死産を蘇生させようとするより、処分した方が良いということです。OOSの違いによる結果の違いについては、誰も100%一致するとは思っていなかった。


保証に関しては、誰とも約束していない。誰もがOOSとデモやセント口座で私の提案したTSをテストし、彼が結果に満足しているかどうか、自分自身で決定する必要があります。


もし、あなたが一生をかけて、確実に結果が出る方法を探し求め、それを見つけることなく死んでしまっても、私は驚きません。

 
Reshetov:

続・フィッティングとリアルパターンの 境界線はどこにあるのか?

TSRはTrading Systems Recoveryの略称です.......................


このように、両パーセプトロンは最適化された履歴データのサンプル以外ではフォワードテストに合格しなかったが、それでも両者の結合信号のフィルタリングは履歴に対して正の結果を与えた。

ユーリ、嬉しいよ。わずかな嫉妬心(数年前にこの考えから一歩踏み外した)さえも、その喜びを損なうことはないのです。嬉しかったですね。さらに実験してみます。

 
Reshetov:
...前後ともOOSを確認することを禁止しているわけではありません ...もしTCは頑丈ではないので、外した方が良い.は、異なるOOSの結果に差が出るので、100%一致することは約束されません。
ユーリ 決まってるじゃん。さて、誰がそれをチェックする/取り除くことを禁じられるのでしょうか?そんなことより、ポイントは(私の意見ですが)、これらのチェックは全て、似ている...ということです。プリ・オプティマイゼーション!つまり、OOSで肯定的な結果を得ることは、我々は別のサイト(現在はOOSも含む)で比喩的に(そして実際に)最適化されたTCを取得します。さらに未来に堅牢である確率と、過去に堅牢である確率は?将来のロバスト性を評価する客観的な基準として、「そう思う」以外に何があるのか?
理由: