市場シミュレーション(第9回):ソケット(III)
本日の記事は前回の記事の続編です。今回はエキスパートアドバイザー(EA)の実装を取り上げ、特にサーバー側コードがどのように実行されるかに焦点を当てます。前回の記事で示したコードだけでは、すべてを期待どおりに動作させるには不十分であるため、もう少し深く掘り下げる必要があります。そのため、これから起こることをよりよく理解するには、両方の記事を読む必要があります。
取引におけるニューラルネットワーク:Attentionメカニズムを備えたエージェントのアンサンブル(MASAAT)
アテンション機構と時系列解析を組み合わせたマルチエージェント自己適応型ポートフォリオ最適化フレームワーク(MASAAT: Multi-Agent Self-Adaptive Portfolio Optimization Framework)を提案します。MASAATは、価格系列や方向性の変化を分析する複数のエージェントを生成し、異なる詳細レベルで資産価格の重要な変動を特定できるように設計されています。
MQL5で他の言語の実用的なモジュールを実装する(第2回):Pythonに着想を得たREQUESTSライブラリの構築
この記事では、MetaTrader 5 (MQL5)でWebリクエストの送受信をより簡単におこなうために、Pythonのrequestsモジュールに似たモジュールを実装します。
オンチャートUIを使用したリスクベースの取引執行EA(第1回):ユーザーインターフェースの設計
MQL5でリスクベース取引執行エキスパートアドバイザー(EA)用の、クリーンでプロフェッショナルなオンチャートコントロールパネルを構築する方法を解説します。このステップバイステップガイドでは、トレーダーが取引パラメータを入力し、ロットサイズを計算し、自動発注に備えることができる機能的なGUIの設計方法を説明します。
ラリー・ウィリアムズの『市場の秘密』(第10回):スマッシュデー反転パターンの自動化
ルールベースのエキスパートアドバイザー(EA)を構築し、動的なリスク管理、ブレイクアウト確認ロジック、そして「常に1ポジションのみ保有する」売買ルールを組み込みます。読者は、MetaTrader 5のストラテジーテスターと付属のソースコードを用いてバックテストを実施し、結果を再現するとともに、各パラメータがパフォーマンスへ与える影響を検証できます。
リプレイシステムの開発(第66回)サービスの再生(VII)
この記事では、チャート上に新しいバーがいつ表示されるかを判断するための、最初のソリューションを実装します。このソリューションは、さまざまな状況に応用可能です。その仕組みを理解することで、いくつかの重要なポイントを把握する助けとなるでしょう。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを閲覧することは避けてください。
中心力最適化(CFO)アルゴリズム
本記事では、重力の法則にヒントを得た中心力最適化(Central Force Optimization, CFO)アルゴリズムを紹介します。このアルゴリズムは、物理的引力の原理を用いて最適化問題を解決する手法を探究するものです。ここでは、「より重い」解が、成功度の低い解を引き寄せる仕組みを扱います。
MQL5で自己最適化エキスパートアドバイザーを構築する(第8回):複数戦略分析(2)
次のフォローアップディスカッションにぜひご参加ください。今回は、これまでの2つの取引戦略を統合し、アンサンブル取引戦略(複合戦略)を作成する方法を解説します。複数の戦略を組み合わせる際のさまざまな手法を紹介するとともに、パラメータ空間の制御方法についても説明します。これにより、パラメータの数が増えても、効果的な最適化が可能な状態を保つことができます。
リプレイシステムの開発(第72回):異例のコミュニケーション(I)
私たちが本日作成する内容は、理解が難しいものになるでしょう。したがって本稿では、初期段階についてのみ説明します。この段階は次のステップに進むための重要な前提条件となるため、ぜひ注意深く読んでください。この資料の目的はあくまで学習にあります。提示された概念を実際に応用するのではなく、あくまで理解・習得することが目的です。
母集団最適化アルゴリズム:極値から抜け出す力(第II部)
母集団の多様性が低いときに効率的に極小値を脱出して最大値に到達する能力という観点から、母集団最適化アルゴリズムの挙動を調べることを目的とした実験を続けます。研究結果が提供されます。
初級から中級まで:浮動小数点
この記事は浮動小数点数の概念に関する簡単な入門です。本稿の内容は非常に複雑ですので、注意深く丁寧に読んでください。浮動小数点システムをすぐに完全に理解できるとは思わないでください。浮動小数点は、実際に使って経験を積むことで少しずつ理解できるようになります。しかし、この記事を読むことで、なぜアプリケーションの結果が期待と異なる場合があるのか、その理由を理解する手助けになるでしょう。
多通貨エキスパートアドバイザーの開発(第23回):自動プロジェクト最適化段階のコンベアの配置(II)
1つの最終EAで使用される取引戦略を自動的かつ定期的に最適化するためのシステムの構築を目指します。システムは進化するにつれてますます複雑になるため、時折全体を俯瞰し、ボトルネックや非効率な解決策を特定する必要があります。
MQL5における取引へのコンピュータビジョンの統合(第1回):基本関数の作成
コンピュータビジョンおよびディープラーニングを活用したEURUSD予測システムです。本記事では、畳み込みニューラルネットワークが外国為替市場における複雑な価格パターンをどのように認識し、最大54%の精度で為替レートの変動を予測できるかを解説します。また、従来のテクニカル指標の代わりに、チャートの視覚的分析に人工知能技術を活用するアルゴリズムの構築手法を共有します。著者は、価格データを「画像」へと変換するプロセス、それらをニューラルネットワークで処理する方法、さらに活性化マップやアテンションヒートマップを通じてAIの「意識」を可視化する独自のアプローチを解説します。MetaTrader 5ライブラリを用いた実践的なPythonコードにより、読者は本システムを再現し、自身の取引へ応用することができます。
知っておくべきMQL5ウィザードのテクニック(第76回): Awesome Oscillatorのパターンとエンベロープチャネルを教師あり学習で利用する
前回の記事では、オーサムオシレータ(AO: Awesome Oscillator)とエンベロープチャネル(Envelopes Channel)のインディケーターの組み合わせを紹介しましたが、今回はこのペアリングを教師あり学習でどのように強化できるかを見ていきます。Awesome OscillatorとEnvelope Channelは、トレンドの把握とサポート/レジスタンスの補完的な組み合わせです。私たちの教師あり学習アプローチでは、CNN(畳み込みニューラルネットワーク)を使用し、ドット積カーネルとクロスタイムアテンションを活用してカーネルとチャネルのサイズを決定します。通常どおり、この処理はMQL5ウィザードでエキスパートアドバイザー(EA)を組み立てる際に利用できるカスタムシグナルクラスファイル内でおこないます。
ログレコードをマスターする(第10回):抑制機能を実装してログの再表示を防ぐ
Logifyライブラリにおけるログ抑制システムを作成しました。本記事では、CLogifySuppressionクラスがどのようにコンソールのノイズを低減するかについて詳しく説明します。このクラスは、繰り返しや無関係なメッセージを回避するための設定可能なルールを適用します。また、外部設定フレームワーク、検証機構、包括的なテストについても取り上げ、ボットやインジケーター開発時のログ取得における堅牢性と柔軟性を確保しています。
MQL5における単変量時系列への動的モード分解の適用
動的モード分解(DMD: Dynamic Mode Decomposition)は、主に高次元データセットに対して用いられる手法です。本稿では、DMDを単変量の時系列に適用し、その特性把握や予測に活用できることを示します。その過程で、MQL5に搭載されているDMDの実装、とりわけ新しい行列メソッドであるDynamicModeDecomposition()について詳しく解説します。
初心者からエキスパートへ:市場の不規則性への対処
市場のルールは常に変化しており、かつて有効だった原則も、時間の経過とともにその効力を徐々に失っていきます。過去に機能していたものが、現在では一貫して機能しなくなることがあります。本記事では、このような市場の不確実性に対応するために、「確率レンジ(ゾーン)」という考え方に焦点を当てます。さらに、MQL5を用いて、特に値動きが不安定な相場環境でも機能するアルゴリズムの構築方法を解説していきます。ディスカッションにぜひご参加ください。
市場シミュレーション(第3回):パフォーマンスの問題
時には一歩下がってから前進する必要があります。本記事では、マウスインジケーターおよびChart Tradeインジケーターが正常に動作するようにするために必要なすべての変更についてご紹介します。さらにおまけとして、今後広く使用される他のヘッダーファイルにおける変更についても触れます。
アルゴリズム取引におけるニューロシンボリックシステム:シンボリックルールとニューラルネットワークを組み合わせる
本記事では、古典的なテクニカル分析とニューラルネットワークを組み合わせたハイブリッド型取引システムの開発経験について解説します。システムのアーキテクチャを、基本的なパターン分析やニューラルネットワーク構造から、実際の売買判断に至るメカニズムまで詳細に分析し、実際のコードや実務的な知見も共有します。
リスク管理(第3回):リスク管理のメインクラスの構築
本記事では、システム内のリスクを管理するための重要な基盤となるコアのリスク管理クラスを作成し始めます。今回は、基礎の構築に焦点を当て、基本的な構造、変数、関数を定義します。加えて、最大損益値を設定するために必要なメソッドを実装し、リスク管理の土台を築きます。
他言語の実用モジュールをMQL5で実装する(第04回):Pythonのtime、date、datetimeモジュール
MQL5とは異なり、Pythonは、時間の扱いや操作において高い柔軟性と制御性を提供します。本記事では、Pythonのように日付や時刻をより扱いやすくするためのモジュールを、MQL5で実装していきます。
初級から中級まで:イベント(II)
この記事では、すべてを必ずしも特定の方法で実装する必要がないことを見ていきます。問題解決には複数のアプローチが存在します。本記事を正しく理解するには、前回の記事で説明された概念を把握していることが前提となります。ここで提示する内容はあくまで学習目的のものであり、最終的なアプリケーションとして利用することを目的としたものではありません。
カオスゲーム最適化(CGO)
本記事では、新しいメタヒューリスティックアルゴリズムであるカオスゲーム最適化(CGO)を紹介します。CGOは、高次元問題に対しても高い効率を維持できるという独自の特性を示しています。ほとんどの最適化アルゴリズムとは異なり、CGOは問題の規模が大きくなると性能が低下するどころか、場合によっては向上することさえあり、これがこのアルゴリズムの主要な特徴です。
共和分株式による統計的裁定取引(第3回):データベースのセットアップ
本記事では、新しく作成したデータベースを更新するためのMQL5 Serviceのサンプル実装を紹介します。このデータベースはデータ分析や、共和分関係にある株式バスケットの取引に利用されます。データベース設計の根拠についても詳しく説明し、参照用としてデータディクショナリを文書化します。さらに、データベースの作成、スキーマ初期化、市場データ挿入のためのMQL5とPythonのスクリプトも提供します。
MQL5でのデータベースの簡素化(第2回):メタプログラミングを使用してエンティティを作成する
前回の記事では、MQL5における#defineを活用した高度なメタプログラミング手法を検討し、テーブルや列のメタデータ(データ型、主キー、オートインクリメント、NULL許容など)を表現するエンティティを定義しました。これらの定義はTickORM.mqhに集約し、メタデータクラスを自動生成する仕組みを整えることで、SQLを直接記述することなくORMが効率的にデータ操作を実行できる基盤を構築しています。
MQL5取引ツール(第9回):EA向けスクロール可能ガイド付き初回実行ユーザー設定ウィザードの開発
本記事では、エキスパートアドバイザー(EA)向けのMQL5初回実行ユーザー設定ウィザードを開発します。このウィザードはスクロール可能なガイド、インタラクティブなダッシュボード、動的テキストフォーマット、ボタンやチェックボックスなどの視覚的コントロールを備えており、ユーザーが指示に沿って操作し、取引パラメータを効率的に設定できるようにします。ユーザーは、初回実行時にプログラムの内容と操作方法を把握でき、オリエンテーションモデルとして利用できます。
MQL5で他の言語の実用的なモジュールを実装する(第6回):MQL5におけるPython風ファイルI/O操作
複雑なMQL5ファイル操作を簡素化するために、読み書きを容易にするPythonスタイルのインターフェースを構築する方法を紹介します。カスタム関数とクラスを用いて、Pythonの直感的なファイル処理パターンを再現する方法を解説します。その結果、MQL5のファイルI/Oにおいて、よりクリーンで信頼性の高いアプローチが実現しました。
初級から中級へ:WHILE文とDO WHILE文
この記事では、最初のループ文を実際的かつ視覚的に見ていきます。多くの初心者はループを作成するという作業に直面すると不安を感じますが、正しく安全におこなう方法を知るには経験と練習が必要です。しかし、コード内でループを使用する際の主な問題と注意事項を示すことで、皆さんの悩みや苦しみを軽減できるかもしれません。
取引におけるニューラルネットワーク:NAFSによるノード依存型グラフ表現
NAFS (Node-Adaptive Feature Smoothing)手法を紹介します。これは、パラメータの学習を必要としない非パラメトリックなノード表現生成手法です。NAFSは、各ノードの近傍ノードに基づいて特徴量を抽出し、それらを適応的に統合することで最終的なノード表現を生成します。
初心者からエキスパートへ:MQL5を使ったアニメーションニュース見出し(XI) - ニュース取引における相関
本記事では、金融相関の概念を活用して、主要な経済指標発表時に複数の通貨ペアを取引する際の判断効率を高める方法を検討します。特に、ニュースリリース時のボラティリティ上昇によるリスク増大という課題に焦点を当てます。
取引におけるニューラルネットワーク:ResNeXtモデルに基づくマルチタスク学習(最終回)
ResNeXtに基づくマルチタスク学習フレームワークの探求を続けます。このフレームワークは、モジュール性が高く、計算効率に優れ、データ中の安定したパターンを特定できることが特徴です。単一のエンコーダーと専門化された「ヘッド」を使用することで、モデルの過学習のリスクを減らし、予測の精度を向上させます。
多通貨エキスパートアドバイザーの開発(第24回):新しい戦略の追加(II)
本記事では、引き続き、作成済みの自動最適化システムに新しい戦略を連携する方法を見ていきます。最適化プロジェクト作成EAと、第2ステージおよび第3ステージのEAにどのような変更を加える必要があるかを見てみましょう。
MQL5における市場ポジショニング戦略の体系(第1回):NVIDIAのビットワイズ戦略研究
これまでの「MQL5ウィザード」シリーズで積み上げてきた取り組みを基盤とし、それをさらに発展させる新連載を開始します。本連載は、システムトレードおよび戦略テストへのアプローチを一段引き上げることを目的としています。単一タイプのポジションのみを保有するように設計されたエキスパートアドバイザーに焦点を当てます。主にロングポジションのみを扱う設計です。市場トレンドを一方向に限定することで、分析が簡素化され、戦略の複雑さが軽減されます。また、特に為替以外の資産を扱う場合には、重要な洞察が得られる可能性があります。したがって本連載では、株式やその他の非為替資産において、このアプローチが有効かどうかを検証していきます。買い専用戦略は、スマートマネーや機関投資家の戦略と相関することが多いため、その実用性を体系的に探究します。
Market Memory Zonesインジケーターの開発:価格が戻りやすい領域
強い市場活動によって形成される価格ゾーンを識別するインジケーターを開発します。具体的には、インパルス的な値動き、構造のシフト、流動性イベントなどによって生成される領域を対象とします。これらのゾーンは、未約定の注文や急激な価格変動によって市場に「記憶」が残されたエリアを表します。チャート上にこれらの領域をマーキングすることで、将来的に価格が再訪し反応する可能性が統計的に高いポイントを可視化します。
機械学習の限界を克服する(第4回):複数ホライズン予測による既約誤差の回避
機械学習は統計学や線形代数の観点から語られることが多いですが、本記事ではモデル予測を幾何学的に理解する視点に注目します。本記事で示したいのは、モデルはターゲットを直接近似しているのではなく、ターゲットを別の座標系に写像することで固有のずれを生み出し、その結果、避けがたい既約誤差が生じる点です。また本記事では、ターゲットとの直接比較ではなく、異なるホライズンにおけるモデルの予測同士を比較する複数ステップ予測の方が実務的かつ有効であることを提案します。この手法を取引モデルに適用すると、基礎モデルを変更することなく、収益性と予測精度が大幅に向上することを確認しました。
機械学習の限界を克服する(第6回):効果的なメモリクロスバリデーション
本記事では、時系列クロスバリデーションにおける従来のアプローチと、その前提に疑問を投げかける新しい考え方を比較します。特に、市場環境が時間とともに変化するという点を十分に扱えていないという、古典的手法の弱点に焦点を当てます。これらの問題を踏まえ、Effective Memory Cross-Validation (EMCV)という、ドメインを意識した検証手法を紹介します。このアプローチは、「過去データは多ければ多いほど良い」という長年の常識を見直すものです。
MQL5とデータ処理パッケージの統合(第6回):市場フィードバックとモデル適応の融合
ライブ取引結果、ボラティリティの変化、流動性の変化といったリアルタイムの市場フィードバックを、適応型モデル学習とどのように統合するかに焦点を当てます。これにより、応答性が高く、自己改善を継続する取引システムを維持することを目指します。
プライスアクション分析ツールキットの開発(第61回):3スイング検証による構造的傾斜トレンドラインブレイクアウト
3点のスイングによる検証を基準として、客観的なプライスアクションシグナルを生成する、傾斜トレンドラインブレイクアウトツールを紹介します。このシステムは、スイング検出、トレンドライン構築、そしてクロス判定ロジックを用いたブレイクアウト確認を自動化することで、ノイズを低減し、運用・執行判断を標準化します。戦略ルールを解説し、MQL5による実装を示し、テスト結果を検証します。このツールは自動売買を目的としたものではなく、分析およびシグナル確認を支援するためのものです。
リプレイシステムの開発(第78回):新しいChart Trade(V)
本記事では、受信側コードの一部の実装方法について解説します。ここでは、プロトコルの相互作用をテストし理解するためのエキスパートアドバイザー(EA)を実装します。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。