MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
MQL5とデータ処理パッケージの統合(第1回):高度なデータ分析と統計処理

MQL5とデータ処理パッケージの統合(第1回):高度なデータ分析と統計処理

統合により、MQL5から生の財務データをJupyter Labのようなデータ処理パッケージにインポートし、統計テストを含む高度な分析をおこなうシームレスなワークフローが実現します。
preview
独自のLLMをEAに統合する(第5部):LLM(I)による取引戦略の開発とテスト-微調整

独自のLLMをEAに統合する(第5部):LLM(I)による取引戦略の開発とテスト-微調整

今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じて微調整(ファインチューニング)し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
preview
ソケットを使ったツイッターのセンチメント分析

ソケットを使ったツイッターのセンチメント分析

この革新的な取引ボットは、MetaTrader 5とPythonを統合し、リアルタイムのソーシャルメディアセンチメント分析を活用して自動売買の意思決定をおこないます。特定の金融商品に関連するツイッターのセンチメントを分析することで、ボットはソーシャルメディアのトレンドを実用的な取引シグナルに変換します。ソケット通信によるクライアントサーバーアーキテクチャを採用しており、MT5の取引機能とPythonのデータ処理能力とのシームレスな相互作用を実現しています。このシステムは、クオンツファイナンスと自然言語処理の組み合わせが持つ可能性を示し、代替データソースを活用したアルゴリズム取引への最先端アプローチを提供します。このボットは将来性を示す一方で、より高度なセンチメント分析技術やリスク管理戦略の改善といった今後強化すべき分野も明らかにしています。
preview
知っておくべきMQL5ウィザードのテクニック(第29回):MLPの学習率についての続き

知っておくべきMQL5ウィザードのテクニック(第29回):MLPの学習率についての続き

エキスパートアドバイザー(EA)のパフォーマンスに対する学習率の感度を、主に適応学習率を調べることでまとめます。これらの学習率は、訓練の過程で層の各パラメータごとにカスタマイズすることを目的としており、潜在的な利点と期待されるパフォーマンスの差を評価します。
preview
移動エントロピーを用いた時系列の因果分析

移動エントロピーを用いた時系列の因果分析

この記事では、統計的因果関係をどのように活用して予測変数を特定できるかを解説します。因果性と移動エントロピーの関連性を探り、2つの変数間で情報がどの方向に伝達されているかを検出するためのMQL5コードを紹介します。
preview
MQL5で動的な多銘柄多期間の相対力指標(RSI)指標ダッシュボードを作成する

MQL5で動的な多銘柄多期間の相対力指標(RSI)指標ダッシュボードを作成する

この記事では、MQL5を使用して、動的に複数の銘柄と時間枠にわたるRSI指標のダッシュボードを開発し、トレーダーにリアルタイムでRSI値を提供する方法を解説します。このダッシュボードには、インタラクティブなボタン、リアルタイム更新、色分けされた指標が搭載されており、トレーダーがより的確な意思決定をおこなうためのサポートをします。
preview
知っておくべきMQL5ウィザードのテクニック(第28回):学習率に関する入門書によるGANの再検討

知っておくべきMQL5ウィザードのテクニック(第28回):学習率に関する入門書によるGANの再検討

学習率(Learning Rate)とは、多くの機械学習アルゴリズムの学習プロセスにおいて、学習目標に向かうステップの大きさのことです。以前の記事で検証したニューラルネットワークの一種である生成的敵対的ネットワーク(GAN: Generative Adversarial Network)のパフォーマンスに、その多くのスケジュールと形式が与える影響を検証します。
preview
初心者からエキスパートへ:MQL5取引のエッセンシャルジャーニー

初心者からエキスパートへ:MQL5取引のエッセンシャルジャーニー

潜在能力を引き出しましょう。あなたはチャンスに囲まれています。MQL5の旅をスタートさせ、次のレベルへと引き上げる3つの秘訣をご覧ください。初心者にもプロにも役立つヒントやトリックをご紹介します。
preview
古典的な戦略をPythonで再構築する(第2回):ボリンジャーバンドのブレイクアウト

古典的な戦略をPythonで再構築する(第2回):ボリンジャーバンドのブレイクアウト

本稿では、線形判別分析(LDA: Linear Discriminant Analysis)とボリンジャーバンドを統合し、戦略的市場参入シグナルの生成を目的としたカテゴリ別ゾーン予測を活用する取引戦略を考察します。
preview
MQL5取引ツールキット(第2回):ポジション管理EX5ライブラリの拡張と実装

MQL5取引ツールキット(第2回):ポジション管理EX5ライブラリの拡張と実装

MQL5コードやプロジェクトでEX5ライブラリをインポートして使用する方法をご紹介します。今回は、既存のライブラリにポジション管理関数を追加し、2つのエキスパートアドバイザー(EA)を作成することで、EX5ライブラリを拡張します。最初の例では、可変指数ダイナミック平均(VIDyA: Variable Index Dynamic Average)テクニカル指標を使用して、トレーリングストップ取引戦略EAを開発し、2番目の例では、取引パネルを使用して、ポジションの監視、オープン、クローズ、および修正をおこないます。この2つの例では、アップグレードされたEX5ポジション管理ライブラリの使用方法と実装方法を紹介します。
preview
データサイエンスと機械学習(第27回):MetaTrader 5取引ボットにおける畳み込みニューラルネットワーク(CNN)に価値はあるか?

データサイエンスと機械学習(第27回):MetaTrader 5取引ボットにおける畳み込みニューラルネットワーク(CNN)に価値はあるか?

畳み込みニューラルネットワーク(CNN)は、画像や映像のパターンを検出する能力に優れていることで有名で、さまざまな分野に応用されています。この記事では、金融市場の価値あるパターンを識別し、MetaTrader 5取引ボットのための効果的な取引シグナルを生成するCNNの可能性を探ります。このディープマシンラーニングの手法を、よりスマートな取引判断のためにどのように活用できるかを見てみましょう。
preview
Candlestick Trend Constraintモデルの構築(第7回):EA開発モデルの改良

Candlestick Trend Constraintモデルの構築(第7回):EA開発モデルの改良

今回は、エキスパートアドバイザー(EA)開発のための指標の詳細な準備について掘り下げていきます。議論の中では、現行バージョンの指標にさらなる改良を加えることで、その精度と機能性の向上を図ります。さらに、前バージョンがエントリポイントの識別に限られていた制約に対応するため、新たにエグジットポイントを特定する機能を導入します。
preview
MQL5とPythonで自己最適化EAを構築する

MQL5とPythonで自己最適化EAを構築する

この記事では、市況に基づいて取引戦略を自律的に選択変更できるエキスパートアドバイザー(EA)を構築する方法について解説します。マルコフ連鎖の基本を学び、それがアルゴリズムトレードにどのように役立つかを探っていきます。
preview
時系列の非定常性の指標としての2標本コルモゴロフ–スミルノフ検定

時系列の非定常性の指標としての2標本コルモゴロフ–スミルノフ検定

この記事では、最も有名なノンパラメトリック同質性検定の1つである2標本のコルモゴロフ–スミルノフ検定について考察します。モデルデータと実際の相場の両方が分析されています。また、この記事では非定常性指標(iスミルノフ距離)の構築例も紹介しています。
preview
パラボリックSARを使ってトレーリングストップを追加する方法

パラボリックSARを使ってトレーリングストップを追加する方法

取引戦略を作成する際には、さまざまな保護ストップのオプションをテストする必要があります。その中で、価格に追随してストップロスレベルをダイナミックに引き上げる方法が考えられます。その最有力候補として、パラボリックSAR指標が挙げられます。これ以上シンプルで視覚的にわかりやすい指標はないでしょう。
preview
多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

EA開発の主な段階を概説しましょう。最初におこなうべき重要な作業の1つは、開発した取引戦略のインスタンスを最適化することです。最適化プロセスにおいて、テスターが通過したパスに関する必要な情報を一箇所に集約してみましょう。
preview
ニューラルネットワークが簡単に(第87回):時系列パッチ

ニューラルネットワークが簡単に(第87回):時系列パッチ

予測は時系列分析において重要な役割を果たします。この新しい記事では、時系列パッチの利点についてお話しします。
preview
ニューラルネットワークが簡単に(第86回):U字型Transformer

ニューラルネットワークが簡単に(第86回):U字型Transformer

時系列予測アルゴリズムの研究を続けます。この記事では、もう1つの方法であるU字型Transformerについて説明します。
preview
ニューラルネットワークが簡単に(第85回):多変量時系列予測

ニューラルネットワークが簡単に(第85回):多変量時系列予測

この記事では、線形モデルとTransformerの長所を調和的に組み合わせた、新しい複雑な時系列予測手法を紹介します。
preview
ニューラルネットワークが簡単に(第84回):RevIN (Reversible Normalization)

ニューラルネットワークが簡単に(第84回):RevIN (Reversible Normalization)

入力データの前処理がモデル訓練の安定性に大きく寄与することは、すでに広く知られています。オンラインで「生」の入力データを処理するために、バッチ正規化層が頻繁に使用されますが、時には逆の手順が求められる場合もあります。この記事では、この問題を解決するための1つのアプローチについて解説します。
preview
ブレインストーム最適化アルゴリズム(第2部):マルチモーダリティ

ブレインストーム最適化アルゴリズム(第2部):マルチモーダリティ

記事の第2部では、BSOアルゴリズムの実用的な実装に移り、テスト関数のテストを実施し、BSOの効率を他の最適化手法と比較します。
preview
多通貨エキスパートアドバイザーの開発(第8回):新しいバーの負荷テストと処理

多通貨エキスパートアドバイザーの開発(第8回):新しいバーの負荷テストと処理

進歩に伴い、1つのEAでより多くの取引戦略インスタンスを同時に実行するようになりました。リソースの限界に達する前に、どのくらいのインスタンスが利用可能かを検討することが重要です。
preview
ブレインストーム最適化アルゴリズム(第1部):クラスタリング

ブレインストーム最適化アルゴリズム(第1部):クラスタリング

この記事では、「ブレインストーミング」と呼ばれる現象にヒントを得た、BSO (Brain Storm Optimization)と呼ばれる革新的な最適化手法を見ていきます。また、BSO法が適用するマルチモーダル最適化問題を解くための新しいアプローチについても説明します。これにより、部分集団の数を事前に決定することなく、複数の最適解を見つけることができるのです。K-MeansとK-Means++のクラスタリング法も検討します。
preview
ニューラルネットワークが簡単に(第83回):「Conformer」Spatio-Temporal Continuous Attention Transformerアルゴリズム

ニューラルネットワークが簡単に(第83回):「Conformer」Spatio-Temporal Continuous Attention Transformerアルゴリズム

この記事では、天気予報を目的に開発されたConformerアルゴリズムについて紹介します。天気の変動性や予測の難しさは、金融市場の動きとしばしば比較されます。Conformerは、Attentionモデルと常微分方程式の利点を組み合わせた高度な手法です。
preview
リプレイシステムの開発(第45回):Chart Tradeプロジェクト(IV)

リプレイシステムの開発(第45回):Chart Tradeプロジェクト(IV)

この記事の主な目的は、C_ChartFloatingRADクラスの紹介と説明です。Chart Trade指標は、非常に興味深い方法で機能しています。チャート上のオブジェクトの数はまだ少ないものの、期待通りの機能を実現しています。指標の値は編集可能ですが、その実現方法については疑問が残るかもしれません。この記事を読めば、これらの疑問が解消されるでしょう。
preview
因果推論における時系列クラスタリング

因果推論における時系列クラスタリング

機械学習におけるクラスタリングアルゴリズムは、元データを類似した観察結果を持つグループに分けることができる重要な教師なし学習法です。これらのクラスタを用いることで、特定の市場クラスタを分析したり、新しいデータを基に最も安定したクラスタを探索したり、因果関係を推定したりすることが可能です。本稿では、Pythonによる時系列クラスタリングのための独自の手法を提案します。
preview
ニューラルネットワークが簡単に(第82回):常微分方程式モデル(NeuralODE)

ニューラルネットワークが簡単に(第82回):常微分方程式モデル(NeuralODE)

この記事では、環境状態のダイナミクスを研究することを目的とした別のタイプのモデルについて説明します。
preview
DoEasy - サービス関数(第2回):はらみ線パターン

DoEasy - サービス関数(第2回):はらみ線パターン

今回は、引き続きDoEasyライブラリの価格パターンを見ていきましょう。また、プライスアクションフォーメーションのはらみ線パターンクラスも作成します。
preview
リプレイシステムの開発(第44回):Chart Tradeプロジェクト(III)

リプレイシステムの開発(第44回):Chart Tradeプロジェクト(III)

前回の記事では、OBJ_CHARTで使用するテンプレートデータの操作方法について解説しました。ただし、あの記事ではトピックの概要に焦点を当て、詳細な部分には触れていませんでした。これは、説明をよりシンプルにするために、非常に簡略化された手法を用いたからです。物事は一見シンプルに見えることが多いですが、実際にはそうではないケースもあり、全体を正確に理解するためには、まず最も基本的な部分をしっかり押さえる必要があります。
preview
行列分解:基本

行列分解:基本

ここでの目的は教訓を得ることなので、できるだけシンプルに話を進めたいと思います。具体的には、必要な行列の乗算だけを実装します。行列とスカラーの乗算をシミュレートするにはこれで十分であることが今日わかるでしょう。行列分解を実装する際に多くの人が直面する最大の課題は、スカラーの分解と異なり、因子の順序が結果に影響を与えるため、行列の場合はその点に注意が必要だということです。
preview
MQL5でのもみ合いレンジブレイクアウト戦略に基づくエキスパートアドバイザー(EA)の開発

MQL5でのもみ合いレンジブレイクアウト戦略に基づくエキスパートアドバイザー(EA)の開発

この記事では、もみ合い期間後の価格ブレイクアウトを活用したエキスパートアドバイザー(EA)の作成手順を説明します。トレーダーは、もみ合いレンジを特定し、ブレイクアウトレベルを設定することで、この戦略に基づいて取引判断を自動化できます。EAは、誤ったブレイクアウトを回避しつつ、明確なエントリポイントとエグジットポイントを提供することを目的としています。
preview
MQL5入門(第8回):初心者のためのEA構築ガイド(II)

MQL5入門(第8回):初心者のためのEA構築ガイド(II)

この記事では、MQL5フォーラムでよく見られる初心者からの質問を取り上げ、実践的な解決策を紹介します。売買やローソク足の価格取得、取引限度額の設定、取引期間や利益/損失の閾値の管理といった基本的なタスクを自動売買で実行する方法を学びます。MQL5でのこれらの概念の理解と実装を強化するため、ステップごとのガイダンスも提供します。
preview
初心者のためのMQL5におけるファンダメンタル分析とテクニカル分析戦略の組み合わせ

初心者のためのMQL5におけるファンダメンタル分析とテクニカル分析戦略の組み合わせ

この記事では、トレンドフォローとファンダメンタル分析の原則を1つのエキスパートアドバイザー(EA)にシームレスに統合し、より強固な取引戦略を構築する方法について説明します。MQL5を活用して、誰でも簡単にカスタマイズされた取引アルゴリズムを作成できることを紹介します。
preview
PythonとMQL5によるポートフォリオ最適化

PythonとMQL5によるポートフォリオ最適化

この記事では、MetaTrader 5を使ったPythonとMQL5による高度なポートフォリオ最適化技術を紹介します。データ分析、資産配分、売買シグナル生成のためのアルゴリズム開発方法を示し、現代の金融管理やリスク軽減におけるデータ主導の意思決定の重要性を強調します。
preview
MQL5でインタラクティブなグラフィカルユーザーインターフェイスを作成する(第2回):コントロールと応答性の追加

MQL5でインタラクティブなグラフィカルユーザーインターフェイスを作成する(第2回):コントロールと応答性の追加

ダイナミックな機能でMQL5のGUIパネルを強化することで、ユーザーの取引体験を大幅に向上させることができます。インタラクティブな要素、ホバー効果、リアルタイムのデータ更新を取り入れることで、パネルは現代のトレーダーにとって強力なツールとなるでしょう。
preview
データサイエンスと機械学習(第26回):時系列予測における究極の戦い - LSTM対GRUニューラルネットワーク

データサイエンスと機械学習(第26回):時系列予測における究極の戦い - LSTM対GRUニューラルネットワーク

前回の記事では、データの長期的な依存関係をうまく捉えられないにもかかわらず、利益を上げる戦略を構築できる単純RNNについて説明しました。この記事では、LSTM (Long-Short Term Memory)とGRU (Gated Recurrent Unit)の両方について説明します。この2つは、単純RNNの欠点を克服し、それを凌駕するために紹介されました。
preview
MetaTrader 5のEMAクロスオーバーに基づくカスケード注文取引戦略

MetaTrader 5のEMAクロスオーバーに基づくカスケード注文取引戦略

この記事は、MetaTrader 5のEMAクロスオーバーに基づく自動化アルゴリズムのデモをガイドしています。価格帯の動作分析からリスク管理まで、MQL5のエキスパートアドバイザー(EA)を示し、MetaTrader 5でテストするためのあらゆる側面に関する詳細情報を含みます。
preview
Candlestick Trend Constraintモデルの構築(第6回):オールインワン統合

Candlestick Trend Constraintモデルの構築(第6回):オールインワン統合

一つの大きな課題は、異なる機能を持つ同じプログラムを、同じ通貨ペアに対して複数のチャートウィンドウで実行し、管理することです。この問題を解決するには、複数の機能を一つのメインプログラムに統合する方法を検討する必要があります。さらに、プログラムの設定を操作ログに出力する方法や、成功したシグナルのブロードキャストをチャートインターフェイス上に表示する方法についても解説します。連載が進むにつれ、この記事でさらに詳しい情報を提供していきます。
preview
初心者のためのMQL5によるSP500取引戦略

初心者のためのMQL5によるSP500取引戦略

MQL5を活用してS&P500指数を正確に予測する方法をご紹介します。古典的なテクニカル分析とアルゴリズム、そして長年の経験に裏打ちされた原理を組み合わせることで、安定性を高め、確かな市場洞察力を得られます。
preview
スマートマネーコンセプト(BOS)とRSI指標をEAに統合する方法

スマートマネーコンセプト(BOS)とRSI指標をEAに統合する方法

市場構造に基づいた情報に基づく自動売買の意思決定を可能にするためには、スマートマネーコンセプト(Break Of Structure: BOS)とRSI指標の組み合わせが有効です。