MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
知っておくべきMQL5ウィザードのテクニック(第68回): コサインカーネルネットワークでTRIXとWPRのパターンを使用する

知っておくべきMQL5ウィザードのテクニック(第68回): コサインカーネルネットワークでTRIXとWPRのパターンを使用する

前回の記事では、TRIXとWilliams Percent Range (WPR)の指標ペアを紹介しましたが、今回はこの指標ペアを機械学習で拡張する方法について検討します。TRIXとWPRは、トレンド指標とサポート/レジスタンス補完ペアとして組み合わせられます。本機械学習アプローチでは、畳み込みニューラルネットワーク(CNN)を使用し、予測精度を微調整する際にコサインカーネルをアーキテクチャに組み込んでいます。これは常に、MQL5ウィザードと連携してエキスパートアドバイザー(EA)を組み立てるカスタムシグナルクラスファイル内で行われます。。
preview
取引システムの構築(第4回):ランダム決済が取引の期待値に与える影響

取引システムの構築(第4回):ランダム決済が取引の期待値に与える影響

多くのトレーダーは、エントリーの基準には忠実であっても、取引管理で苦労する状況を経験しています。正しいセットアップであっても、取引がテイクプロフィット(利確)やストップロス(損切り)の水準に達する前にパニックで決済してしまうといった感情的な判断は、資産曲線を下向きにする原因となります。では、トレーダーはこの問題をどう克服し、結果を改善できるのでしょうか。本記事では、ランダムな勝率を用いてこの問題を検証し、モンテカルロシミュレーションを通じて、トレーダーがオリジナルの目標に到達する前に合理的な水準で利益を確定することで戦略を洗練させる方法を示します。
preview
MQL5での取引戦略の自動化(第43回):適応型線形回帰チャネル戦略

MQL5での取引戦略の自動化(第43回):適応型線形回帰チャネル戦略

本記事では、ユーザー定義期間にわたって回帰直線と標準偏差チャネルを自動的に計算し、明確なトレンドを確認するために傾きが最小閾値を超えた場合にのみ有効化され、さらに価格がチャネル幅の設定可能な割合を超えてブレイクアウトした際にチャネルを動的に再生成または延長する、適応型リニア回帰チャネルシステムをMQL5で実装します。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する(第8回):複数戦略分析(2) - 加重投票方策

MQL5で自己最適化エキスパートアドバイザーを構築する(第8回):複数戦略分析(2) - 加重投票方策

本記事では、アンサンブル内で最適な戦略数を決定することがどれほど複雑な課題であるか、その解決がMetaTrader 5の遺伝的アルゴリズム最適化ツールを用いることで容易になるかを検討します。さらに、バックテストおよび最適化の高速化を目的として、MQL5クラウドも主要なリソースとして活用します。これらの議論を通じて、初期のアンサンブル結果に基づき、取引戦略を評価し、改善するための統計モデルを開発するための基盤を整えることを目的としています。
preview
リプレイシステムの開発(第50回):物事は複雑になる(II)

リプレイシステムの開発(第50回):物事は複雑になる(II)

チャートIDの問題を解決すると同時に、ユーザーが希望する資産の分析とシミュレーションに個人用テンプレートを使用できるようにする機能を提供し始めます。ここで提示される資料は教育目的のみであり、提示される概念の学習および習得以外の目的には決して適用されないものとします。
preview
リプレイシステムの開発(第74回):新しいChart Trade(I)

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

この記事では、Chart Tradeに関する本連載の最後に示したコードを修正します。これらの変更は、現在のリプレイ/シミュレーションシステムのモデルにコードを適合させるために必要です。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
preview
取引におけるニューラルネットワーク:時系列予測のためのTransformerの最適化(LSEAttention)

取引におけるニューラルネットワーク:時系列予測のためのTransformerの最適化(LSEAttention)

LSEAttentionフレームワークは、Transformerアーキテクチャの改善を提供します。この手法は、特に長期の多変量時系列予測のために設計されました。提案されたアプローチは、従来のTransformerでよく遭遇するエントロピーの崩壊や学習の不安定性の問題を解決するために応用可能です。
preview
データサイエンスとML(第38回):外国為替市場におけるAI転移学習

データサイエンスとML(第38回):外国為替市場におけるAI転移学習

AIの画期的な進歩、たとえばChatGPTや自動運転車などは、単独のモデルから生まれたわけではなく、複数のモデルや共通の分野から得られた累積的な知識を活用することで実現しています。この「一度学習した知識を他に応用する」というアプローチは、アルゴリズム取引におけるAIモデルの変革にも応用可能です。本記事では、異なる金融商品の情報を活用し、他の銘柄における予測精度向上に役立てる方法として、転移学習の活用方法について解説します。
preview
知っておくべきMQL5ウィザードのテクニック(第71回):MACDとOBVのパターンの使用

知っておくべきMQL5ウィザードのテクニック(第71回):MACDとOBVのパターンの使用

移動平均収束拡散法(MACD)オシレーターとオンバランスボリューム(OBV)オシレーターは、MQL5のエキスパートアドバイザー(EA)内で併用できるもう一つの指標ペアです。本連載における慣例どおり、この組み合わせも補完関係にあり、MACDがトレンドを確認し、OBVが出来高を検証します。MQL5ウィザードを用いて、この2つが持つ潜在力を構築、検証します。
preview
初心者からエキスパートへ:MQL5を使ったアニメーションニュース見出し(III)-インジケーターインサイト

初心者からエキスパートへ:MQL5を使ったアニメーションニュース見出し(III)-インジケーターインサイト

本記事では、News Headline EAをさらに進化させるために、専用の「インジケーターインサイトレーン」を導入します。これは、RSI、MACD、ストキャスティクス、CCIなどの主要インジケーターから生成されるテクニカルシグナルを、チャート上にコンパクトにまとめて表示する仕組みです。この方法により、MetaTrader 5ターミナルで複数のインジケーターウィンドウを開く必要がなくなり、作業スペースをすっきりと保つことができます。さらに、MQL5のAPIを活用してインジケーターデータをバックグラウンドで取得することで、カスタムロジックを使ったリアルタイムの市場分析や可視化が可能になります。本記事では、MQL5でインジケーターデータを操作し、チャート上の単一水平レーンに、知的で省スペースなスクロール式インサイトシステムを作成する方法を詳しく解説します。
preview
初心者からエキスパートへ:MQL5を使用したアニメーションニュースヘッドライン(VI) - ニュース取引のための指値注文戦略

初心者からエキスパートへ:MQL5を使用したアニメーションニュースヘッドライン(VI) - ニュース取引のための指値注文戦略

本記事では、ニュースを表示するだけでなく実際に取引を実行できるよう、EA(エキスパートアドバイザー)の機能拡張に焦点を当てます。MQL5上で自動売買の実装方法を解説し、「News Headline EA」を完全に反応的な取引システムへと発展させていきます。EAは、その豊富な機能により、アルゴリズム開発者にとって非常に強力なツールです。これまでの記事では、ニュースおよび経済指標カレンダーイベントの可視化ツールを中心に開発し、AIインサイトレーンやテクニカル指標分析を統合してきました。
preview
プライスアクション分析ツールキットの開発(第36回):MetaTrader 5マーケットストリームへ直接アクセスするPython活用法

プライスアクション分析ツールキットの開発(第36回):MetaTrader 5マーケットストリームへ直接アクセスするPython活用法

MetaTrader 5ターミナルの潜在能力を最大限に引き出すために、Pythonのデータサイエンスエコシステムと公式のMetaTrader 5クライアントライブラリを活用する方法を紹介します。本記事では、認証をおこない、ライブティックおよび分足データを直接Parquetストレージにストリーミングする手法を解説し、taやProphetを用いた高度な特徴量エンジニアリングをおこない、時間依存型の勾配ブースティングモデルを学習させる方法を示します。その後、軽量なFlaskサービスを展開して、リアルタイムで取引シグナルを提供します。ハイブリッドクオンツフレームワークを構築する場合でも、エキスパートアドバイザー(EA)に機械学習を組み込む場合でも、データ駆動型アルゴリズム取引のための堅牢なエンドツーエンドパイプラインを習得できます。
preview
リプレイシステムの開発(第75回):新しいChart Trade(II)

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

この記事では、C_ChartFloatingRADクラスについて説明します。これはChart Tradeを機能させるための要となる部分です。ただし、解説はこれで終わりではありません。本記事の内容はかなり広範かつ深い理解を必要とするため、続きは次回の記事で補完します。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
preview
効率的な最適化のバックボーンとしての母集団アルゴリズムの基本クラス

効率的な最適化のバックボーンとしての母集団アルゴリズムの基本クラス

この記事は、最適化手法の適用を単純化するために、様々な母集団アルゴリズムを1つのクラスにまとめるというユニークな研究の試みです。このアプローチは、ハイブリッド型を含む新しいアルゴリズム開発の機会を開くだけでなく、普遍的な基本テストスタンドの構築にもつながります。このスタンドは、特定のタスクに応じて最適なアルゴリズムを選択するための重要なツールとなります。
preview
知っておくべきMQL5ウィザードのテクニック(第64回):ホワイトノイズカーネルでDeMarkerとEnvelope Channelsのパターンを活用する

知っておくべきMQL5ウィザードのテクニック(第64回):ホワイトノイズカーネルでDeMarkerとEnvelope Channelsのパターンを活用する

DeMarkerオシレーターとEnvelopesインジケーターは、エキスパートアドバイザー(EA)を開発するときに組み合わせることができるモメンタムおよびサポート/レジスタンスツールです。前回の記事では、機械学習を加えて、これらのインジケーターのペアを紹介しました。ホワイトノイズカーネルを使用してこれら2つのインジケーターからのベクトル化されたシグナルを処理する回帰型ニューラルネットワークを使用しています。これは、MQL5ウィザードと連携してエキスパートアドバイザー(EA)を組み立てるカスタムシグナルクラスファイルで実行されます。
preview
プライスアクション分析ツールキットの開発(第26回):Pin Bar, Engulfing Patterns and RSI Divergence (Multi-Pattern) Tool

プライスアクション分析ツールキットの開発(第26回):Pin Bar, Engulfing Patterns and RSI Divergence (Multi-Pattern) Tool

実践的なプライスアクションツールの開発を目的として、本記事ではピンバーと包み足を検出するEAの作成について解説します。各シグナルを生成する前に、RSIのダイバージェンスを確認のトリガーとして使用します。
preview
MQL5からDiscordへのメッセージの送信、Discord-MetaTrader 5ボットの作成

MQL5からDiscordへのメッセージの送信、Discord-MetaTrader 5ボットの作成

Telegramと同様に、Discordもその通信APIを使用してJSON形式の情報やメッセージを受信することができます。本記事では、MetaTrader5からDiscordの取引コミュニティに取引シグナルやアップデートを送信するためにDiscord APIをどのように利用できるかを探っていきます。
preview
初級から中級へ:変数(I)

初級から中級へ:変数(I)

多くの初心者プログラマーは、自分のコードが期待どおりに動作しない理由を理解するのに苦労します。コードを正しく機能させるためには、さまざまな要素が関わります。ただ関数や操作を組み合わせるだけでは、コードが適切に動作するとは限りません。今日は、単にコードをコピー&ペーストするのではなく、実際に正しくコードを書く方法を学んでみましょう。ここで提供される資料は教育目的のみに使用されるべきです。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを閲覧することは避けてください。
preview
取引におけるニューラルネットワーク:統合軌道生成モデル(UniTraj)

取引におけるニューラルネットワーク:統合軌道生成モデル(UniTraj)

エージェントの行動を理解することはさまざまな分野で重要ですが、ほとんどの手法は特定のタスク(理解、ノイズ除去、予測)に焦点を当てており、そのため実際のシナリオでは効果的に活用できないことが多いです。この記事では、さまざまな問題を解決するために適応可能なモデルについて説明します。
preview
MQL5でスマート取引マネージャーを構築する:損益分岐点、トレーリングストップ、部分決済を自動化する

MQL5でスマート取引マネージャーを構築する:損益分岐点、トレーリングストップ、部分決済を自動化する

「スマート取引マネージャー」エキスパートアドバイザー(EA)をMQL5で構築し、損益分岐点へのストップロス移動、トレーリングストップ、部分決済などの機能で取引管理を自動化する方法を学びましょう。これは、時間を節約し、取引の一貫性を向上させたいトレーダー向けの、実践的かつステップバイステップのガイドです。
preview
プライスアクション分析ツールキットの開発(第46回):MQL5におけるスマートな可視化を備えたインタラクティブフィボナッチリトレースメントEAの設計

プライスアクション分析ツールキットの開発(第46回):MQL5におけるスマートな可視化を備えたインタラクティブフィボナッチリトレースメントEAの設計

フィボナッチツールは、テクニカル分析で最も人気のあるツールのひとつです。本記事では、価格の動きに応じて動的に反応するリトレースメントおよびエクステンションレベルを描画し、リアルタイムアラート、スタイリッシュなライン、ニュース風のスクロールヘッドラインを提供するインタラクティブフィボナッチEAの作成方法をご紹介します。このEAのもうひとつの大きな利点は柔軟性です。チャート上で高値(A)と安値(B)のスイング値を直接入力できるため、分析したい価格範囲を正確にコントロールできます。
preview
カスタム口座パフォーマンス行列インジケーターの開発

カスタム口座パフォーマンス行列インジケーターの開発

このインジケーターは、口座エクイティ、損益、ドローダウンをリアルタイムで監視し、パフォーマンスダッシュボードとして可視化することで、規律の維持を促す役割を果たします。トレーダーが取引の一貫性を保ち、過剰取引を避け、自己勘定取引会社評価チャレンジ(プロップファームチャレンジ)のルールを遵守するための支援ツールとして機能します。
preview
初心者からエキスパートへ:ローソク足のヒゲを読み解く

初心者からエキスパートへ:ローソク足のヒゲを読み解く

この議論では、ローソク足のヒゲに隠された価格変動の裏側を解明する一歩を踏み出します。Market Periods Synchronizerにヒゲ可視化機能を統合することで、ツールの分析深度とインタラクティビティを向上させます。このアップグレードされたシステムにより、トレーダーは下位時間足チャート上で上位時間足の価格拒否を直接可視化でき、これまでヒゲの陰に隠されていた詳細な構造を明らかにできます。
preview
Connexusのクライアント(第7回):クライアント層の追加

Connexusのクライアント(第7回):クライアント層の追加

この記事では、Connexusライブラリの開発を続けます。この章では、リクエストの送信と注文の受信を担当するCHttpClientクラスを構築します。また、モックの概念についても取り上げ、ライブラリをWebRequest関数から切り離すことで、ユーザーの柔軟性を高めます。
preview
MQL5で取引管理者パネルを作成する(第9回):コード編成(III)コミュニケーションモジュール

MQL5で取引管理者パネルを作成する(第9回):コード編成(III)コミュニケーションモジュール

MQL5インターフェイス設計における最新の進展を、再設計されたコミュニケーションパネルの公開とともに詳しく解説します。また、モジュール化の原則に基づいて新しい管理パネルを構築するシリーズも引き続き展開していきます。この記事では、CommunicationsDialogクラスを段階的に開発し、それをDialogクラスから継承する方法を丁寧に解説します。さらに、開発には配列およびListViewクラスを活用します。MQL5開発スキルを高めるための実用的な知見を得るために、ぜひ記事を読み、コメント欄でディスカッションにご参加ください。
preview
IBMの量子コンピュータを使ってすべての価格変動パターンを解析する

IBMの量子コンピュータを使ってすべての価格変動パターンを解析する

IBMの量子コンピュータを使用してすべての価格変動オプションを発見します。まるでSFの話のようですが、これが取引における量子コンピューティングの世界です。
preview
FX裁定取引:合成通貨の動きとその平均回帰の分析

FX裁定取引:合成通貨の動きとその平均回帰の分析

本記事では、PythonおよびMQL5を用いて合成通貨の動きを分析し、現在のFX裁定取引の実現可能性について検討します。また、合成通貨を分析するための既製Pythonコードを紹介するとともに、FXにおける合成通貨の概念についても詳しく解説します。
preview
MQL5での取引戦略の自動化(第32回):プライスアクションに基づくファイブドライブハーモニックパターンシステムの作成

MQL5での取引戦略の自動化(第32回):プライスアクションに基づくファイブドライブハーモニックパターンシステムの作成

本記事では、MQL5においてピボットポイントとフィボナッチ比率に基づいて強気、弱気双方のファイブドライブ(5-0)ハーモニックパターンを識別し、ユーザーが選択できるカスタムエントリー、ストップロス、テイクプロフィット設定を用いて取引を実行するファイブドライブパターンシステムを開発します。また、A-B-C-D-E-Fパターン構造やエントリーレベルを表示するために、三角形やトレンドラインなどのチャートオブジェクトを使った視覚的フィードバックでトレーダーの洞察力を高めます。
preview
MQL5入門(第25回):チャートオブジェクトで取引するEAの構築(II)

MQL5入門(第25回):チャートオブジェクトで取引するEAの構築(II)

本記事では、チャートオブジェクト、特にトレンドラインと連携するエキスパートアドバイザー(EA)を構築し、ブレイクアウトおよび反転の取引機会を検出し、実行する方法を解説します。EAが有効なシグナルをどのように判定するのか、取引頻度をどのように制御するのか、そしてユーザーが選択した取引戦略との一貫性をどのように維持するのかを学ぶことができます。
preview
Connexus Observer(第8回):リクエストObserverの追加

Connexus Observer(第8回):リクエストObserverの追加

連載「Connexusライブラリ」の最終回では、Observerパターンの実装に加え、ファイルパスやメソッド名に関する重要なリファクタリングについて解説します。本連載を通じて、複雑なアプリケーションにおけるHTTP通信を簡素化することを目的としたConnexusの開発全体を取り上げました。
preview
金融モデリングにおける合成データのための敵対的生成ネットワーク(GAN)(第2回):テスト用の合成シンボルの作成

金融モデリングにおける合成データのための敵対的生成ネットワーク(GAN)(第2回):テスト用の合成シンボルの作成

この記事では、敵対的生成ネットワーク(GAN)を使用して合成シンボルを作成し、EURUSDなどの実際の市場商品の挙動を模倣した現実的な金融データを生成します。GANモデルは、過去の市場データからパターンやボラティリティを学習し、同様の特性を持つ合成価格データを生成します。
preview
ダイナミックスイングアーキテクチャ:スイングから自動売買までの市場構造認識

ダイナミックスイングアーキテクチャ:スイングから自動売買までの市場構造認識

本記事では、市場のスイングを高精度で捉え、自動売買を実現する完全自動化MQL5システムを紹介します。従来の固定ローソク足数に基づくスイングインジケーターとは異なり、このシステムは進行中の市場構造に動的に適応し、スイングハイおよびスイングローをリアルタイムで検出します。これにより、形成されつつあるトレンドの値動きを的確に捉え、取引機会を逃さず捕捉することが可能です。
preview
データサイエンスとML(第40回):機械学習データにおけるフィボナッチリトレースメントの利用

データサイエンスとML(第40回):機械学習データにおけるフィボナッチリトレースメントの利用

フィボナッチリトレースメントはテクニカル分析で人気のツールであり、トレーダーが潜在的な反転ゾーンを特定するのに役立ちます。本記事では、これらのリトレースメントレベルを機械学習モデルの目的変数に変換し、この強力なツールを使用して市場をより深く理解できるようにする方法について説明します。
preview
MQL5入門(第24回):チャートオブジェクトで取引するEAの構築

MQL5入門(第24回):チャートオブジェクトで取引するEAの構築

本記事では、チャート上に描かれたサポートラインやレジスタンスラインを検出し、それに基づいて自動で取引を実行するエキスパートアドバイザー(EA)の作成方法を解説します。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する(第10回):行列分解

MQL5で自己最適化エキスパートアドバイザーを構築する(第10回):行列分解

行列分解は、データの特性を理解するために用いられる数学的手法です。行と列で整理された大規模な市場データに行列分解を適用することで、市場のパターンや特性を明らかにすることができます。行列分解は非常に強力なツールであり、本記事ではMetaTrader 5のターミナル内でMQL5 APIを活用し、市場データをより深く分析する方法を紹介します。
preview
データサイエンスとML(第39回):ニュース × 人工知能、それに賭ける価値はあるか

データサイエンスとML(第39回):ニュース × 人工知能、それに賭ける価値はあるか

ニュースは金融市場を動かす力を持っており、特に非農業部門雇用者数(NFP)のような主要指標の発表は大きな影響を与えます。私たちは、単一のヘッドラインが急激な価格変動を引き起こす様子を何度も目にしてきました。本記事では、ニュースデータと人工知能(AI)の強力な融合について探っていきます。
preview
データサイエンスとML(第46回):PythonでN-BEATSを使った株式市場予測

データサイエンスとML(第46回):PythonでN-BEATSを使った株式市場予測

N-BEATSは、時系列予測のために設計された革新的なディープラーニングモデルです。このモデルは、ARIMAやPROPHET、VARなどの従来の時系列予測モデルを超えることを目指して公開されました。本記事では、このモデルについて説明し、株式市場の予測にどのように活用できるかを紹介します。
preview
MQL5でのAI搭載取引システムの構築(第2回):ChatGPT統合型アプリケーションのUI開発

MQL5でのAI搭載取引システムの構築(第2回):ChatGPT統合型アプリケーションのUI開発

本記事では、MQL5でChatGPTを統合したプログラムを開発します。このプログラムでは、第1回で作成したJSON解析フレームワークを活用してOpenAIのAPIにプロンプトを送信し、MetaTrader 5のチャート上に応答を表示します。入力フィールド、送信ボタン、応答表示を備えたダッシュボードを実装し、API通信やテキストの折り返し処理をおこなうことで、ユーザーとのインタラクションを実現します。
preview
MQL5でのAI搭載取引システムの構築(第5回):チャットポップアップを備えた折りたたみ可能なサイドバーの追加

MQL5でのAI搭載取引システムの構築(第5回):チャットポップアップを備えた折りたたみ可能なサイドバーの追加

連載第5回では、ChatGPT統合型エキスパートアドバイザー(EA)に折りたたみ可能なサイドバーを追加し、ナビゲーションを改善します。これにより、大小の履歴ポップアップからチャットをスムーズに選択できるようになり、従来の複数行入力処理、暗号化されたチャットの保存機能、チャートデータからのAIによる取引シグナル生成も維持されます。
preview
機械学習に基づく平均回帰戦略の作成

機械学習に基づく平均回帰戦略の作成

本記事では、機械学習を使った取引システムを構築するための、もう1つの独自のアプローチを提案します。クラスタ分析(クラスタリング)と取引のラベル付けを用いた平均回帰戦略のための手法です。