MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
リプレイシステムの開発 - 市場シミュレーション(第8回):指標のロック

リプレイシステムの開発 - 市場シミュレーション(第8回):指標のロック

この記事では、MQL5言語を使用しながら指標をロックする方法を見ていきます。非常に興味深く素晴らしい方法でそれをおこないます。
preview
取引におけるニューラルネットワーク:点群用Transformer (Pointformer)

取引におけるニューラルネットワーク:点群用Transformer (Pointformer)

この記事では、点群におけるオブジェクト検出問題を解決するためのアテンションを用いたアルゴリズムについて解説します。点群におけるオブジェクト検出は、多くの現実世界の応用において極めて重要です。
preview
MQL5における予測および分類評価のためのリサンプリング手法

MQL5における予測および分類評価のためのリサンプリング手法

本記事では、1つのデータセットを訓練(学習)用と検証用の両方として使用するモデル評価手法について、理論と実装の両面から検討します。
preview
取引履歴を気にせずにチャート上で直接取引を表示する方法

取引履歴を気にせずにチャート上で直接取引を表示する方法

この記事では、キーナビゲーションを使用してチャート上でポジションと取引を直接便利に表示するためのシンプルなツールを作成します。トレーダーは個々の取引を視覚的に調べ、取引結果に関するすべての情報をその場で受け取ることができるようになります。
preview
古典的な戦略を再構築する(第16回):ダブルボリンジャーバンドブレイクアウト

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

本記事では、古典的なボリンジャーバンドのブレイクアウト戦略を再考し、その弱点を補う手法を紹介します。古典的戦略は、偽のブレイクアウトに弱いというよく知られた課題があります。本記事では、その弱点に対する一つの解決策として「ダブルボリンジャーバンド戦略」を提示します。この比較的知られていない手法は、従来戦略の弱点を補い、市場をより動的に捉える視点を提供します。これにより、従来のルールに縛られた制約を超え、トレーダーにとってより適応力のあるフレームワークを提供できるのです。
preview
Bears Powerによる取引システムの設計方法を学ぶ

Bears Powerによる取引システムの設計方法を学ぶ

最も人気のあるテクニカル指標によって取引システムを設計する方法を学ぶ連載の新しい記事へようこそ。この新しい記事では、Bears Power(ベアーパワー)テクニカル指標によって取引システムを設計する方法を学びます。
preview
ニューラルネットワークが簡単に(第67回):過去の経験を活かした新しい課題の解決

ニューラルネットワークが簡単に(第67回):過去の経験を活かした新しい課題の解決

この記事では、訓練セットにデータを収集する方法について引き続き説明します。明らかに、学習プロセスには環境との絶え間ない相互作用が必要です。しかし、状況はさまざまです。
preview
プライスアクション分析ツールキットの開発(第44回):MQL5でVWMAクロスオーバーシグナルEAを構築する

プライスアクション分析ツールキットの開発(第44回):MQL5でVWMAクロスオーバーシグナルEAを構築する

本記事では、MetaTrader 5向けに開発されたVWMA(出来高加重移動平均)クロスオーバーシグナルツールを紹介します。このツールは、価格動向と出来高を組み合わせることで、強気および弱気の反転ポイントを特定することを目的としています。このエキスパートアドバイザー(EA)は、チャート上に明確な買いと売りシグナルを直接表示し、豊富な情報を持つパネルを備えるとともに、ユーザーによる詳細なカスタマイズが可能で、実践的な取引戦略の強力な補助となります。
preview
因果推論における傾向スコア

因果推論における傾向スコア

本稿では、因果推論におけるマッチングについて考察します。マッチングは、データセット内の類似した観測を比較するために使用されます。これは因果関係を正しく判定し、バイアスを取り除くために必要なことです。著者は、訓練されていない新しいデータではより安定する、機械学習に基づく取引システムを構築する際に、これがどのように役立つかを説明しています。傾向スコアは因果推論において中心的な役割を果たし、広く用いられています。
リプレイシステムの開発 - 市場シミュレーション(第10回):リプレイで実データのみを使用する
リプレイシステムの開発 - 市場シミュレーション(第10回):リプレイで実データのみを使用する

リプレイシステムの開発 - 市場シミュレーション(第10回):リプレイで実データのみを使用する

ここでは、リプレイシステムで、調整されているかどうかを気にすることなく、より信頼性の高いデータ(取引されたティック)を使用する方法を見ていきます。
MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図
MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図

MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図

本稿は、前の記事で説明したMQLプログラムのMVCパターンのトピックの続きです。この記事では、パターンの3つのコンポーネント間の可能な相互作用の図を検討します。
preview
MQL5での取引戦略の自動化(第13回):三尊天井取引アルゴリズムの構築

MQL5での取引戦略の自動化(第13回):三尊天井取引アルゴリズムの構築

この記事では、三尊天井(Head and Shoulders)パターンの検出と売買をMQL5で自動化します。その構造を分析し、検出および取引をおこなうエキスパートアドバイザー(EA)を実装し、バックテストでその結果を検証します。このプロセスを通じて、改良の余地を残しつつも実用的な取引アルゴリズムが明らかになります。
preview
ニューラルネットワークが簡単に(第45回):状態探索スキルの訓練

ニューラルネットワークが簡単に(第45回):状態探索スキルの訓練

明示的な報酬関数なしに有用なスキルを訓練することは、階層的強化学習における主な課題の1つです。前回までに、この問題を解くための2つのアルゴリズムを紹介しましたが、環境調査の完全性についての疑問は残されています。この記事では、スキル訓練に対する異なるアプローチを示します。その使用は、システムの現在の状態に直接依存します。
preview
古典的な戦略を再構築する(第11回):移動平均クロスオーバー(II)

古典的な戦略を再構築する(第11回):移動平均クロスオーバー(II)

移動平均とストキャスティクスオシレーターは、トレンドに従う取引シグナルを生成するために使用できます。ただし、これらのシグナルは価格変動が発生した後にのみ観察されます。AIを使用することで、テクニカルインジケーターに内在するこの遅れを効果的に克服できます。この記事では、既存の取引戦略を改善できるような、完全に自律的なAI搭載のエキスパートアドバイザー(EA)を作成する方法を説明します。最も古い取引戦略であっても、改善することは可能です。
preview
知っておくべきMQL5ウィザードのテクニック(第53回):MFI (Market Facilitation Index)

知っておくべきMQL5ウィザードのテクニック(第53回):MFI (Market Facilitation Index)

MFI(Market Facilitation Index、マーケットファシリテーションインデックス)は、ビル・ウィリアムズによる指標の一つで、出来高と連動した価格変動の効率性を測定することを目的としています。いつものように、本記事では、ウィザードアセンブリシグナルクラスの枠組みにおいて、このインジケーターのさまざまなパターンを検証し、それに基づいたテストレポートおよび分析結果を紹介します。
preview
Controlsクラスを使用してインタラクティブなMQL5ダッシュボード/パネルを作成する方法(第1回):パネルの設定

Controlsクラスを使用してインタラクティブなMQL5ダッシュボード/パネルを作成する方法(第1回):パネルの設定

この記事では、取引操作を効率化するために設計されたMQL5のControlsクラスを使用して、インタラクティブな取引ダッシュボードを作成します。パネルには、タイトル、[Trade]、[Close]、[Information]のナビゲーションボタン、取引の実行とポジションの管理用の専用アクションボタンが表示されます。この記事を読み終える頃には、今後の記事でさらに機能強化するための基礎パネルが完成しているはずです。
preview
MQL5 Algo Forgeのご紹介

MQL5 Algo Forgeのご紹介

アルゴリズム取引開発者のための専用ポータル「MQL5 Algo Forge」をご紹介します。MQL5 Algo Forgeは、Git のパワーと、MQL5エコシステム内でプロジェクトを管理・整理するための直感的なインターフェースを兼ね備えています。ここでは、気になる著者をフォローしたり、チームを結成したり、アルゴリズム取引プロジェクトで共同作業を行うことが可能です。
preview
知っておくべきMQL5ウィザードのテクニック(第10回):型破りなRBM

知っておくべきMQL5ウィザードのテクニック(第10回):型破りなRBM

制限ボルツマンマシン(Restrictive Boltzmann Machine、RBM)は、基本的なレベルでは、次元削減による教師なし分類に長けた2層のニューラルネットワークです。その基本原理を採用し、常識にとらわれない方法で設計し直して訓練すれば有用なシグナルフィルタが得られるかどうかを検証します。
preview
初心者のためのMQL5によるSP500取引戦略

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

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

HarmonyOS NEXTデバイスにMetaTrader 5などのMetaQuotesアプリをインストールする

HarmonyOS NEXTデバイスでMetaTrader 5やその他のMetaQuotesアプリをDroiTong(卓易通)を使って簡単にインストールできます。スマートフォンやノートパソコン向けの詳細なステップバイステップガイドです。
preview
DoEasy - コントロール(第25部):Tooltip WinFormsオブジェクト

DoEasy - コントロール(第25部):Tooltip WinFormsオブジェクト

今回は、Tooltipコントロールの開発と、ライブラリの新しいグラフィカルプリミティブの開発を開始する予定です。当然ながら、すべての要素にツールチップがあるわけではないですが、すべてのグラフィックオブジェクトにはツールチップを設定する機能があります。
preview
ニューラルネットワークが簡単に(第68回):オフライン選好誘導方策最適化

ニューラルネットワークが簡単に(第68回):オフライン選好誘導方策最適化

最初の記事で強化学習を扱って以来、何らかの形で、環境の探索と報酬関数の決定という2つの問題に触れてきました。最近の記事は、オフライン学習における探索の問題に費やされています。今回は、作者が報酬関数を完全に排除したアルゴリズムを紹介したいと思います。
preview
予測による三角裁定取引

予測による三角裁定取引

この記事では、三角裁定を簡略化し、市場に慣れていない方でも、予測や専用ソフトを使用してより賢く通貨を取引する方法をご紹介します。専門知識を駆使して取引する準備はできていますか?
preview
ソケットを使ったツイッターのセンチメント分析

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

この革新的な取引ボットは、MetaTrader 5とPythonを統合し、リアルタイムのソーシャルメディアセンチメント分析を活用して自動売買の意思決定をおこないます。特定の金融商品に関連するツイッターのセンチメントを分析することで、ボットはソーシャルメディアのトレンドを実用的な取引シグナルに変換します。ソケット通信によるクライアントサーバーアーキテクチャを採用しており、MT5の取引機能とPythonのデータ処理能力とのシームレスな相互作用を実現しています。
preview
プライスアクション分析ツールキットの開発(第11回):Heikin Ashi Signal EA

プライスアクション分析ツールキットの開発(第11回):Heikin Ashi Signal EA

MQL5は、ユーザーの好みに合わせてカスタマイズ可能な自動売買システムを開発するための無限の可能性を提供します。複雑な数値計算も実行できることをご存知でしょうか。この記事では、自動売買戦略として日本の平均足手法を紹介します。
preview
一からの取引エキスパートアドバイザーの開発(第16部):Web上のデータにアクセスする(II)

一からの取引エキスパートアドバイザーの開発(第16部):Web上のデータにアクセスする(II)

Webからエキスパートアドバイザー(EA)にデータを入力する方法はそれほど明らかにはわかりません。MetaTrader 5が提供するすべての可能性を理解しなければ、そう簡単にはいきません。
preview
ニューラルネットワークが簡単に(第74回):適応による軌道予測

ニューラルネットワークが簡単に(第74回):適応による軌道予測

本稿では、様々な環境条件に適応可能なマルチエージェントの軌道予測について、かなり効果的な手法を紹介します。
preview
知っておくべきMQL5ウィザードのテクニック(第57回):移動平均とストキャスティクスを用いた教師あり学習

知っておくべきMQL5ウィザードのテクニック(第57回):移動平均とストキャスティクスを用いた教師あり学習

移動平均線やストキャスティクスは非常に一般的なテクニカル指標ですが、その「遅行性」のために一部のトレーダーから敬遠されがちです。この3部構成のミニシリーズでは、機械学習の3つの主要なアプローチを軸に、この偏見が本当に正当なものなのか、それとも実はこれらの指標に優位性が隠れているのかを検証していきます。検証には、ウィザードで組み立てられたエキスパートアドバイザー(EA)を用います。
preview
MQL5での取引戦略の自動化(第16回):ミッドナイトレンジブレイクアウト+Break of Structure (BoS)のプライスアクション

MQL5での取引戦略の自動化(第16回):ミッドナイトレンジブレイクアウト+Break of Structure (BoS)のプライスアクション

本記事では、MQL5を用いて「ミッドナイトレンジブレイクアウト + Break of Structure (BoS)」戦略を自動化し、ブレイクアウトの検出および取引実行のコードを詳細に解説します。エントリー、ストップ、利益確定のためのリスクパラメータを正確に定義し、実際の取引に活用できるようバックテストおよび最適化もおこないます。
preview
ニューラルネットワークが簡単に(第64回):ConserWeightive Behavioral Cloning (CWBC)法

ニューラルネットワークが簡単に(第64回):ConserWeightive Behavioral Cloning (CWBC)法

以前の記事でおこなったテストの結果、訓練された戦略の最適性は、使用する訓練セットに大きく依存するという結論に達しました。この記事では、モデルを訓練するための軌道を選択するための、シンプルかつ効果的な手法を紹介します。
preview
知っておくべきMQL5ウィザードのテクニック(第28回):学習率に関する入門書によるGANの再検討

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

学習率(Learning Rate)とは、多くの機械学習アルゴリズムの学習プロセスにおいて、学習目標に向かうステップの大きさのことです。以前の記事で検証したニューラルネットワークの一種である生成的敵対的ネットワーク(GAN: Generative Adversarial Network)のパフォーマンスに、その多くのスケジュールと形式が与える影響を検証します。
preview
リプレイシステムの開発 - 市場シミュレーション(第17回):ティックそしてまたティック(I)

リプレイシステムの開発 - 市場シミュレーション(第17回):ティックそしてまたティック(I)

ここでは、非常に興味深いものを実装する方法を見ていきますが、同時に、非常にわかりにくい点があるため非常に難しくなります。起こり得る最悪の事態は、自分をプロだと思っている一部のトレーダーが、資本市場におけるこれらの概念の重要性について何も知らないことです。さて、ここではプログラミングに焦点を当てていますが、私たちが実装しようとしているものにとって最も重要なのは市場取引に伴う問題のいくつかを理解することです。
preview
外国為替平均回帰戦略のためのカルマンフィルター

外国為替平均回帰戦略のためのカルマンフィルター

カルマンフィルターは、価格変動のノイズを除去して金融時系列の真の状態を推定するために、アルゴリズム取引で用いられる再帰的なアルゴリズムです。新しい市場データに基づいて予測を動的に更新するため、平均回帰のような適応型戦略において非常に有用です。本記事ではまず、カルマンフィルターの計算方法と実装について紹介します。次に、このフィルターをクラシックな平均回帰型の外国為替(FX)戦略に適用する例を示します。最後に、異なる通貨ペアにおいてカルマンフィルターと移動平均を比較し、さまざまな統計分析をおこないます。
preview
リプレイシステムの開発 - 市場シミュレーション(第13回):シミュレーターの誕生(III)

リプレイシステムの開発 - 市場シミュレーション(第13回):シミュレーターの誕生(III)

ここでは、次回以降の仕事に関連するいくつかの要素を簡略化します。シミュレーターが生成するランダム性を視覚化する方法も説明しましょう。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第7回):チャート上のインジケーター自動化のためのコマンド解析

MQL5-Telegram統合エキスパートアドバイザーの作成(第7回):チャート上のインジケーター自動化のためのコマンド解析

この記事では、TelegramコマンドをMQL5と統合して、取引チャートへのインジケーターの追加を自動化する方法について解説します。ユーザーからのコマンドを解析し、MQL5で実行し、インジケーターベースの取引を円滑におこなうためのシステムをテストするプロセスについて説明します。
preview
DoEasy-コントロール(第13部):WinFormsオブジェクトのマウスによる操作の最適化、TabControl WinFormsオブジェクトの開発開始

DoEasy-コントロール(第13部):WinFormsオブジェクトのマウスによる操作の最適化、TabControl WinFormsオブジェクトの開発開始

今回は、マウスカーソルを離した後のWinFormsオブジェクトの外観の処理を修正および最適化して、TabControl WinFormsオブジェクトの開発を開始します。
preview
多通貨エキスパートアドバイザーの開発(第2回):取引戦略の仮想ポジションへの移行

多通貨エキスパートアドバイザーの開発(第2回):取引戦略の仮想ポジションへの移行

複数の戦略を並行して動作させる多通貨エキスパートアドバイザー(EA)の開発を続けましょう。マーケットポジションを建てることに関連するすべての作業を、戦略レベルから、戦略を管理するEAのレベルに移してみましょう。戦略自体は、マーケットポジションを持つことなく、仮想の取引のみをおこないます。
preview
機械学習の限界を克服する(第3回):既約誤差に関する新たな視点

機械学習の限界を克服する(第3回):既約誤差に関する新たな視点

本記事では、モデルがおこなうすべての予測に密かに影響を与える、隠れた幾何学的誤差の源に新たな視点を提供します。取引における機械学習予測の評価方法と活用法を再考することで、従来見過ごされてきたこの視点が、より鋭い意思決定、より高いリターン、そして、すでに理解していると思っていたモデルをより賢く活用する道を開くことを示します。
preview
人工散布アルゴリズム(ASHA)

人工散布アルゴリズム(ASHA)

この記事では、一般的な最適化問題を解決するために開発された新しいメタヒューリスティック手法、人工散布アルゴリズム(ASHA: Artificial Showering Algorithm)を紹介します。ASHAは、水の流れと蓄積のプロセスをシミュレーションすることで、各リソース単位(水)が最適解を探索する「理想フィールド」という概念を構築します。本稿では、ASHAがフローと蓄積の原理をどのように適応させ、探索空間内でリソースを効率的に割り当てるかを解説し、その実装およびテスト結果を紹介します。
DoEasyライブラリのグラフィックス(第78部): ライブラリのアニメーションの原則イメージスライス
DoEasyライブラリのグラフィックス(第78部): ライブラリのアニメーションの原則イメージスライス

DoEasyライブラリのグラフィックス(第78部): ライブラリのアニメーションの原則イメージスライス

この記事では、ライブラリの一部で使用されるアニメーションの原則を定義します。また、画像の一部をコピーして指定したフォームオブジェクトの場所に貼り付け、画像が重ねられるフォームの背景の一部を保存して復元するクラスを開発します。