English Русский 中文 Español Deutsch Português
preview
パターン検索への総当たり攻撃アプローチ(第V部):新鮮なアングル

パターン検索への総当たり攻撃アプローチ(第V部):新鮮なアングル

MetaTrader 5トレーディング | 8 1月 2024, 13:57
139 0
Evgeniy Ilin
Evgeniy Ilin

内容


はじめに

前回の記事を掲載してからかなり時間が経ってしまいました。それ以来、それまでやっていたことの多くを考え直さなければならなくなりました。これによって、アルゴリズム取引で利益を上げるという問題を、これまでとはまったく違った角度から見ることができるようになり、これまで考えることができなかったような小さなことまで考慮に入れることができるようになりました。標準的で無色透明の数学やコードの代わりに、読者に全く異なる方法で問題にアプローチすることを提案します。この記事は、新しいことの始まりでもあり、古いことの再起動でもあります。賢くて不必要な方程式やコードを歴史のゴミ箱に捨てるのにはうんざりしているので、この記事はどんな読者にとってもできる限りシンプルで理解できるものにします。


目標を達成する方法

アルゴリズム取引を利用してお金を儲けようとする人々を成功に導く、あるいは行き詰まりに追い込むさまざまな道について考え始めました。理論的には、いくつかの道があることがわかりました。

  1. 真正面からのアプローチ
  2. 美しい図
  3. 既製の取引システム
  4. 公開されているアルゴリズムの近代化とハイブリッド化
  5. チームアプローチ

最初のアプローチは、頑固な人たちの間で最も一般的なものです。実際、私のような人間にとっては、野心や偽りの希望を手放すという意味で役に立ちます。大したことではなさそうですが、実はあなたの将来にとって非常に有益なことなのです。このアプローチには多大な努力と時間が必要であり、ある時点でやめなければ、フォーラムサイエンスの博士号となり、それに伴うあらゆる結果を招くことになりかねません。ここで説明する必要はないと思います。私の皮肉は誰もがよく理解しています。とはいえ、このアプローチでは、私が現役時代に学んだ理論的な情報を学ぶことができ、その価値は絶対的なものです。主なことは、時間内に止めることです。もちろん、費やした時間と得られた結果を天秤にかければ、結果は完璧とは言い難いです。

2つ目のアプローチは、はるかに単純で、実際、費やした時間という点でははるかに効率的です。なぜなら、労力がはるかに少なく、自分が成功していることを納得させるだけでいいからです。すべてが頭の中にあって、あるとき、これは素晴らしいことだと気づいたのです。人は美しい包装紙を信用する傾向があります。ここには道徳も何もありません。結果がすべてです。皮肉に思えるかもしれませんが、これは世界中で事実です。必要なのは、あるイメージを作ることだけです。マーチンゲール、平均法、その他の取引手法を使用することができます。そのようなイメージを作り出すには十分なものです。

この場合、費やされる労力は最小限になりますが、図は本物だからです。このアプローチを適切に実施すれば、いくつかのデメリットはあるものの、マイナス面はないでしょう。このアプローチを実践するために最も必要なのは知識です。もし今のような経験がなかったら、正しい姿勢と目標達成への合理的でバランスの取れたアプローチを持ってしても、それを生かすことはできなかったでしょう。

4つ目のアプローチに関しては、それを実践している人がいるかどうかは知りません。理論的には、より短時間で済むはずですが、その効率については何とも言えなくなります。一般的には何でも可能ですが、控えめに言っても、このやり方が最も効果的だとは思いません。むしろ、前のものと組み合わせて使う方がよい。そうすることで、取引のばらつきが大きくなり、より安定した取引シグナルを受け取る可能性が高まるからです。

第5のアプローチは、多くのアイデアを持ち、常にそれに取り組んでいる場合にのみ有効ですが、チームメンバーそれぞれが真正面からアプローチしたとしても、第1のアプローチよりははるかに優れています。しかし、取引システムの開発者のほとんどはナルシストな一匹狼であり、そのようなチームを編成し、最も重要なこととして、その仕事をアレンジできるのはごく少数なのです。そういうチームがあることは知っているし、かなり成功しています。そのようなチームの中で、有益なアルゴリズムを開発するために協力し合えるのであれば、それに越したことはありません。その利点は、最終的には開発の質と量の合計が決定的な役割を果たし、競争力のある製品を生み出すことが可能になることです。

もちろん、これらはかなり理想化されたシナリオであり、人それぞれの道は少々特殊ではありますが、にもかかわらず、どのような道を選んでも、その結果には必ず何らかの知識の習得が先行することは間違いないと言えます。それは必ずしも技術的なものでも哲学的なものでもなく、私の場合はその両方です。まさにこれがあるべき姿のように思えます。問題を解決するためには、常にあらゆる側面から見る必要があるからです。


自動売買システムによる安定収入の獲得

自動売買の調和の取れたアプローチを見つける前に、まず最初から最後まで、つまりアイデアが思い浮かんだ瞬間から実行に移すまでのプロセス全体を構造化する必要があります。

  1. アイデア
  2. 実施計画の調整
  3. 開発
  4. エラー修正
  5. 改善と近代化
  6. 広範なテスト
  7. 最適化と適用限界の決定
  8. 取引の準備(リソース、デモ口座)
  9. リアル口座での取引

初心者なら、どこかで読んだか、自分で作成してそれが機能すると確信したため、自分のシステムが動作するはずだとほぼ100パーセント確信するでしょう。現実には、市場の数学的モデルはありません。仮にあったとしても、信じられないほど複雑です。EAでそれを使用することは非合理的であるため、使用することができないほど複雑です。ではどうすればよいのでしょうか。答えは見かけほど単純ではありません。これこそが、私が独自の総当たり攻撃アルゴリズムを思いついた理由です。

スーパーEAを構築する作業を引き受ければ、望む結果に到達するまでにそのような多くの段階を経ることになるのは明らかであり、控えめに言っても、実際には極めて疑わしいものです。私自身の経験からもそう思います。EAの開発がまた1つ失敗した後、最も厄介なことは、そのEAを破棄しなければならないという事実です。これは、得られた経験が役に立ったにもかかわらず、費やした時間による失望が軽減されるわけではないことを意味します。自分でEAを開発する場合、これは避けられません。フリーランス注文について言えば、役に立たないEAを手に入れることになるため、すべてがさらに悲しくなります。

この点に関して、これは主にあなたの時間に関するものだということを明確にしておきたいと思います。成功する人は、時間の価値を正しく評価する能力を持っています。費やした時間が望む結果をもたらさないのであれば、続ける価値はほとんどありません。以下は標準的なアプローチの図です。

図1.

標準的なアプローチ

図中の各アクションにはそれぞれ時間がかかり、全体的な結果は、どのような知識とリソースを持っているかに直接依存します。リソースとは、必ずしも投資に使える資金を意味するのではなく、取引システムを常にテストするためのコンピューターや、必要な機器を購入するための資金を意味します。自分の目標を追求したいという気持ちや、自由な時間の有無も重要です。問題は、良い取引システムを見つけたり作成したりすることは戦いの半分にすぎず、後半は単に自由時間がほとんどないことを考慮して、それを適切に管理する方法に関する側面に関係するということです。

この問題を少しでも理解していれば、MQL5マーケットやその他の情報源から入手した既製の取引システムを使用した場合、この図がどのように変化するかがわかるでしょう。すべてを描き直す必要はなく、適切な置換を示すだけでいいのです。

図2

開発を検索に置き換える

図の意味は変わりませんが、既成のものを探したり選んだりするのは、大量のコードを書くよりずっと簡単で、ずっと楽しいと言えます。幸い、私は両方できます。もちろん、これには知識と経験が必要です。とりわけ、この図の背景にある考え方は、EAは時間の経過とともに関連性を失う可能性があり、大半は確実に廃棄されることになるというものです。EAをまた1つ捨てた後、時間が経てばまた使えるとは思わないでしょう。長い間忘れ去られていたアルゴリズムを探すためにゴミの山を掘り起こしながら、それをどう応用するかを考えるのもまた、多くの時間を要します。

とはいえ、ある程度のEAのデータベースを蓄積し、賢く変更しながらうまく取引を続けていくのが良いでしょう。この場合、新しいEAを探す必要がないため、プロセスはさらに簡素化されます。これは可能です。理想的には、このEAのコレクションは以下のような特質を備えているべきです。

  • アルゴリズムの柔軟性
  • シグナルが反転する可能性
  • パフォーマンス(最小限のリソース消費)
  • 注文マジックナンバー

このデータに基づいて、選択されたEAのコレクションの将来性を数学的に定義することも可能です。これらのEAの特徴や数が、どのように、何に影響するのかを明確にするために、そのような表現を見つけようとすることもできます。あるいは、シンプルでわかりやすいリストを作ることもできます。

  1. EAが多ければ多いほど、私たちのコレクションは良くなります(単純に、EAが多ければ多いほど、選択した取引エリアで必要な取引基準を満たすEAが多くなるからです)。
  2. EAは入力が多ければ多いほど、より効果的に最適化できます。
  3. バーに基づくEAの方が優れています(使用やテストが簡単で、最適化もしやすく、pingやスリッページなどの問題を心配する必要がない)。
  4. 売買シグナルを反転させることが可能であれば、EAの重みは2倍になります。

過剰最適化と歴史への適合は別問題なので、ここでは触れません。読者がこれらのことを正しくおこなう方法を知っていると仮定します。すべてが正しくおこなわれれば、この図は非常にシンプルなデザインに変身します。

図3

EAデータベースに基づく取引

EAが多ければ多いほど、ロボットの選別がうまくいくのは明らかです。しかし、ここで私たちはいくつかの不愉快な瞬間に直面します。選抜の質が高ければ高いほど、選抜に要する時間は長くなります。さらに、何度も選択をしなければなりません。定期的におこなう必要があります。誰かがあなたのためにすべてをやってくれない限り、それは単なる仕事のひとつになってしまいます。この点で、まったくリスクのない通常のビジネスのテスト例がすでにあるのに、なぜそれが必要なのかという疑問が生じます。

さらに、取引で成功を収めようと思えば思うほど、同時に操作できる端末の数が必要になります。つまり、各端末を常に監視し、新しいEAを追加したり削除したり、EAの設定や動作を監視する必要があります。おわかりのように、これは大量の仕事です。常に新しいEAを開発する必要性から解放されたとはいえ、主要なルーチンワークから解放されたわけではありません。主な手間のかかる点を挙げてみましょう。

  • 最適化を使ってEAを選択する
  • デモ口座での予備テスト
  • 最も耐久性のある取引シグナルの選択
  • 最も耐久性のあるコンビネーションを使用したリアル取引
  • 常時制御(シャットダウン、一時停止、ロボット交換など)(端末との連携)

これらはすべて可能ですが、最適なワークフローパラダイムがある場合に限られます。しかし、もちろん限界はあります。私の経験からすると、読者は1人で仕事をしていると思います。何事にも時間がかかるので、頭上を飛び越えることは不可能です。

当初、私は研究目的で総当たり攻撃アルゴリズムを開発ました。単純なアルゴリズムで利益を上げる取引が可能かどうかを理解するためでした。これができることに気づいたのです。当時の能力では、EAの総数を増やすために追加でEAを提供することしかできませんでした。シンプルなEAがどのように役立ち、どのように正しく使うことができるかをよりよく理解するためには、特定のアルゴリズムがどのように収益性の高い取引の問題を解決することができるのか、そして特定のEAをどのように適切に扱うことができるのかをもう少し深く理解する必要があります。


EAとパターン

アルゴリズムのコレクションを持ち、それらを常に最適化するだけでは十分ではありません。最適化は別個のスキルであり、その習熟度によって取引口座でEAを使用した結果が決まります。それぞれのEAは独自の方法で、最適化においても使用においても独自のニュアンスを持っています。どのEAにも含まれるべきだと私が考える重要なオプションは、取引を反転させる機能です。これは、あらゆる取引アクションがその逆のアクションに置き換えられること、つまり、買いが売りに、売りが買いに置き換えられることを意味します。当初、このオプションはまったく必要ないように思われました。それはすべてが意図したとおりに動くはずだという誤った思い込みがあるからです。

この事実を理解するためには、まずパターンとは何かを理解する必要があります。一般的な理解では、パターンとは、ある統計的特徴とランダムな分布との違いのことです。この問題を表面的に考えるとき、人はパターンの慣性について考えるかもしれません。しかし、これはこのパターンの将来的なシナリオのひとつに過ぎません。慣性を持つパターンはごく一部です。バックテストや売買シグナルの中で発見されたパターンについて考えてみましょう。

ロボットの非常に大きなデータベースがあり、そこから何らかの理由で適切と思われる特徴に従って個別のグループを作成できるとします。特徴は、グループ分けそのものほど重要ではありません。

図4

ロボットのグループ化

ここで初めて、私の総当たり攻撃プログラムがフローチャートの要素として登場します。実際、プログラムは各コピーの異なる設定のおかげで、このグループ分けを行っています。要するに、プログラムの各コピーは、それぞれ異なる構成で、完全に独立したロボット群から選択することができます。生成されたロボットは取引に使用でき、フローチャートの一番下に示されています。ここで最も重要なことは、これらすべてのロボットグループは、その後しばらくして3つのグループに分けられるということです。

  • (パターンの慣性に基づいて)直接的なシグナルで利益を生むもの
  • (即時のパターン変化に基づいて)反転シグナルで利益を得るもの
  • カオス(履歴への単純な当てはめ)

どのセットが特定のシグナルグループを提供するかを事前に知ることは不可能ですが、しばらくすると除外によるフィルタリングが可能になります。その意味で、独立したグループやシグナルは多ければ多いほどよくなります。EAの各グループに対して、少なくとも2つのシグナルを作成するべきです。

  1. 直接シグナル
  2. 反転シグナル

さらに、異なるグループからの混合シグナルを加えることもできます。これらすべてのことが、長く働ける調和のとれたEAグループを効果的に見つける可能性を最大化します。2つの事実は、良いポートフォリオをできるだけ早く見つけることにつながります。

  1. 利用可能なEAの高質かつ効果的なグループ化(できるだけ多くの独立したグループ)
  2. 各グループの直接シグナルと反転シグナル+ミックスシグナル

これらすべての要素が、最終的に最も多く、多様なシグナルを提供し、実際の取引で使用するための最良のサンプルを提供してくれます。このようなグループ分けをおこなう能力に影響を与える最も重要な要因は、EAコレクションの規模と多様性です。私のプログラムの場合、その設定の思慮深さと、分析手法やクラスタリングなどの内部アルゴリズムの多様性が最も重要です。可変性を高める普遍的な方法のひとつが、クラスタリングです。

図5

労働制限

この場合、クラスタリングは、ロボットのサブグループを曜日や1日の中の時間帯で分ける可能性によって表現されており、それ自体でEAをポートフォリオにグループ化するための最も広範な機会がすでに提供されています。もちろん、クラスタリングのオプションはいろいろ考えられますが、これが最もシンプルで効果的だと思います。さらに、プログラム自体を特定の曜日や時間に作動するように設定することもできます。これにより、計算資源の消費を可能な限り最適化し、プログラムの各コピーに正しい重みを設定することができます。それぞれの設定には計算の複雑さがあるので、このテクニックが必要なのです。

さらに、複雑なEAと単純なEAについて少し述べておきたいと思います。理論的には、ほとんどすべてのパターンに対して可能な限り柔軟で可変的なEAを作成することは可能ですが、システムが複雑になればなるほど、それを破ることが容易になることは誰の目にも明らかだと思います。もちろん、このシステムが著しく成功し、フォールトトレラントになる可能性もありますが、現実的に考えてみましょう。仮に、数人がそのようなシステムを持っているとしよう(これはユートピアだと思いますが)。彼らは決してそれを他の人と共有しないでしょう。しかし、他の人たちは何をしなければならないのでしょうか。

成功しているアルゴリズムトレーダーは、私が提示する単純な真実を理解しているはずであり、そのような人々の利益は、より大きな範囲で、この理解に基づいています。有益な取引とは、まず第一に、自由に使えるツールを正しく使う能力です。魔法のような戦略を待つのは最善の解決策ではありません。どんなアイデアも、それに付随する適切な解決法があれば実現できます。特定のアルゴリズムに焦点を当てることなく、この記事で私が示そうとしているのはこのことです。 


ワークチェーンの最大限の自動化

このアイデアは、単純な調査から、安定した売買シグナルを見つける完全自動化へと徐々に発展していきました。まさに来るべきところに来ました。現在、私のシステムは、取引EAの単純な生成からMetaTrader 4および5端末での取引まで、あらゆるタスクを実行します。私が今やっているプログラムの現在のバージョンは大体こんな感じです。

図6.

総当たり攻撃を使った現在の構造

この構造によって、次の日常業務から完全に解放されました。

  • EAの選択とグループ化
  • チャート上でのEAの有効化/無効化とその後の設定
  • セッティングの最適化と選択
  • 新しいEAの検索
  • 新しいEAの作成

この構造のトリックの1つは、私のTelegramチャンネル行きになる単純なEAを生成することに加えて、同時に端末の中に普遍的なEAがあるという事実です。プログラムが新しいEAを見つけるたびに、チャートからEAを削除してインストールする必要はありません。その代わりに、EAそのものと、EAに相当する別のテキストファイルを作成します。このファイルは端末の共有フォルダに置かれ、その中に汎用EAが設定を読み込む対応するディレクトリがあります。これはすべてその場で自動的におこなわれ、私の介入なしで、EA自体はTelegramチャンネルに掲載されます。

システム全体がEAの作成と私のチャンネルへの自動投稿の両方を自動化しています。私がしなければならないのは、システムの規模を拡大し、商品を購入し、売買シグナルを監視することだけです。もちろん、これらはすべて1%の能力でしか動作しませんが、デモンストレーションのオプションとしてはかなり適していると私は考えています。

今のところ、私が自由に使えるパソコンは1台しかありません。かなり古いものですが、2つの独立したワーカー(総当たり攻撃プログラム)の交互動作を保証するには十分です。この2つの設定に基づいて、それぞれ直接と反転の2つのシグナルを作り、さらに直接と反転の混合シグナルを作りました。2か月間のテスト結果に基づけば、私が上で述べたことがわかるでしょう。

図1

直接黒字と反転黒字

テスト結果によると、2か月間、最小能力で取引を続けた結果、明らかにポジティブなシグナルは2つしか残りませんでした。そこにはもう1つ(混合)がありますが、ここで紹介した反転したものとほとんど同じです。両者はまったく異なる2つの取引アルゴリズムとその設定を指しています。ここでは、直接シグナルでも反転シグナルでもプラスの取引ができることがわかります。テストプロセスで生成されたすべてのEAは、私のTelegramチャンネルで見ることができます。リンクは私のプロフィールと記事の最後にあります。


汎用レシーバーEA

もちろん、より思慮深く質の高いEAの方がはるかに効果的です。自動売買にも使えます。しかし、ほとんどのEAは繰り返し使うことができます。どのようなアルゴリズムにも適用可能な限界があり、開発者や顧客の期待に応えられなかったと思われるEAの多くには、未使用のリソースがあります。(少なくともデモ口座では)テスト段階に至らない取引システムのおおよその割合を推定してみると、単純に膨大な数があることがわかるでしょう。

EAを適切に最適化する方法を知らなければ、EAは間違いなく廃棄されます。このため、私は興味深いEAをかなり捨てました。少し違った使い方ができるとは知らなかったのです。残念ながら、これにはある程度の経験が必要です。このトピックについてはここでは触れませんが、高度な最適化については、もう少し後に別の記事を書くつもりです。

このような冒険を決断するのは容易ではありません。本能的なレベルでは、常にスーパーEAを1つ手に入れ、端末に入れ、ボタンを1つ押して、少なくとも数週間はそのことを忘れたいと思うものだからです。ただ、まだそれを見つけ、それが本当に我々が要求する特性を持っているかどうかを確認する必要があります。が、考えてみてください。探している間に、持っているものすべてを取り出して、可能な限りさまざまな構成で実行すればいいのです。

もちろん、そのようなEAの取引プロセスを適切にコントロールするためには、多くの時間と労力を費やす必要があります。私のシステムでは、生成されたEA(設定)に便利なオプションのアドオンである汎用EAを使ってこの問題を回避しました。このようなEAの最初の最も単純なバージョンは、以下の重要な制御変数を含んでいます。

input int DaysToFuture=50;//Days to future
input LOT_VARIATION LotMethod=SIMPLE_LOT;//Lot Style
input bool bInitLotControl=false;//Auto lot bruteforce
input double MinLotE=0.01;//Min Lot
input double LotDE=0.01;//Lot (without variation)
input double MaxLotE=1.0;//Max Lot
input bool CommonE=true;//Common Folder
input string SubfolderE="T_TEYLOR_DIRECT";
input int MinutesAwaitE=2;//Minutes To Check New Settings
input bool bBruteforceInvertTrade=false;//Invert Bruteforce Trade

もちろん、これがすべての変数というわけではありませんが、以下の重要なアクションを自動化するために必要な変数です。

  • 指定された取引可能時間が経過した後、取引を無効にする(現在の設定中に新しいものが生成されなかった場合、したがって古いものはその関連性を失う)
  • 取引スタイル(単純なロット/指定された取引ウィンドウ内で最小ロットから最大ロットまで徐々に増加/指定された取引ウィンドウ内で最大ロットから最小ロットまで徐々に減少)
  • 現在の端末フォルダ/端末の共有フォルダからの設定の読み込み
  • サブディレクトリを選択する機能
  • 設定の更新間隔
  • シグナルの反転

これらにより、端末と総当たり攻撃プログラムの相互作用を柔軟に設定することができ、また、1台のマシンの能力の許す限り、任意の数の端末と総当たり攻撃マシンを同時に起動することができます。ただ1つ言えることは、汎用なマルチレシーバーをまだ作っていないため、各チャートに別々のEAを割り当てなければならないことです。これは後で追加されます。より良い、より思慮深い取引を実施するために必要なのです。すべての長所と短所を図で見ることができれば、とても便利です。

図8.

メリットとデメリット

図からわかるように、シンプルなレシーバーEAと高度なレシーバーEAの両方で、2つのシステムの実装が推奨されています。

  • 並列取引同期システム
  • 並列取引最適化システム

これらはすべてのアルゴリズムにとって非常に重要なアドオンであり、並行取引の質を向上させ、取引コストを削減することができます。もう少ししたら運用しようと思っていますが、今のところそのために必要なリソースはありません。

EAを1つだけ使って取引するのであれば、これらはすべて冗長なものですが、多数のEAを並行して運用するという話になると、必然的にこのようなアドオンの必要性が出てきます。私のアプローチの利点は、すべてのEAの統一性に基づいて、これらのアドオンをより効率的に実装できることです。これは外部システムにも内部システムにも適用されます。

また、マルチレシーバーは、各器械に取り付ける必要がなく、1つのチャートで機能するように設計されていることもお伝えしたいと思います。このようなEAの唯一の欠点は、特定の商品ごとにカスタマイズするのが難しいことですが、それにもかかわらず、欠点よりも多くの利点があります。おそらく、次の記事のいずれかに、これらのシステムについてより詳しく触れ、私が記事を書くのを中断している間に導入することができた技術的な詳細について述べることになるでしょう。


クオートを動的に収集するEA

以前は、プログラム内で手動で開かなければならないテキストファイルを作成するシンプルなEAを使っていました。もちろん、このデータは時間が経てば意味を失います。上述したすべての構造を確実に作動させるためには、新鮮な相場を入手する必要があります。そのためには、端末共有フォルダに常にデータを書き込むEAを作ればよかったのです。取引可能な商品と期間のセットを編集するために、プログラムの設定に対応するリストを追加することにしました。

図9

クオートの更新

このテクニックを使えば、複数のフォルダにデータを複製することなく、各ブラウザに独自の期間ツールを設定することができます。この場合、1台の端末があれば、何台でも取引端末を操作できます。分析間隔を数年に設定すれば、データの更新に起こりうる休止や遅延は取るに足りません。さらに、システム全体がバーバイバーのパラダイムに基づいているため、可能な限り信頼性が高く、ほとんどすべての緊急事態に対応できます。このボットにはいくつかの設定しかありません。

input bool CommonE=true;//Common Folder/Terminal Folder
input double YearsE=10.0;//Years Of History Data
input int MinutesForNew=2;//Rewrite Timeout In Minutes

EAは、全端末の共通フォルダか、現在の端末自身のフォルダに書き込みます。それは、履歴の最後の数年間を書き記すもので、現在の終端時間から始まり、履歴をさかのぼっていきます。EAは、分単位で指定されたタイムアウト後に書き込みをおこないます。これがすべての論理の最後の要素でした。一番難しい部分は終わりました。あとは、同じチャート上で動作するレシーバーEAを実装するだけです。すでに、その実装のための機能の半分を準備しています。


結論

この記事では、通常のテクニカルな部分から離れ、私自身の経験を用いて、少し違った角度から利益を上げる取引の問題を考えてみました。お分かりのように、EAそのもの(これは利益を上げるためのほんの一部に過ぎない)に加えて、利益を上げるのに役立つこともあれば、努力を妨げることもある微妙なニュアンスがたくさんあります。実に興味深いことに、その結果は当初意図していたものとはかけ離れています。

その過程で、オリジナルのアイデアを徐々に現実に適応させていかなければなりませんでした。それはまったく制御不可能なプロセスであり、むしろ自然発生的で必然的なものでした。その結果、私は理論的な行き詰まりから抜け出す正しい道を見つけました。つまり、より多くのロボット、より多くのシグナル、より多くのコンピューター、より多くの自動化を意味します。この記事が、多くの理論家や聖杯探求者にとって、別の道を見つけることは常に可能であることを明らかにする、ある種のきっかけとなることを願っています。次回は、このシステムがどのような改善を遂げたかを詳しく紹介します。しかし、まだやるべきことはたくさんあります。

現在利用可能なシグナルはすべてこちらで確認できます。記事の中では最も重要なものだけを紹介しました。その数はもっと増えるだろうし、さらなるパワーアップと改良を遂げるにつれて、そのクオリティも上がっていくでしょう。安定した汎用性の高いシグナル群を完成させられるかどうかがわかるでしょう。自動生成EAに関しては、私のTelegramチャンネルで見つけることができます。今のところ、彼らの品質は私が利用可能な最小限の容量に見合っていますが、その後、容量が拡大すれば、種類も品質も向上するでしょう。

リンク

MetaQuotes Ltdによってロシア語から翻訳されました。
元の記事: https://www.mql5.com/ru/articles/12446

ニューラルネットワークが簡単に(第50回):Soft Actor-Critic(モデルの最適化) ニューラルネットワークが簡単に(第50回):Soft Actor-Critic(モデルの最適化)
前回の記事では、Soft Actor-Criticアルゴリズムを実装しましたが、有益なモデルを訓練することはできませんでした。今回は、先に作成したモデルを最適化し、望ましい結果を得ます。
MQL5における座標降下法を用いたエラスティックネット回帰 MQL5における座標降下法を用いたエラスティックネット回帰
この記事では、過学習を最小化すると同時に、有用な予測因子と予後予測力の低い予測因子を自動的に分離するエラスティックネット回帰の実用的な実装を探求します。
ニューラルネットワークが簡単に(第51回):Behavior-Guided Actor-Critic (BAC) ニューラルネットワークが簡単に(第51回):Behavior-Guided Actor-Critic (BAC)
最後の2つの記事では、エントロピー正則化を報酬関数に組み込んだSoft Actor-Criticアルゴリズムについて検討しました。このアプローチは環境探索とモデル活用のバランスをとりますが、適用できるのは確率モデルのみです。今回の記事では、確率モデルと確定モデルの両方に適用できる代替アプローチを提案します。
リプレイシステムの開発 - 市場シミュレーション(第14回):シミュレーターの誕生(IV) リプレイシステムの開発 - 市場シミュレーション(第14回):シミュレーターの誕生(IV)
この記事ではシミュレーターの開発段階を続けます。 今回は、ランダムウォークタイプの動きを効果的に作成する方法を見ていきます。このような動きには非常に興味をそそられます。資本市場で起こるすべてのことの基礎がそれによって形成されるためです。さらに、市場分析をおこなう上で基本となるいくつかの概念についても理解を深めていきます。