MQL5取引ツール(第9回):EA向けスクロール可能ガイド付き初回実行ユーザー設定ウィザードの開発
本記事では、エキスパートアドバイザー(EA)向けのMQL5初回実行ユーザー設定ウィザードを開発します。このウィザードはスクロール可能なガイド、インタラクティブなダッシュボード、動的テキストフォーマット、ボタンやチェックボックスなどの視覚的コントロールを備えており、ユーザーが指示に沿って操作し、取引パラメータを効率的に設定できるようにします。ユーザーは、初回実行時にプログラムの内容と操作方法を把握でき、オリエンテーションモデルとして利用できます。
MQL5標準ライブラリエクスプローラー(第5回):マルチシグナルEA
本セッションでは、MQL5標準ライブラリを使用して、複数のシグナルを組み合わせた高度なエキスパートアドバイザー(EA)を構築します。このアプローチにより、組み込みシグナルと独自ロジックをシームレスに統合し、柔軟かつ強力な取引アルゴリズムの構築方法を示します。詳細については、続きをご覧ください。
リプレイシステムの開発(第78回):新しいChart Trade(V)
本記事では、受信側コードの一部の実装方法について解説します。ここでは、プロトコルの相互作用をテストし理解するためのエキスパートアドバイザー(EA)を実装します。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
取引におけるニューラルネットワーク:ResNeXtモデルに基づくマルチタスク学習
ResNeXtに基づくマルチタスク学習フレームワークは、金融データの高次元性、非線形性、時間依存性を考慮しながら分析を最適化します。グループ畳み込みと専用ヘッドの使用により、モデルは入力データから重要な特徴を効果的に抽出することができます。
古典的な戦略を再構築する(第17回):テクニカル指標のモデリング
金融における古典的機械学習手法によって課されている「ガラスの天井」をいかに打ち破るかに焦点を当てます。統計モデルから引き出せる価値に対する最大の制約は、モデルそのもの、すなわちデータやアルゴリズムの複雑さではなく、それらを適用する方法論にあるようです。言い換えれば、真のボトルネックはモデルの内在的能力ではなく、私たちがそれをどのように運用しているかにあるのかもしれません。
取引におけるニューラルネットワーク:概念強化を備えたマルチエージェントシステム(最終回)
FinConフレームワークの著者によって提案されたアプローチの実装を続けます。FinConは、大規模言語モデル(LLM)をベースとしたマルチエージェントシステムです。本日は、必要なモジュールを実装し、実際の過去データを用いたモデルの包括的なテストをおこないます。
多通貨エキスパートアドバイザーの開発(第26回):取引商品の情報提供
多通貨EAの開発へと進む前に、まずはこれまで構築してきたライブラリを用いて、新しいプロジェクトを作成する段階へ移行してみましょう。この例では、ソースコードの管理方法をどのように整理するのが最も適切か、そしてMetaQuotesの新しいコードリポジトリを活用することで、どのような利点が得られるのかを示していきます。
初心者からエキスパートへ:MQL5を使ったアニメーションニュース見出し(IX) - ニュース取引のための単一チャートでのマルチペア管理
ニュース取引では、ボラティリティが高まるため、非常に短時間で複数のポジションや通貨ペアを管理する必要があります。本記事では、News Headline EAにこの機能を統合することで、マルチペア取引の課題にどのように対応できるかを解説します。MQL5を用いたアルゴリズム取引により、マルチペア取引を効率的かつ強力に実現する方法を一緒に探っていきます。
フラクタルベースアルゴリズム(FBA)
最適化問題を解くための、フラクタルアプローチに基づく新しいメタヒューリスティック手法を紹介します。本アルゴリズムは、探索空間を分割しながら有望な領域を順次特定し分割していくことで、自己相似的なフラクタル構造を形成し、計算資源を最も有望な領域へ集中的に投入します。さらに、より良い解を指向する独自の突然変異メカニズムにより、探索空間における探索と活用の最適なバランスを実現し、アルゴリズムの効率を大幅に向上させています。
MQL5で他の言語の実用的なモジュールを実装する(第5回):PythonのLoggingモジュールによるプロ仕様のログ
PythonのloggingモジュールをMQL5と統合することで、トレーダーは体系的なログ管理手法を活用でき、取引活動の監視、デバッグ、記録のプロセスを大幅に簡素化することができます。本記事では、その適応方法について解説し、取引ソフトウェア開発における明確性と整理性を維持するための強力なツールを提供します。
共和分株式による統計的裁定取引(第8回):ポートフォリオのリバランスのためのローリングウィンドウ固有ベクトル比較
本記事では、共和分関係にある株式を用いた平均回帰型統計裁定戦略において、早期の不均衡診断およびポートフォリオリバランスのために、ローリングウィンドウ固有ベクトル比較を用いる手法を提案します。この手法は、従来のインサンプル/アウトオブサンプルADF (IS/OOS ADF)検証と比較されており、固有ベクトルの変化が、IS/OOS ADFが依然としてスプレッドの定常性を示している場合であっても、リバランスの必要性を示唆し得ることを示します。本手法は主に実運用取引の監視を目的としていますが、結論として、固有ベクトル比較をスコアリングシステムに統合することも可能である一方で、その実際のパフォーマンスへの寄与については検証が必要であるとされています。
取引におけるニューラルネットワーク:ハイブリッドグラフシーケンスモデル(最終部)
引き続き、異なるアーキテクチャの利点を統合し、高い分析精度と計算リソースの効率的な配分を実現するハイブリッドグラフシーケンスモデル(GSM++)を検討します。これらのモデルは、隠れたパターンを効果的に識別し、市場ノイズの影響を低減して予測精度を向上させます。
MQL5で他の言語の実用的なモジュールを実装する(第6回):MQL5におけるPython風ファイルI/O操作
複雑なMQL5ファイル操作を簡素化するために、読み書きを容易にするPythonスタイルのインターフェースを構築する方法を紹介します。カスタム関数とクラスを用いて、Pythonの直感的なファイル処理パターンを再現する方法を解説します。その結果、MQL5のファイルI/Oにおいて、よりクリーンで信頼性の高いアプローチが実現しました。
取引におけるニューラルネットワーク:金融市場向けマルチモーダルツール拡張エージェント(FinAgent)
FinAgentを紹介します。FinAgentは、マーケットの動向や過去の取引パターンを反映するさまざまなタイプのデータを分析できるマルチモーダル金融取引エージェントのフレームワークです。
機械学習ベースの取引システムにおける隠れマルコフモデル
隠れマルコフモデル(HMM, Hidden Markov Models)は、観測された事象が、マルコフ過程を形成する未観測(隠れ)状態の系列に依存するような逐次データを解析するために設計された、確率的モデルの強力なクラスです。HMMの主要な仮定には、隠れ状態に対するマルコフ性(すなわち、次の状態への遷移確率は現在の状態のみに依存すること)と、現在の隠れ状態が既知である場合における観測の独立性が含まれます。
市場シミュレーション(第4回):C_Ordersクラスの作成(I)
本記事では、取引サーバーに注文を送信できるようにするためのC_Ordersクラスの作成を開始します。これは少しずつ進めていきますが、目的は、メッセージングシステムを通じてこれがどのようにおこなわれるのかを詳細に説明することです。
取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(最終回)
予測符号化と強化学習アルゴリズムを組み合わせた金融時系列分析用のハイブリッド取引システム「StockFormer」の検討を引き続きおこないます。本システムは、複雑なパターンや資産間の相互依存関係を捉えることを可能にするDiversified Multi-Head Attention (DMH-Attn)機構を備えた、3つのTransformerブランチに基づいています。前回は、フレームワークの理論的な側面に触れ、DMH-Attn機構を実装しました。今回は、モデルのアーキテクチャと学習について解説します。
取引におけるニューラルネットワーク:概念強化を備えたマルチエージェントシステム(FinCon)
FinConフレームワークは、大規模言語モデル(LLM)をベースにしたマルチエージェントシステムです。概念的言語強化を活用して意思決定とリスク管理を改善し、さまざまな金融タスクで効果的に機能するよう設計されています。
古典的な戦略を再構築する(第21回):ボリンジャーバンドとRSIのアンサンブル戦略の発見
EURUSD市場を対象としたアンサンブル型アルゴリズム取引戦略の開発について説明します。この戦略は、ボリンジャーバンドとRSI(相対力指数)を組み合わせたものです。初期のルールベース戦略は高品質なシグナルを生成した一方で、取引頻度が低く、収益性にも限界がありました。その後、複数の戦略バリエーションを反復的に評価した結果、市場に対する理解の誤り、ノイズの増加、パフォーマンスの劣化といった問題が明らかになりました。これらの課題に対し、統計的学習アルゴリズムを適切に活用し、モデリング対象をテクニカル指標へと再定義し、適切なスケーリングを適用したうえで、機械学習による予測と従来の取引ルールを組み合わせることで、最終的には許容可能なシグナル品質を維持しながら、収益性と取引頻度の大幅な改善を達成しました。
取引におけるニューラルネットワーク:暗号通貨市場向けメモリ拡張コンテキスト認識学習(最終回)
MacroHFTフレームワークは、高頻度暗号資産取引(HFT)のために、文脈認識型強化学習とメモリ機構を用いて動的な市場環境に適応します。本記事の最後では、実装した手法を実際の過去データで検証し、その有効性を評価します。
MQL5でカスタムインジケーターを作成する(第2回):Canvasと針のメカニクスを使ったゲージ型RSIインジケーターの構築
本記事では、MQL5でゲージ型のRSIインジケーターを開発します。このインジケーターは、RSIの値を円形のスケール上の動く針で可視化し、買われすぎと売られすぎのレベルを色分けした範囲と、カスタマイズ可能な凡例を備えています。Canvasクラスを使用して、円弧、目盛り、扇形などの要素を描画し、新しいRSIデータに基づいて滑らかに更新されるようにします。
取引におけるニューラルネットワーク:金融市場向けマルチモーダルツール拡張エージェント(最終部)
マルチモーダル市場の動向データと過去の取引パターンを分析するために設計されたマルチモーダル金融取引エージェント「FinAgent」のアルゴリズム開発を続けます。
トレンド強度の最適化:方向と強さに沿った取引戦略
短期および長期の分析を組み合わせ、全体的なトレンドとその強さに基づいて取引判断および執行をおこなう、トレンドフォロー型のエキスパートアドバイザー(EA)です。本記事では、忍耐力と規律を備え、集中力を維持しながら、トレンドの強さと方向に一致する場合にのみ取引を実行し、特にトレンドに逆らう取引や頻繁なバイアス変更を避け、テイクプロフィットに到達するまでポジションを保持できるトレーダー向けに設計されたEAについて詳しく解説します。
知っておくべきMQL5ウィザードのテクニック(第79回):教師あり学習でのゲーターオシレーターとA/Dオシレーターの使用
前回の記事では、ゲーターオシレーターとA/Dオシレーターの組み合わせについて、通常の設定における生のシグナルを用いた場合の挙動を確認しました。この2つのインジケーターは、それぞれトレンド指標と出来高指標として相補的に機能します。今回の記事では、その続編として、教師あり学習を活用することで、前回レビューした特徴量パターンの一部をどのように強化できるかを検証します。この教師あり学習アプローチでは、CNN(畳み込みニューラルネットワーク)を用い、カーネル回帰およびドット積類似度を活用して、カーネルやチャネルのサイズを決定しています。今回もこれまでと同様に、MQL5ウィザードでエキスパートアドバイザー(EA)を組み立てられるようにしたカスタムシグナルクラスファイル内で実装しています。
プライスアクション分析ツールキットの開発(第54回):EMAと平滑化された価格変動によるトレンドのフィルタリング
取引の明確さとタイミングを向上させるために、平均足による平滑化とEMA20の高値および安値のバンド、さらにEMA50のトレンドフィルターを組み合わせた手法を解説します。これらのツールにより、トレーダーは真のモメンタムを見極め、ノイズを排除し、ボラティリティの高い局面やトレンド相場により適切に対応できます。
ラリー・ウィリアムズの『市場の秘密』(第6回):市場変動を利用したボラティリティブレイクアウトの測定
MQL5を用いてラリー・ウィリアムズのボラティリティブレイクアウト型エキスパートアドバイザーを設計および実装する方法を解説します。スイングレンジの測定、エントリーレベルの算出、リスクベースのポジションサイジング、さらに実際の市場データを用いたバックテストまでを網羅します。
Codexパイプライン:PythonからMQL5へ ― FXI ETFを対象とした複数四半期の指標分析
MetaTraderを本来のFX取引という「コンフォートゾーン」の外でどのように活用できるかという検討を継続し、FXI ETFという別の取引可能資産に着目します。前回の記事では、指標の選定にとどまらず、指標間のパターンの組み合わせにまで踏み込み、やや過度に複雑化した側面がありました。本記事では一歩引いて、指標選定そのものに焦点を当てます。最終的には、十分な価格履歴データが存在する場合に、さまざまな資産に対して適切な指標を推奨できるパイプラインの構築を目指します。
FX裁定取引:関係性評価パネル
MQL5における裁定取引分析パネルの開発について説明します。さまざまな方法で、Forexで理論為替レートを導き出すにはどうすればよいでしょうか。市場価格と理論為替レートとの乖離を把握し、ある通貨を別の通貨に交換する裁定取引(三角裁定取引など)の収益機会を評価するためのインジケーターを作成します。
共和分株式による統計的裁定取引(第10回):構造変化の検出
本記事では、ペア関係における構造変化を検出するためのChow検定と、構造変化の監視および早期検出のための累積平方和(CUSUM)の適用について解説します。例として、NvidiaとIntelの提携発表および米国政府による対外貿易関税の発表を取り上げ、それぞれ「傾きの反転」と「切片のシフト」の事例として説明します。すべてのPythonテストスクリプトも提供します。
Python-MetaTrader 5ストラテジーテスター(第3回):MetaTrader 5風の取引操作 — 処理と管理
シミュレーター内で注文の開始、終了、変更などの取引操作を処理するための、Python-MetaTrader5と同様の方法を紹介します。シミュレーションがMT5と同様の動作となるように、取引リクエストに対して厳密な検証処理が実装されており、銘柄取引パラメータや一般的なブローカーの制限事項が考慮されています。
MQL5でカスタムインジケーターを作成する(第3回):扇形と円形によるマルチゲージの強化
本記事では、MQL5のゲージ型インジケーターを拡張し、複数のオシレーターに対応できるようにします。列挙型を使うことで、単体表示だけでなく複合表示もユーザーが選択できるようになります。また、基盤となるゲージフレームワークを拡張し、扇形と円形の2つのスタイルを派生クラスとして実装します。円弧、直線、多角形を組み合わせた枠(ケース)の描画により、見た目もより洗練されたものになります。
Python-MetaTrader 5ストラテジーテスター(第4回):テスター入門
シミュレーター上で初めての自動売買ロボットを構築し、MetaTrader 5のストラテジーテスター風にストラテジーテスト処理を実行します。その上で、カスタムシミュレーションで生成された結果を、普段使用しているターミナルの結果と比較します。
取引アルゴリズムにおけるゲーム理論的アプローチの活用
DQN(Deep Q-Network)ベースの機械学習を用いた多次元的な因果推論に基づく自己学習型トレーディングEAを構築します。このEAは7つの通貨ペアを同時に取引し、異なる通貨ペア間のエージェントが相互に情報を交換します。
リスク管理(第5回):リスク管理システムをエキスパートアドバイザーに統合する
本記事では、これまで開発したリスク管理システムを実装し、さらに別記事で解説したOrder Blocksインジケーターを追加します。加えて、バックテストを実行し、リスク管理システムの有無による結果の違いを比較することで、動的リスク管理の影響を評価します。
MQL5でカスタムインジケーターを作成する(第5回):WaveTrend Crossover Evolution:Canvasを用いたフォグ状グラデーション、シグナルバブル、リスク管理
MQL5におけるSmart WaveTrend Crossoverンジケーターを拡張し、Canvasを用いた描画機能を組み込むことで、霧状のグラデーションオーバーレイ、ブレイクアウトを検出するシグナルボックス、さらに買いシグナルや売りシグナルをバブルや三角形で表示する視覚的アラート機能を追加します。さらに、リスク管理機能として、ローソク足倍率またはパーセンテージに基づいて計算される動的なテイクプロフィットおよびストップロスレベルを導入し、ライン表示およびテーブル表示によって可視化します。加えて、トレンドフィルタリングやボックス延長機能といったオプションも提供します。
ペアトレード:Zスコアの差に基づく自動最適化機能を備えたアルゴリズム取引
この記事では、ペアトレードとは何か、そして相関トレードがどのように機能するのかを解説します。また、ペアトレードを自動化するためのEA(エキスパートアドバイザー)を作成し、さらに過去データに基づいてこの取引アルゴリズムを自動最適化する機能も追加していきます。加えて、プロジェクトの一環として、Zスコアを用いて2つの通貨ペア間の差異を計算する方法についても学びます。
共和分株式による統計的裁定取引(第9回):バックテストポートフォリオのウェイト更新
本記事では、共和分関係にある銘柄を通じた統計的裁定取引を利用する平均回帰ベースの戦略において、ポートフォリオのウェイト更新をバックテストするためにCSVファイルを使用する方法について説明します。データベースへのローリングウィンドウ固有ベクトル比較(RWEC, Rolling Windows Eigenvector Comparison)の結果入力から、バックテストレポートの比較までを網羅します。その一方で、各RWECパラメータの役割と、それが全体的なバックテスト結果に与える影響を詳しく説明し、相対的なドローダウンの比較がこれらのパラメータをさらに改善するのにどのように役立つかを示します。
MQL5でカスタムインジケーターを作成する(第4回):デュアルオシレーター搭載Smart WaveTrend Crossover
本記事では、MQL5で「Smart WaveTrend Crossover」と呼ばれるカスタムインジケーターを開発します。このインジケーターは、2つのWaveTrendオシレーターを活用しており、1つはクロスオーバーシグナルの生成、もう1つはトレンドフィルタリングを目的としています。チャネル長、平均期間、移動平均期間といった各種パラメータはカスタマイズ可能です。また、トレンド方向に応じてローソク足を色分け表示し、クロスオーバー時には買いや売りの矢印シグナルを表示します。さらに、トレンド確認の有効化オプションや、色やオフセットなどのビジュアル要素も調整可能です。
取引におけるニューラルネットワーク:市場異常の適応型検出(最終回)
時系列データにおける異常検知のための高度なツールであるDADAフレームワークの基盤となるアルゴリズムの構築を続けます。このアプローチにより、ランダムな変動と重要な逸脱を効果的に区別することができます。従来の手法とは異なり、DADAはさまざまなデータタイプに動的に適応し、それぞれのケースにおいて最適な圧縮レベルを選択します。
プライスアクション分析ツールキットの開発(第57回):MQL5による市場状態分類モジュールの開発
確定済み価格データを用いて価格挙動を解釈するMQL5向けの市場状態分類モジュールを開発および解説します。ボラティリティの収縮および拡大、ならびに構造的一貫性を分析することにより、市場環境をコンプレッション、トランジション、エクスパンション、トレンドとして分類し、プライスアクション分析のための明確な文脈把握の枠組みを提供します。