MQL4とMQL5のプログラム記事

icon

取引戦略をプログラミングするためのMQL5言語を、ほとんどがコミュニティメンバーによって書かれた数多くの公開記事で学びます。記事は統合、テスター、取引戦略等のカテゴリに分けられていて、プログラミングに関連する疑問への解答を素早く見つけることができます。

新着記事をフォローして、フォーラムでディスカッションしてください。

新しい記事を追加
最新 | ベスト
preview
取引におけるニューラルネットワーク:シャープネス低減によるTransformerの効率向上(最終回)

取引におけるニューラルネットワーク:シャープネス低減によるTransformerの効率向上(最終回)

SAMformerは、長期の時系列予測におけるTransformerモデルの主要な欠点、すなわち学習の複雑さや小規模データセットでの汎化性能の低さに対して解決策を提供します。その浅いアーキテクチャとシャープネス認識型最適化により、不適切な局所解に陥ることを防ぎます。本記事では、MQL5を用いたアプローチの実装を続け、実際的な価値を評価していきます。
preview
取引におけるニューラルネットワーク:2次元接続空間モデル(Chimera)

取引におけるニューラルネットワーク:2次元接続空間モデル(Chimera)

この記事では、革新的なChimeraフレームワークについて解説します。Chimeraは二次元状態空間モデルを用い、ニューラルネットワークで多変量時系列を解析する手法です。この方法は、従来手法やTransformerアーキテクチャを上回る低い計算コストで高い精度を実現します実現します。
preview
ParafracおよびParafrac V2オシレーターを使用した取引戦略の開発:シングルエントリーパフォーマンスインサイト

ParafracおよびParafrac V2オシレーターを使用した取引戦略の開発:シングルエントリーパフォーマンスインサイト

本記事では、ParaFracオシレーターとその後継であるV2モデルを取引ツールとして紹介し、これらを用いて構築した3種類の取引戦略を解説します。各戦略をテストおよび最適化し、それぞれの強みと弱みを明らかにします。比較分析によって両モデルの性能差を明確にしました。
preview
利益強化アーキテクチャ:多層型口座保護

利益強化アーキテクチャ:多層型口座保護

このディスカッションでは、積極的な利益目標を追求しながら、壊滅的な損失へのエクスポージャーを最小限に抑えることを目的とした、構造化された多層防御システムを紹介します。本システムの焦点は、取引パイプラインのあらゆるレベルにおいて、攻撃的な売買ロジックと保護的な安全機構を組み合わせることにあります。その狙いは、このEAを「リスクを認識する捕食者」のように設計することです。すなわち、高価値な機会を捉える能力を持ちながらも、突発的な市場ストレスに対して盲目的になることを防ぐための複数の防護層を常に備えている状態を目指します。
preview
円探索アルゴリズム(CSA)

円探索アルゴリズム(CSA)

本記事では、円の幾何学的性質に基づいた新しいメタヒューリスティック最適化アルゴリズム「円探索アルゴリズム(Circle Search Algorithm, CSA)」を紹介します。本アルゴリズムは、最適解を探索するために点を接線に沿って移動させる原理を使用し、大域探索と局所探索のフェーズを組み合わせています。
preview
定量的トレンド分析:Pythonで統計情報を収集する

定量的トレンド分析:Pythonで統計情報を収集する

外国為替市場における定量的トレンド分析とは何でしょうか。本記事では、EURUSD通貨ペアにおけるトレンド、その大きさ、分布に関する統計を収集します。利益を生む取引用エキスパートアドバイザー(EA)の開発に、定量的トレンド分析がどのように役立つかも示します。
preview
Parafracオシレーター:パラボリックとフラクタルインジケーターの組み合わせ

Parafracオシレーター:パラボリックとフラクタルインジケーターの組み合わせ

パラボリックSARとフラクタルインジケーターを組み合わせて、新しいオシレーターベースのインジケーターを作成する方法について説明します。両ツールの独自の強みを統合することにより、トレーダーはより洗練された効果的な取引戦略の開発を目指すことができます。
preview
中心力最適化(CFO)アルゴリズム

中心力最適化(CFO)アルゴリズム

本記事では、重力の法則にヒントを得た中心力最適化(Central Force Optimization, CFO)アルゴリズムを紹介します。このアルゴリズムは、物理的引力の原理を用いて最適化問題を解決する手法を探究するものです。ここでは、「より重い」解が、成功度の低い解を引き寄せる仕組みを扱います。
preview
古典的な戦略を再構築する(第13回):クロスオーバー戦略を新たな次元へ(その2)

古典的な戦略を再構築する(第13回):クロスオーバー戦略を新たな次元へ(その2)

本記事では、移動平均クロスオーバー戦略に対してさらなる改善を加え、ラグをより実用的で信頼性の高い水準まで低減する方法について検討します。データサイエンスの知見を活用しながら議論を進めます。一般に、データを高次元へ射影することで、機械学習モデルの性能が向上する場合があることはよく知られています。本記事では、この考え方がトレーダーにとって実際に何を意味するのかを示し、MetaTrader 5ターミナルを用いてどのように活用できるかを説明します。
preview
ログレコードをマスターする(第10回):抑制機能を実装してログの再表示を防ぐ

ログレコードをマスターする(第10回):抑制機能を実装してログの再表示を防ぐ

Logifyライブラリにおけるログ抑制システムを作成しました。本記事では、CLogifySuppressionクラスがどのようにコンソールのノイズを低減するかについて詳しく説明します。このクラスは、繰り返しや無関係なメッセージを回避するための設定可能なルールを適用します。また、外部設定フレームワーク、検証機構、包括的なテストについても取り上げ、ボットやインジケーター開発時のログ取得における堅牢性と柔軟性を確保しています。
preview
MQL5における単変量時系列への動的モード分解の適用

MQL5における単変量時系列への動的モード分解の適用

動的モード分解(DMD: Dynamic Mode Decomposition)は、主に高次元データセットに対して用いられる手法です。本稿では、DMDを単変量の時系列に適用し、その特性把握や予測に活用できることを示します。その過程で、MQL5に搭載されているDMDの実装、とりわけ新しい行列メソッドであるDynamicModeDecomposition()について詳しく解説します。
preview
機械学習の限界を克服する(第6回):効果的なメモリクロスバリデーション

機械学習の限界を克服する(第6回):効果的なメモリクロスバリデーション

本記事では、時系列クロスバリデーションにおける従来のアプローチと、その前提に疑問を投げかける新しい考え方を比較します。特に、市場環境が時間とともに変化するという点を十分に扱えていないという、古典的手法の弱点に焦点を当てます。これらの問題を踏まえ、Effective Memory Cross-Validation (EMCV)という、ドメインを意識した検証手法を紹介します。このアプローチは、「過去データは多ければ多いほど良い」という長年の常識を見直すものです。
preview
共和分株式による統計的裁定取引(第6回):スコアリングシステム

共和分株式による統計的裁定取引(第6回):スコアリングシステム

本記事では、共和分株式の統計的裁定取引に基づく平均回帰戦略のスコアリングシステムを提案します。流動性や取引コストから、共和分ベクトルの数(ランク)や回帰までの時間に至るまでの基準を示しつつ、時間足やルックバック期間のような戦略的基準も考慮し、スコアランキングを正しく評価する前に検討しています。バックテストの再現に必要なファイルも提供され、その結果についてもコメントしています。
preview
初級から中級まで:定義(II)

初級から中級まで:定義(II)

本記事では、前回に引き続き#defineディレクティブについて理解を深めていきますが、今回はその第2の使用形態、すなわちマクロの作成に焦点を当てます。このテーマはやや複雑であるため、これまで学習を進めてきたアプリケーションを題材として取り上げながら説明していきます。この記事も楽しんでいただけたら幸いです。
preview
多通貨エキスパートアドバイザーの開発(第23回):自動プロジェクト最適化段階のコンベアの配置(II)

多通貨エキスパートアドバイザーの開発(第23回):自動プロジェクト最適化段階のコンベアの配置(II)

1つの最終EAで使用される取引戦略を自動的かつ定期的に最適化するためのシステムの構築を目指します。システムは進化するにつれてますます複雑になるため、時折全体を俯瞰し、ボトルネックや非効率な解決策を特定する必要があります。
preview
取引におけるニューラルネットワーク:ResNeXtモデルに基づくマルチタスク学習

取引におけるニューラルネットワーク:ResNeXtモデルに基づくマルチタスク学習

ResNeXtに基づくマルチタスク学習フレームワークは、金融データの高次元性、非線形性、時間依存性を考慮しながら分析を最適化します。グループ畳み込みと専用ヘッドの使用により、モデルは入力データから重要な特徴を効果的に抽出することができます。
preview
MQL5におけるパイプライン

MQL5におけるパイプライン

本記事では、機械学習におけるデータ準備工程の中で、重要性が急速に高まっているデータ前処理パイプラインを取り上げます。前処理パイプラインとは、生データをモデルに入力する前に通す一連の変換ステップを整理し、効率化したものです。一見地味な作業ですが、前処理(特にスケーリング)は学習時間や実行コストを削減するだけでなく、モデルの汎化性能を大きく左右します。本記事ではscikit-learnの前処理関数を中心に扱います。MQL5ウィザードはここでは使用しませんが、後続の記事で取り上げる予定です。
preview
取引におけるニューラルネットワーク:2次元接続空間モデル(最終回)

取引におけるニューラルネットワーク:2次元接続空間モデル(最終回)

革新的なChimeraフレームワークの探求を続けます。このフレームワークは、ニューラルネットワーク技術を用いて多次元時系列を解析する二次元状態空間モデル(2D-SSM)です。この手法は、高い予測精度と低い計算コストを両立します。
preview
MQL5でのテーブルモデルの実装:MVC概念の適用

MQL5でのテーブルモデルの実装:MVC概念の適用

本記事では、MQL5におけるテーブルモデルの開発過程を、MVC (Model-View-Controller)アーキテクチャパターンを用いて解説します。データロジック、表示、制御を分離することで、構造化され柔軟かつ拡張可能なコードを実現します。テーブルモデルを構築するためのクラス設計や、データ格納のためのリンクリストの使用方法も取り上げます。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する(第12回):行列分解を用いた線形分類器の構築

MQL5で自己最適化エキスパートアドバイザーを構築する(第12回):行列分解を用いた線形分類器の構築

本記事では、アルゴリズム取引における行列分解の強力な役割、特にMQL5アプリケーション内での活用について探ります。回帰モデルからマルチターゲット分類器まで、実際の例を通して、これらの手法が組み込みのMQL5関数を使ってどれほど容易に統合できるかを示します。価格の方向性を予測する場合でも、インジケーターの挙動をモデル化する場合でも、このガイドは行列手法を用いたインテリジェントな取引システム構築の強固な基盤を提供します。
preview
MQL5でのデータベースの簡素化(第1回):データベースとSQL入門

MQL5でのデータベースの簡素化(第1回):データベースとSQL入門

MQL5言語のネイティブ関数を用いたデータベース操作について解説します。テーブルの作成、データの挿入、更新、削除から、データのインポートとエクスポートまで、すべてサンプルコード付きで紹介します。本記事は、データアクセスの内部メカニズムを理解するための確固たる基盤を提供し、MQL5でORMを構築する際の土台となります。
preview
取引におけるニューラルネットワーク:階層型ダブルタワーTransformer(最終回)

取引におけるニューラルネットワーク:階層型ダブルタワーTransformer(最終回)

複雑な多変量時系列の分析および予測を目的に設計された、Hidformer階層型ダブルタワーTransformerモデルの構築を引き続き進めます。本記事では、これまでに着手した作業を論理的な結論へと導き、実際の履歴データを用いてモデルを検証します。
preview
取引におけるニューラルネットワーク:ResNeXtモデルに基づくマルチタスク学習(最終回)

取引におけるニューラルネットワーク:ResNeXtモデルに基づくマルチタスク学習(最終回)

ResNeXtに基づくマルチタスク学習フレームワークの探求を続けます。このフレームワークは、モジュール性が高く、計算効率に優れ、データ中の安定したパターンを特定できることが特徴です。単一のエンコーダーと専門化された「ヘッド」を使用することで、モデルの過学習のリスクを減らし、予測の精度を向上させます。
preview
リプレイシステムの開発(第78回):新しいChart Trade(V)

リプレイシステムの開発(第78回):新しいChart Trade(V)

本記事では、受信側コードの一部の実装方法について解説します。ここでは、プロトコルの相互作用をテストし理解するためのエキスパートアドバイザー(EA)を実装します。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
preview
取引におけるニューラルネットワーク:暗号通貨市場向けメモリ拡張コンテキスト認識学習(MacroHFT)

取引におけるニューラルネットワーク:暗号通貨市場向けメモリ拡張コンテキスト認識学習(MacroHFT)

MacroHFTフレームワークは、マクロ経済データと適応型エージェントを用いて、高頻度暗号資産取引の意思決定を改善するために、コンテキスト認識型強化学習とメモリを応用するものです。
preview
レストラン経営達人アルゴリズム(SRA)

レストラン経営達人アルゴリズム(SRA)

レストラン経営達人アルゴリズム(SRA)は、レストラン経営の原則に着想を得た革新的な最適化手法です。従来のアプローチとは異なり、SRAは弱い解を破棄するのではなく、成功した解の要素と組み合わせて改善します。このアルゴリズムは競争力のある結果を示し、最適化問題における探索と活用のバランスに関する新しい視点を提供します。
preview
MQL5における市場ポジショニング戦略の体系(第2回): Nvidia向けマルチパターンのビット単位学習

MQL5における市場ポジショニング戦略の体系(第2回): Nvidia向けマルチパターンのビット単位学習

管理可能なテスト期間において、特定の資産を特定の取引方向で検証する市場ポジショニングに関する新連載を継続します。前回の記事では、Nvidia Corp (NVDA)の株を対象に、RSIとDeMarkerオシレーターの組み合わせから5つのシグナルパターンを検証しました。本記事では残りの5パターンを取り上げ、さらに複数パターンの組み合わせにも踏み込みます。これには、10パターンすべての自由な組み合わせや、特定のペアのみを組み合わせる特殊パターンも含まれます。
preview
共和分株式による統計的裁定取引(第7回):スコアリングシステム2

共和分株式による統計的裁定取引(第7回):スコアリングシステム2

平均回帰戦略、特に共和分に基づく統計的裁定取引において取引対象となる株式バスケットの選定に使用する、追加の2つのスコアリング基準について解説します。前回の記事では、流動性および共和分ベクトルの強度、ならびに時間足とルックバック期間という戦略的基準を紹介しました。本記事ではそれを補完する形で、共和分ベクトルの安定性および平均回帰に要する時間、いわゆる半減期を取り上げます。また、新しいフィルタを適用したバックテスト結果の考察と、その再現に必要なファイルも提供します。
preview
初級から中級まで:構造体(II)

初級から中級まで:構造体(II)

本記事では、MQL5のようなプログラミング言語において構造体が存在する理由を考察します。また、構造体を用いて関数や手続き間で値を受け渡すことが有効な場合と、必ずしもそうではない場合がある理由についても解説します。
preview
MQL5のテーブルモデルに基づくテーブルクラスとヘッダクラス:MVC概念の適用

MQL5のテーブルモデルに基づくテーブルクラスとヘッダクラス:MVC概念の適用

これは、MQL5でのテーブルモデル実装をMVC (Model-View-Controller)アーキテクチャパラダイムに基づいて解説する記事の第2部です。本記事では、前回作成したテーブルモデルをもとに、テーブルクラスおよびテーブルヘッダの開発について説明します。開発したクラスは、次回の記事で扱うビューおよびコントローラーコンポーネントの実装の基礎となります。
preview
MQL5取引ツール(第9回):EA向けスクロール可能ガイド付き初回実行ユーザー設定ウィザードの開発

MQL5取引ツール(第9回):EA向けスクロール可能ガイド付き初回実行ユーザー設定ウィザードの開発

本記事では、エキスパートアドバイザー(EA)向けのMQL5初回実行ユーザー設定ウィザードを開発します。このウィザードはスクロール可能なガイド、インタラクティブなダッシュボード、動的テキストフォーマット、ボタンやチェックボックスなどの視覚的コントロールを備えており、ユーザーが指示に沿って操作し、取引パラメータを効率的に設定できるようにします。ユーザーは、初回実行時にプログラムの内容と操作方法を把握でき、オリエンテーションモデルとして利用できます。
preview
MQL5でカスタムインジケーターを作成する(第1回):Canvasグラデーションを使用したピボットベースのトレンドインジケーターの構築

MQL5でカスタムインジケーターを作成する(第1回):Canvasグラデーションを使用したピボットベースのトレンドインジケーターの構築

本記事では、ユーザーが定義した期間にわたって高速ピボットラインと低速ピボットラインを計算し、これらのラインに対する価格の位置に基づいてトレンドの方向を検出し、矢印でトレンドの開始を知らせるとともに、必要に応じて現在のバーを超えてラインを延長するピボットベースのトレンドインジケーターを、MQL5で作成します。このインジケーターは、カスタマイズ可能な色で表示される個別の上昇線と下降線、トレンドの変化に応じて色が変わる点線の高速線、そしてトレンド領域の強調表示を強化するためのCanvasオブジェクトを使用した、線間のオプションのグラデーション塗りつぶしによる動的な可視化をサポートしています。
preview
初級から中級まで:構造体(I)

初級から中級まで:構造体(I)

本日は、構造体について、よりシンプルで実践的、かつ無理のない形で学び始めます。構造体は、構造化プログラミングであろうとなかろうと、プログラミングの基礎を成す要素のひとつです。多くの人は、構造体を単なるデータの集合だと考えがちですが、実際にはそれ以上の役割を持っています。本記事では、この新しい世界を、できるだけ分かりやすく、体系的に探っていきます。
preview
多通貨エキスパートアドバイザーの開発(第24回):新しい戦略の追加(I)

多通貨エキスパートアドバイザーの開発(第24回):新しい戦略の追加(I)

本記事では、作成済みの自動最適化システムに新しい戦略を連携する方法を見ていきます。どのようなEAを作成する必要があるのか、EAライブラリのファイルを変更せずにできるのか、必要な変更を最小限に抑えられるかを確認してみましょう。
preview
共和分株式による統計的裁定取引(第4回):リアルタイムモデル更新

共和分株式による統計的裁定取引(第4回):リアルタイムモデル更新

本記事では、共和分関係にある株式バスケットを対象とした、シンプルでありながら包括的な統計的アービトラージのパイプラインについて解説します。データのダウンロードと保存を行うPythonスクリプト、相関検定、共和分検定、定常性検定、さらにデータベース更新用のMetatrader 5サービスの実装およびそれに対応するエキスパートアドバイザー(EA)も含まれています。また、いくつかの設計上の判断については、参考情報および実験の再現性向上のために本記事に記録しています。
preview
MQL5における市場ポジショニング戦略の体系(第1回):NVIDIAのビットワイズ戦略研究

MQL5における市場ポジショニング戦略の体系(第1回):NVIDIAのビットワイズ戦略研究

これまでの「MQL5ウィザード」シリーズで積み上げてきた取り組みを基盤とし、それをさらに発展させる新連載を開始します。本連載は、システムトレードおよび戦略テストへのアプローチを一段引き上げることを目的としています。単一タイプのポジションのみを保有するように設計されたエキスパートアドバイザーに焦点を当てます。主にロングポジションのみを扱う設計です。市場トレンドを一方向に限定することで、分析が簡素化され、戦略の複雑さが軽減されます。また、特に為替以外の資産を扱う場合には、重要な洞察が得られる可能性があります。したがって本連載では、株式やその他の非為替資産において、このアプローチが有効かどうかを検証していきます。買い専用戦略は、スマートマネーや機関投資家の戦略と相関することが多いため、その実用性を体系的に探究します。
preview
ニューロボイド最適化アルゴリズム(NOA)

ニューロボイド最適化アルゴリズム(NOA)

新しい生体模倣型最適化メタヒューリスティックであるNOA (Neuroboids Optimization Algorithm)は、集合知とニューラルネットワークの原理を組み合わせた手法です。従来の方法とは異なり、このアルゴリズムは自己学習型の「ニューロボイド」集団を使用し、それぞれが独自のニューラルネットワークを持ち、探索戦略をリアルタイムで適応させます。本記事では、アルゴリズムのアーキテクチャ、エージェントの自己学習メカニズム、そしてこのハイブリッドアプローチを複雑な最適化問題に応用する可能性について解説します。
preview
プライスアクション分析ツールキットの開発(第49回):トレンド系、モメンタム系、ボラティリティ系インジケーターを1つのMQL5システムに統合する

プライスアクション分析ツールキットの開発(第49回):トレンド系、モメンタム系、ボラティリティ系インジケーターを1つのMQL5システムに統合する

Multi Indicator Handler EAでMetaTrader 5のチャートをシンプルにしましょう。このインタラクティブなダッシュボードは、トレンド系、モメンタム系、ボラティリティ系インジケーターを1つのリアルタイムパネルに統合します。用途に応じてプロファイルを瞬時に切り替え、ワンクリックで表示と非表示を切り替えてチャートを整理し、プライスアクションに集中できます。本記事では、これをMQL5で自作してカスタマイズする手順をステップバイステップで解説します。
preview
多通貨エキスパートアドバイザーの開発(第22回):設定のホットスワップへの移行を開始する

多通貨エキスパートアドバイザーの開発(第22回):設定のホットスワップへの移行を開始する

定期的な最適化を自動化するのであれば、取引口座上ですでに稼働しているEAの設定を自動更新することについても検討する必要があります。これにより、ストラテジーテスター内でエキスパートアドバイザー(EA)を実行しながら、単一の実行の中でその設定を変更できるようにする必要があります。
preview
取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(最終回)

取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(最終回)

予測符号化と強化学習アルゴリズムを組み合わせた金融時系列分析用のハイブリッド取引システム「StockFormer」の検討を引き続きおこないます。本システムは、複雑なパターンや資産間の相互依存関係を捉えることを可能にするDiversified Multi-Head Attention (DMH-Attn)機構を備えた、3つのTransformerブランチに基づいています。前回は、フレームワークの理論的な側面に触れ、DMH-Attn機構を実装しました。今回は、モデルのアーキテクチャと学習について解説します。