MQL5でのスイング極値とプルバック(第1回):マルチタイムフレームインジケータの開発
MQL5でのスイング極値とプルバック(第1回):マルチタイムフレームインジケータの開発
Swing Extremes and Pullbacksインジケータを自動化します。このインジケータは、下位足(LTF)生の値動きを、市場の意図を構造化して示すマップへと変換します。リアルタイムでスイングハイ・スイングロー・調整フェーズを正確に検出し、マイクロストラクチャーの変化をプログラムによって追跡することで、完全な反転が形成される前に潜在的な転換ポイントを予測します。これにより、市場ノイズを実用的なシグナルへ変換し、より精度の高い意思決定を可能にします。
MQL5取引ツール(第19回):チャート描画用のインタラクティブなツールパレットの構築
MQL5取引ツール(第19回):チャート描画用のインタラクティブなツールパレットの構築
ドラッグによる移動やリサイズが可能なパネル、テーマ切り替え機能を備えた、チャート描画用のインタラクティブなツールパレットをMQL5で構築します。また、十字カーソル、トレンドライン、ライン、矩形、フィボナッチ、テキスト、矢印などのツール用ボタンを追加し、マウスイベントを処理してツールの有効化や操作ガイドを実現します。このシステムは、カスタマイズ可能なUIを通じてリアルタイムなチャート操作をサポートし、トレード分析をより効率的におこなえるようにします。
MQL5経済指標カレンダーを用いたニュースフィルタリング(第1回):MQL5におけるニュース前・ニュース後ウィンドウの実装
MQL5経済指標カレンダーを用いたニュースフィルタリング(第1回):MQL5におけるニュース前・ニュース後ウィンドウの実装
本システムでは、Webリクエストや外部DLLを使用せず、MQL5のみでカレンダー連動型ニュースフィルタを構築します。第1回は、経済イベントの読み込みとキャッシュ処理、通貨を基準とした銘柄へのイベント紐付け、重要度レベルによるフィルタリング、ニュース前後の監視時間(ウィンドウ)の設定、そしてニュース発生中の新規トレード制限について解説します。また、必要に応じてニュース前に保有ポジションを決済する機能も実装します。この結果、不要な取引停止を減らし、ボラティリティが高まる局面でのエントリーを保護する、設定可能でプロップファーム向けにも適したリスク管理機能を実現できます。
MQL5取引ツール(第18回):向き制御対応の角丸吹き出し
MQL5取引ツール(第18回):向き制御対応の角丸吹き出し
角丸長方形と三角形のポインタを組み合わせることで、MQL5における角丸の吹き出しを作成する方法を紹介します。また、ポインタの向きを上、下、左、右に制御する方法についても解説します。さらに、形状のジオメトリの事前計算、スーパーサンプリングによる塗りつぶし、頂点部の丸みを持たせた円弧処理、および継ぎ目を滑らかに接続するための拡張比を用いた分割枠線の描画について詳しく説明します。サイズ、角丸半径、色、不透明度、線の太さなどを自由に設定できるコードを提供しており、トレーディングインターフェースのアラートやツールチップなどにそのまま利用できます。
流動性狩りの最適化:流動性狩りと市場構造転換の違いを見極める
流動性狩りの最適化:流動性狩りと市場構造転換の違いを見極める
流動性狩り後のトレードセットアップをどのように活用するかを明確に解説することを目的とした、トレンドフォロー型EAに関する記事です。本記事では、流動性狩りおよび流動性一掃をトレードのエントリー条件として最適に活用したいトレーダー向けに特別に設計されたEAについて詳しく解説します。また、流動性狩りと市場構造転換を正しく区別する方法、それぞれが発生した際にどのように検証し活用すべきかについても取り上げます。これにより、両者を混同することで生じる損失を軽減することを目指します。
MQL5取引ツール(第17回):ベクトルベースの角丸長方形と三角形を探る
MQL5取引ツール(第17回):ベクトルベースの角丸長方形と三角形を探る
MQL5のcanvasを使用して、ベクトルベースの手法で角丸長方形と三角形を描画する方法を解説します。さらに、アンチエイリアス処理を実現するためにスーパーサンプリングを利用します。実装では、スキャンライン塗りつぶし、円弧や接線に対する幾何学的事前計算、そして境界線描画を組み合わせることで、滑らかでカスタマイズ可能な図形を作成します。このアプローチは、今後の取引ツールにおけるモダンなUI要素を構築するための基盤となり、サイズ、角の半径、境界線、透明度などを入力で柔軟に設定できる設計になっています。
MQL5取引ツールのアクセシビリティ課題を克服する(第1回):MQL5インジケータに状況対応型音声アラートを追加する方法
MQL5取引ツールのアクセシビリティ課題を克服する(第1回):MQL5インジケータに状況対応型音声アラートを追加する方法
本記事では、標準的なターミナルアラートの枠を超え、MQL5のリソース管理機能を活用して状況に応じた音声フィードバックを実現する、アクセシビリティを重視した拡張手法を紹介します。一般的な通知音ではなく、「何が起こったのか」と「なぜ起こったのか」を音声で伝えることで、トレーダーは視覚情報だけに頼ることなく市場イベントを把握できます。このアプローチは、特に視覚障害のあるトレーダーにとって有用ですが、ハンズフリーで操作したい多忙なユーザーやマルチタスク環境で取引を行うユーザーにもメリットがあります。
MQL5標準ライブラリエクスプローラー(第7回):CCanvasによるインタラクティブなポジションラベル表示
MQL5標準ライブラリエクスプローラー(第7回):CCanvasによるインタラクティブなポジションラベル表示
MQL5標準ライブラリに含まれるCCanvasを使用して、ポジション情報を可視化するツールの構築方法を解説します。このプロジェクトを通して、標準ライブラリの各種モジュールを扱うスキルを高めるとともに、ライブチャート上で保有ポジションを視覚的に確認・操作できる実用的なツールを作成します。ぜひ最後までお読みいただき、議論にもご参加ください。
イルカエコーロケーションアルゴリズム(DEA)
イルカエコーロケーションアルゴリズム(DEA)
本記事ではDEAアルゴリズムについて詳しく解説します。DEAは、イルカがエコーロケーション(反響定位)を用いて獲物を探す独特の能力に着想を得たメタヒューリスティック最適化手法です。数学的基礎からMQL5での実装、さらには解析や従来アルゴリズムとの比較まで、この比較的新しい手法がなぜ最適化問題に取り組む研究者の手法群に加える価値がある理由を詳しく見ていきます。
機械学習を用いたフラクタルパターンの検出と分類
機械学習を用いたフラクタルパターンの検出と分類
本記事では、フラクタル解析と機械学習を用いた市場予測という興味深いテーマを取り上げます。これらは、金融価格チャート上に形成される多様なフラクタル構造を探究するための第一歩に過ぎません。本記事では、相関を用いてパターンを検出し、CatBoostアルゴリズムでそれらを分類します。
共分散行列適応進化戦略(CMA-ES)
共分散行列適応進化戦略(CMA-ES)
目的関数の幾何構造を捉えるように学習する、最も興味深い非勾配最適化アルゴリズムの一つを扱います。CMA-ESの古典的実装に対してわずかな修正を加えたもの、すなわち正規分布を冪分布に置き換える手法に焦点を当てます。アルゴリズムの背後にある数理を徹底的に解説し、さらに実装面についても検討します。また、CMA-ESがどのような問題で無類の性能を発揮し、どのような状況では使用を避けるべきかについても確認します。
イーグル戦略最適化(ES)
イーグル戦略最適化(ES)
イーグル戦略最適化(ES)は、鷲の狩猟行動に着想を得た最適化アルゴリズムです。マンテーニャ法によるレヴィ飛行を用いた大域探索と、ホタルアルゴリズムによる集中的な局所探索(local exploitation)を交互に実行することで、探索と活用のバランスを実現します。本アルゴリズムは、数学的根拠に基づく探索戦略と、2つの自然現象を統合したバイオインスパイアードなアプローチを兼ね備えています。
生物地理学に基づく最適化(BBO)
生物地理学に基づく最適化(BBO)
生物地理学に基づく最適化(BBO, Biogeography-Based Optimization)は、群島内の島々の間で発生する種の移住という自然現象に着想を得た、洗練された大域的最適化手法です。このアルゴリズムは、シンプルでありながら強力な考え方に基づいています。すなわち、良質な解はその特徴を他の解へ伝播し、低品質な解は新たな特徴を積極的に取り込むことで、最良の解から最悪の解へと情報が自然に流れるようになります。さらに、適応的な突然変異オペレーターによって探索と活用の優れたバランスが実現されます。BBOはさまざまな最適化問題に対して高い効率を示しています。
MQL5取引ツール(第15回):Canvas/ja/ぼかし効果、影描画、滑らかなマウスホイールスクロール
MQL5取引ツール(第15回):Canvas/ja/ぼかし効果、影描画、滑らかなマウスホイールスクロール
MQL5 Canvasダッシュボードを高度な視覚効果で強化します。具体的には、フォグオーバーレイ/ja/ため/ja/ぼかしグラデーション、ヘッダー/ja/影描画、そしてより滑らかな線や曲線を実現するアンチエイリアス描画を追加します。また、チャート/ja/ズームスケールに干渉しない滑らかなマウスホイールスクロールもテキストパネルに実装し、機能面でも改良を加えます。
MQL5における取引戦略の自動化(第47回):ヘッジ機能を備えたNick Rypock Trailing Reverse (NRTR)
MQL5における取引戦略の自動化(第47回):ヘッジ機能を備えたNick Rypock Trailing Reverse (NRTR)
MQL5でNick Rypock Trailing Reverse (NRTR)取引システムを開発します。このシステムは、NRTRチャネルインジケータを用いて反転シグナルを検出し、トレンドフォロー型のエントリーを実現します。また、買いポジションと売りポジションの両方に対応したヘッジ機能も備えています。さらに、エクイティまたは口座残高に基づく自動ロット計算、ATR倍率を用いた固定または動的なストップロスおよびテイクプロフィット設定、ならびにポジション数制限などのリスク管理機能も実装します。
MQL5標準ライブラリエクスプローラー(第6回):生成されたエキスパートアドバイザーの最適化
MQL5標準ライブラリエクスプローラー(第6回):生成されたエキスパートアドバイザーの最適化
前回開発したマルチシグナルエキスパートアドバイザーを引き続き取り上げ、利用可能な最適化手法の検討と適用をおこないます。その目的は、過去データに基づく体系的な最適化を通じて、EAの取引パフォーマンスを有意に向上させることが可能かどうかを検証することです。
MetaTrader 5とMQL5経済指標カレンダー:ニュースを再現性のあるトレードシステムに変える方法
MetaTrader 5とMQL5経済指標カレンダー:ニュースを再現性のあるトレードシステムに変える方法
MetaTrader 5に組み込まれている経済指標カレンダーを利用したニューストレードの体系的アプローチを紹介します。対象となる内容には、データ構造、API関数、時間同期ルール、イベントフィルタリングが含まれます。また、サーバーへ過度な負荷をかけることなく履歴を管理するためのキャッシュ機構および増分更新方式についても解説します。さらに、同一アルゴリズムを用いた決定論的テストを実現するために、履歴データを.EX5リソースとしてエクスポートする実用的な仕組みも提供します。
決定論的振動型探索(DOS)
決定論的振動型探索(DOS)
決定論的振動型探索(DOS, Deterministic Oscillatory Search)アルゴリズムは、乱数を使用せずに勾配法と群知能アルゴリズムの利点を組み合わせた、革新的な大域最適化手法です。適応度の振動と勾配状態メカニズムによって、DOSは複雑な探索空間を決定論的に探索することができます。
ラクダアルゴリズム(CA)
ラクダアルゴリズム(CA)
ラクダアルゴリズムは2016年に開発され、砂漠におけるラクダの行動をシミュレートして最適化問題を解く手法です。本アルゴリズムは、温度、補給、持久力といった要素を考慮しています。また、本記事では改良版であるCAmも紹介しており、ガウス分布による解生成とオアシス効果パラメータの最適化という主要な改良が含まれています。
機械学習ベースの取引システムにおける隠れマルコフモデル
機械学習ベースの取引システムにおける隠れマルコフモデル
隠れマルコフモデル(HMM, Hidden Markov Models)は、観測された事象が、マルコフ過程を形成する未観測(隠れ)状態の系列に依存するような逐次データを解析するために設計された、確率的モデルの強力なクラスです。HMMの主要な仮定には、隠れ状態に対するマルコフ性(すなわち、次の状態への遷移確率は現在の状態のみに依存すること)と、現在の隠れ状態が既知である場合における観測の独立性が含まれます。
フラクタルベースアルゴリズム(FBA)
フラクタルベースアルゴリズム(FBA)
最適化問題を解くための、フラクタルアプローチに基づく新しいメタヒューリスティック手法を紹介します。本アルゴリズムは、探索空間を分割しながら有望な領域を順次特定し分割していくことで、自己相似的なフラクタル構造を形成し、計算資源を最も有望な領域へ集中的に投入します。さらに、より良い解を指向する独自の突然変異メカニズムにより、探索空間における探索と活用の最適なバランスを実現し、アルゴリズムの効率を大幅に向上させています。
MQL5における建値機能の実装(第1回):基底クラスと固定ポイントの建値モード
MQL5における建値機能の実装(第1回):基底クラスと固定ポイントの建値モード
本記事では、MQL5言語を用いた自動売買戦略における建値(損益分岐点)機能の実装について解説します。まず、建値モードとは何か、その仕組みや実装パターンについて簡単に説明します。 その後、前回のリスク管理に関する記事で作成したOrder Blocksエキスパートアドバイザーに、この機能を統合していきます。さらに、その有効性を検証するため、同一条件下で2種類のバックテストを実施します。1つはブレイクイーブン機能を有効化した場合、もう1つは無効化した場合です。
カオス最適化アルゴリズム(COA):続編
カオス最適化アルゴリズム(COA):続編
引き続き、カオス最適化アルゴリズムの研究を進めていきます。記事の後半では、アルゴリズムの実装、テスト、および結論といった実践的な側面について述べます。
サンゴ礁最適化(CRO)
サンゴ礁最適化(CRO)
サンゴ礁の形成および発展過程に着想を得たメタヒューリスティクス手法であるサンゴ礁最適化(CRO, Coral Reef Optimization)アルゴリズムを包括的に解析します。このアルゴリズムは、放卵放精、体内発生、幼生定着、無性生殖、ならびに限られた礁空間を巡る競争といった、サンゴの進化過程における主要な生物学的現象をモデル化したものです。特に、本記事では改良版アルゴリズムに重点を置いて説明します。
バトルロイヤル最適化(BRO)
バトルロイヤル最適化(BRO)
本記事では、Battle Royale Optimizer(バトルロイヤル最適化アルゴリズム)について解説します。このアルゴリズムは、各解が近傍解と競合し、「ダメージ」を蓄積し、ある閾値を超えた場合に置き換えられ、さらに現在の最良解の周囲へと探索空間を周期的に縮小していくというメタヒューリスティックです。あわせて、擬似コードおよびCAOBROクラスのMQL5実装も紹介します。また、近傍探索、最良解への移動、適応的なデルタ区間といった主要な処理も含まれています。テスト結果としては、Hilly関数、Forest関数、Megacity関数における評価が示されており、本手法の強みと限界が明らかにされています。さらに、popSizeやmaxDamageといった重要パラメータを調整しながら実験し、検証できる基盤も提供されています。
リスク管理(第4回):主要クラスメソッドの完了
リスク管理(第4回):主要クラスメソッドの完了
MQL5におけるリスク管理に関する連載の第4回です。本連載では、取引戦略を保護しつつ最適化するための高度な手法を段階的に解説しています。前回までの内容で重要な基礎はすでに整っており、本記事では第3回で後回しにしていた残りの実装をすべて完結させます。具体的には、設定された利益および損失の上限に到達したかどうかを判定するための各種関数を完成させます。さらに、より高精度かつ柔軟なリスク制御を実現するための新しいイベント機構についても導入します。
古典的な戦略を再構築する(第21回):ボリンジャーバンドとRSIのアンサンブル戦略の発見
古典的な戦略を再構築する(第21回):ボリンジャーバンドとRSIのアンサンブル戦略の発見
EURUSD市場を対象としたアンサンブル型アルゴリズム取引戦略の開発について説明します。この戦略は、ボリンジャーバンドとRSI(相対力指数)を組み合わせたものです。初期のルールベース戦略は高品質なシグナルを生成した一方で、取引頻度が低く、収益性にも限界がありました。その後、複数の戦略バリエーションを反復的に評価した結果、市場に対する理解の誤り、ノイズの増加、パフォーマンスの劣化といった問題が明らかになりました。これらの課題に対し、統計的学習アルゴリズムを適切に活用し、モデリング対象をテクニカル指標へと再定義し、適切なスケーリングを適用したうえで、機械学習による予測と従来の取引ルールを組み合わせることで、最終的には許容可能なシグナル品質を維持しながら、収益性と取引頻度の大幅な改善を達成しました。
MQL5取引ツール(第12回):相関行列ダッシュボードのインタラクティブ機能の強化
MQL5取引ツール(第12回):相関行列ダッシュボードのインタラクティブ機能の強化
MQL5における相関行列ダッシュボードを強化し、パネルのドラッグ操作、最小化と最大化、ボタンや時間足に対するホバー効果、マウスイベント処理などを追加することで、ユーザー体験の向上を図ります。さらに、相関の強さに基づく銘柄の並び替え(昇順、降順)、相関値表示とp値表示の切り替え、ライトテーマとダークテーマの切り替え、動的なカラー更新も実装します。
MQL5取引ツール(第11回):ヒートマップおよび標準モード対応相関行列ダッシュボード(ピアソン、スピアマン、ケンドール)
MQL5取引ツール(第11回):ヒートマップおよび標準モード対応相関行列ダッシュボード(ピアソン、スピアマン、ケンドール)
MQL5で相関行列ダッシュボードを構築し、ピアソン、スピアマン、ケンドールの各手法を用いて、指定した時間足およびバー数に基づいて資産間の相関関係を算出します。色の閾値と星印によってp値の有意性を示す標準モードに加え、相関の強さをグラデーションで可視化するヒートマップモードを実装します。さらに、時間足選択ツール、モード切り替え、動的な凡例を備えたインタラクティブなユーザーインターフェースを搭載しており、銘柄間の依存関係を効率的に分析できます。
Python-MetaTrader 5ストラテジーテスター(第3回):MetaTrader 5風の取引操作 — 処理と管理
Python-MetaTrader 5ストラテジーテスター(第3回):MetaTrader 5風の取引操作 — 処理と管理
シミュレーター内で注文の開始、終了、変更などの取引操作を処理するための、Python-MetaTrader5と同様の方法を紹介します。シミュレーションがMT5と同様の動作となるように、取引リクエストに対して厳密な検証処理が実装されており、銘柄取引パラメータや一般的なブローカーの制限事項が考慮されています。
トレンド強度の最適化:方向と強さに沿った取引戦略
トレンド強度の最適化:方向と強さに沿った取引戦略
短期および長期の分析を組み合わせ、全体的なトレンドとその強さに基づいて取引判断および執行をおこなう、トレンドフォロー型のエキスパートアドバイザー(EA)です。本記事では、忍耐力と規律を備え、集中力を維持しながら、トレンドの強さと方向に一致する場合にのみ取引を実行し、特にトレンドに逆らう取引や頻繁なバイアス変更を避け、テイクプロフィットに到達するまでポジションを保持できるトレーダー向けに設計されたEAについて詳しく解説します。
MQL5でカスタムインジケーターを作成する(第4回):デュアルオシレーター搭載Smart WaveTrend Crossover
MQL5でカスタムインジケーターを作成する(第4回):デュアルオシレーター搭載Smart WaveTrend Crossover
本記事では、MQL5で「Smart WaveTrend Crossover」と呼ばれるカスタムインジケーターを開発します。このインジケーターは、2つのWaveTrendオシレーターを活用しており、1つはクロスオーバーシグナルの生成、もう1つはトレンドフィルタリングを目的としています。チャネル長、平均期間、移動平均期間といった各種パラメータはカスタマイズ可能です。また、トレンド方向に応じてローソク足を色分け表示し、クロスオーバー時には買いや売りの矢印シグナルを表示します。さらに、トレンド確認の有効化オプションや、色やオフセットなどのビジュアル要素も調整可能です。
ラリー・ウィリアムズの『市場の秘密』(第4回):MQL5における短期的スイングハイとスイングローの自動化
ラリー・ウィリアムズの『市場の秘密』(第4回):MQL5における短期的スイングハイとスイングローの自動化
MQL5を使って、ラリー・ウィリアムズの短期スイングパターンの自動化を習得していきます。このガイドでは、非ランダムな市場構造を活用する、完全に設定可能なエキスパートアドバイザー(EA)を開発します。堅牢なリスク管理と柔軟なエグジットロジックの統合方法も解説し、システマティックな戦略開発とバックテストのための確かな基盤を提供します。
MQL5でカスタムインジケーターを作成する(第3回):扇形と円形によるマルチゲージの強化
MQL5でカスタムインジケーターを作成する(第3回):扇形と円形によるマルチゲージの強化
本記事では、MQL5のゲージ型インジケーターを拡張し、複数のオシレーターに対応できるようにします。列挙型を使うことで、単体表示だけでなく複合表示もユーザーが選択できるようになります。また、基盤となるゲージフレームワークを拡張し、扇形と円形の2つのスタイルを派生クラスとして実装します。円弧、直線、多角形を組み合わせた枠(ケース)の描画により、見た目もより洗練されたものになります。