MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
Pythonを使用したEA用ディープラーニングONNXモデルの季節性フィルタと期間

Pythonを使用したEA用ディープラーニングONNXモデルの季節性フィルタと期間

Pythonでディープラーニングのモデルを作成する際、季節性から恩恵を受けることはできるのでしょうか。ONNXモデルのデータをフィルタすることでより良い結果が得られるのでしょうか。どの期間を使用するべきでしょうか。この記事では、これらすべてを取り上げます。
preview
MQL5でマーケットメイク系アルゴリズムを作成する

MQL5でマーケットメイク系アルゴリズムを作成する

マーケットメーカーはどのように機能するのでしょうか。この問題を考えて、原始的なマーケットメイク系アルゴリズムを作ってみましょう。
preview
高度なICT取引システムの開発:インジケーターへのオーダーブロックの実装

高度なICT取引システムの開発:インジケーターへのオーダーブロックの実装

この記事では、オーダーブロックのミティゲーションを検出し、描画し、アラートを発するインジケーターの作り方を学びます。また、チャート上でこれらのブロックを正確に特定する方法や、正確なアラートの設定方法、価格の動きをより理解しやすくするために矩形で位置を可視化する方法についても詳しく解説します。このインジケーターは、スマートマネーコンセプトやインナーサークルトレーダーの手法を用いるトレーダーにとって重要なツールとなるでしょう。
preview
MetaTrader 5を使用したPythonの高頻度裁定取引システム

MetaTrader 5を使用したPythonの高頻度裁定取引システム

この記事では、ブローカーの観点から見て合法であり、外国為替市場において数千もの合成価格を生成・分析し、利益を上げるために取引をおこなう裁定取引システムの構築方法について解説します。
preview
母集団最適化アルゴリズム:ネルダー–ミード法、またはシンプレックス(NM)検索法

母集団最適化アルゴリズム:ネルダー–ミード法、またはシンプレックス(NM)検索法

この記事では、ネルダー–ミード法の完全な探求を提示し、最適解を達成するために各反復でシンプレックス(関数パラメータ空間)がどのように修正され、再配置されるかを説明し、この方法がどのように改善されるかを説明します。
preview
ソフトウェア開発とMQL5におけるデザインパターン(第4回):振る舞いパターン2

ソフトウェア開発とMQL5におけるデザインパターン(第4回):振る舞いパターン2

デザインパターンには、生成デザインパターン、構造デザインパターン、振る舞いデザインパターンの3タイプがあることを説明しました。コードをクリーンにしながらオブジェクト間の相互作用の方法を設定するのに役立つ、残りの振る舞いタイプのパターンの説明を完成させます。
preview
MQL5における高度なメモリ管理と最適化テクニック

MQL5における高度なメモリ管理と最適化テクニック

MQL5の取引システムにおけるメモリ使用を最適化するための実践的なテクニックを紹介します。効率的で安定性が高く、高速に動作するエキスパートアドバイザー(EA)やインジケーターの構築方法を学びましょう。MQL5でのメモリの仕組み、システムを遅くしたり不安定にしたりする一般的な落とし穴、そして、最も重要なこととして、それらを解決する方法について詳しく解説します。
preview
一からの取引エキスパートアドバイザーの開発(第25部):システムの堅牢性の提供(II)

一からの取引エキスパートアドバイザーの開発(第25部):システムの堅牢性の提供(II)

この記事では、エキスパートアドバイザー(EA)のパフォーマンスを仕上げます。長くなるのでご準備ください。EAを信頼できるものにするために、まず取引システムの一部でないコードをすべて削除します。
preview
MQL5 Algo Forgeへの移行(第1回):メインリポジトリの作成

MQL5 Algo Forgeへの移行(第1回):メインリポジトリの作成

MetaEditorでプロジェクトを進める際、開発者はしばしばコードのバージョンを管理する必要に直面します。MetaQuotesは最近、Gitへの移行と、コードのバージョン管理や共同作業を可能にするMQL5 Algo Forgeの立ち上げを発表しました。本記事では、新しく導入されたツールと既存のツールを、より効率的に活用する方法について解説します。
preview
一からの取引エキスパートアドバイザーの開発(第23部):新規受注システム(IV)

一からの取引エキスパートアドバイザーの開発(第23部):新規受注システム(IV)

受注システムをより柔軟にします。ここでは、コードをより柔軟にする変更を検討して、ポジションストップレベルをより迅速に変更できるようにします。
preview
知っておくべきMQL5ウィザードのテクニック(第38回):ボリンジャーバンド

知っておくべきMQL5ウィザードのテクニック(第38回):ボリンジャーバンド

ボリンジャーバンドは、多くのトレーダーが手動で取引を発注し、決済するために使用する、非常に一般的なエンベロープ指標です。この指標が生成する可能性のあるシグナルをできるだけ多く検討し、ウィザードで組み立てたエキスパートアドバイザー(EA)でどのように使用できるかを見ていきます。
DoEasyライブラリのグラフィックス(第91部): 標準グラフィカルオブジェクトのイベントオブジェクト名変更履歴
DoEasyライブラリのグラフィックス(第91部): 標準グラフィカルオブジェクトのイベントオブジェクト名変更履歴

DoEasyライブラリのグラフィックス(第91部): 標準グラフィカルオブジェクトのイベントオブジェクト名変更履歴

本稿では、ライブラリベースのプログラムからグラフィカルオブジェクトイベントを制御するための基本的な機能を洗練します。例として、「オブジェクト名」プロパティを使用してグラフィカルオブジェクトの変更履歴を保存する機能の実装から始めます。
preview
一からの取引エキスパートアドバイザーの開発(第26部):未来に向かって(I)

一からの取引エキスパートアドバイザーの開発(第26部):未来に向かって(I)

今日は、発注システムを次のレベルに引き上げます。ただしその前に、いくつかの問題を解決する必要があります。ここで、どのように働きたいか、取引日に何をするかに関連するいくつかの質問があります。
preview
MetaTrader 5のEMAクロスオーバーに基づくカスケード注文取引戦略

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

この記事は、MetaTrader 5のEMAクロスオーバーに基づく自動化アルゴリズムのデモをガイドしています。価格帯の動作分析からリスク管理まで、MQL5のエキスパートアドバイザー(EA)を示し、MetaTrader 5でテストするためのあらゆる側面に関する詳細情報を含みます。
ターミナルサービスクライアントどのようにポケットPCをBig Brotherの相棒にするか
ターミナルサービスクライアントどのようにポケットPCをBig Brotherの相棒にするか

ターミナルサービスクライアントどのようにポケットPCをBig Brotherの相棒にするか

この記事は、MT4クライアントターミナルのインストールされたリモートPCにPDAを経由し接続する方法を紹介します。
preview
一からの取引エキスパートアドバイザーの開発(第20部):新規受注システム(III)

一からの取引エキスパートアドバイザーの開発(第20部):新規受注システム(III)

新しい受注システムの導入を継続します。このようなシステムを作るには、MQL5を使いこなすだけでなく、MetaTrader 5プラットフォームが実際にどのように機能し、どのようなリソースを提供しているかを理解することが必要です。
preview
MLモデルとストラテジーテスターの統合(第3回):CSVファイルの管理(II)

MLモデルとストラテジーテスターの統合(第3回):CSVファイルの管理(II)

この記事では、MQL5でCSVファイルを効率的に管理するクラスを作成するための完全ガイドを提供します。データを開き、読み書きし、変換するメソッドの実装を見ていきます。また、情報を保存しアクセスするためにこれらを使用する方法についても検討します。さらに、このようなクラスを使用する際の制限や最も重要な点についても説明します。MQL5でCSVファイルを処理する方法を学びたい人にとって、この記事は貴重なリソースとなるでしょう。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第2回):MQL5からTelegramへのシグナル送信

MQL5-Telegram統合エキスパートアドバイザーの作成(第2回):MQL5からTelegramへのシグナル送信

この記事では、移動平均クロスオーバーシグナルをTelegramに送信するMQL5-Telegram統合エキスパートアドバイザー(EA)を作成します。移動平均クロスオーバーから売買シグナルを生成し、MQL5で必要なコードを実装し、統合がシームレスに機能するようにするプロセスを詳しく説明します。その結果、リアルタイムの取引アラートをTelegramのグループチャットに直接提供するシステムが完成します。
preview
Frames Analyzerツールによるタイムトレード間隔の魔法

Frames Analyzerツールによるタイムトレード間隔の魔法

Frames Analyzerとは何でしょうか。これは、パラメータ最適化の直後に作成されたMQDファイルまたはデータベースを読み取ることにより、ストラテジーテスター内外でパラメータ最適化中に最適化フレームを分析するためのエキスパートアドバイザー(EA)のプラグインモジュールです。これらの最適化の結果はFrames Analyzerツールを使用している他のユーザーと共有して、結果について話し合うことができます。
preview
カオス理論アプローチによる買われ過ぎと売られ過ぎのトレンド分析

カオス理論アプローチによる買われ過ぎと売られ過ぎのトレンド分析

市場の買われすぎや売られすぎの状態を、カオス理論に基づいて評価します。この手法では、カオス理論、フラクタル幾何学、ニューラルネットワークの原理を統合し、金融市場の予測をおこないます。この研究では、市場のランダム性の尺度として、また売買シグナルの動的適応として、リアプノフ指数を使用する方法を実証しています。市場のランダム性の評価にはリアプノフ指数を用い、売買シグナルの動的適応を実現しています。具体的には、フラクタルノイズ生成アルゴリズム、双曲線正接関数による活性化、モーメント最適化を組み合わせた手法を採用しています。
preview
モスクワ取引所(MOEX)におけるストップ注文を利用した取引所グリッド取引の自動化

モスクワ取引所(MOEX)におけるストップ注文を利用した取引所グリッド取引の自動化

本稿では、MQL5エキスパートアドバイザー(EA)に実装されたストップ指値注文に基づくグリッド取引についてモスクワ取引所(MOEX)で考察します。市場で取引する場合、最も単純な戦略の1つは、市場価格を「キャッチ」するように設計された注文のグリッドです。
preview
DoEasyライブラリの時系列(第54部): 抽象基本指標の子孫クラス

DoEasyライブラリの時系列(第54部): 抽象基本指標の子孫クラス

本稿では、基本抽象指標の子孫オブジェクトのクラスの作成について検討しています。このようなオブジェクトは、指標EAを作成し、さまざまな指標と価格のデータ値統計を収集および取得する機能へのアクセスを備えています。また、プログラムで作成された各指標のプロパティとデータにアクセスできる指標オブジェクトコレクションを作成します。
preview
ニューラルネットワークが簡単に(第53回):報酬の分解

ニューラルネットワークが簡単に(第53回):報酬の分解

報酬関数を正しく選択することの重要性については、すでに何度かお話ししました。報酬関数は、個々の行動に報酬またはペナルティを追加することでエージェントの望ましい行動を刺激するために使用されます。しかし、エージェントによる信号の解読については未解決のままです。この記事では、訓練されたエージェントに個々のシグナルを送信するという観点からの報酬分解について説明します。
preview
DoEasy - コントロール(第7部):テキストラベルコントロール

DoEasy - コントロール(第7部):テキストラベルコントロール

今回の記事では、WinFormsテキストラベルコントロールオブジェクトのクラスを作成します。このようなオブジェクトはコンテナをどこにでも配置できますが、独自の機能はMS Visual Studioテキストラベルの機能を繰り返します。表示されるテキストのフォントパラメータは設定できます。
preview
MQL5の圏論(第11回):グラフ

MQL5の圏論(第11回):グラフ

この記事は、MQL5での圏論の実装を考察する連載の続きです。ここでは、取引システムへのクローズアウト戦略を開発する際に、グラフ理論をモノイドやその他のデータ構造とどのように統合できるかを検討します。
preview
母集団最適化アルゴリズム:細菌採餌最適化(BFO)

母集団最適化アルゴリズム:細菌採餌最適化(BFO)

大腸菌の採餌戦略は、科学者にBFO最適化アルゴリズムの作成を促しました。このアルゴリズムには、最適化に対する独自のアイデアと有望なアプローチが含まれており、さらに研究する価値があります。
preview
ニューラルネットワークが簡単に(第96回):マルチスケール特徴量抽出(MSFformer)

ニューラルネットワークが簡単に(第96回):マルチスケール特徴量抽出(MSFformer)

長期的な依存関係と短期的な特徴量の効率的な抽出と統合は、時系列分析において依然として重要な課題です。正確で信頼性の高い予測モデルを作成するためには、それらを適切に理解し、統合することが必要です。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第5回):TelegramからMQL5にコマンドを送信し、リアルタイムの応答を受信する

MQL5-Telegram統合エキスパートアドバイザーの作成(第5回):TelegramからMQL5にコマンドを送信し、リアルタイムの応答を受信する

この記事では、MQL5とTelegram間のリアルタイム通信を容易にするためのいくつかのクラスを作成します。Telegramからコマンドを取得し、それをデコードして解釈し、適切な応答を送り返すことに重点を置きます。最終的には、これらの相互作用が取引環境内で効果的にテストされ、運用されていることを確認します。
preview
初心者からプロまでMQL5をマスターする(第4回):配列、関数、グローバルターミナル変数について

初心者からプロまでMQL5をマスターする(第4回):配列、関数、グローバルターミナル変数について

この記事は初心者向け連載の続きです。データ配列、データと関数の相互作用、および異なるMQL5プログラム間でのデータ交換を可能にするグローバルターミナル変数について詳しく説明します。
preview
エキスパートアドバイザーの堅牢性テスト

エキスパートアドバイザーの堅牢性テスト

戦略開発には、多くの複雑な要素が含まれていますが、これらの多くは初心者トレーダーには十分に伝えられていません。その結果、私自身を含め多くのトレーダーが、こうした教訓を痛みを伴う経験を通じて学ぶことになりました。この記事では、MQL5で戦略を開発する際に初心者トレーダーが直面しがちな一般的な落とし穴について、私の観察に基づいて解説します。EAの信頼性を見極め、簡単に実践できる方法で自作EAの堅牢性を検証するための、さまざまなヒントやコツ、具体例を紹介します。本記事の目的は、読者がEA購入時の詐欺を回避し、自身の戦略開発での失敗を未然に防げるよう支援することです。
preview
ニューラルネットワークの実験(第1回):幾何学の再検討

ニューラルネットワークの実験(第1回):幾何学の再検討

この記事では、実験と非標準的なアプローチを使用して、収益性の高い取引システムを開発し、ニューラルネットワークがトレーダーに役立つかどうかを確認します。
preview
知っておくべきMQL5ウィザードのテクニック(第04回):線形判別分析

知っておくべきMQL5ウィザードのテクニック(第04回):線形判別分析

今日のトレーダーは哲学者であり、ほとんどの場合、新しいアイデアを探して試し、変更するか破棄するかを選択します。これは、かなりの労力を要する探索的プロセスです。この連載では、MQL5ウィザードがこの取り組みにおけるトレーダーの主力であるべきであることを示しています。
preview
知っておくべきMQL5ウィザードのテクニック(第12回):ニュートン多項式

知っておくべきMQL5ウィザードのテクニック(第12回):ニュートン多項式

ニュートン多項式は、数点の集合から二次方程式を作るもので、時系列を見るには古風だが興味深いアプローチです。この記事では、このアプローチをトレーダーがどのような面で役立てることができるかを探るとともに、その限界についても触れてみたいと思います。
preview
DoEasy - コントロール(第2部):CPanelクラスでの作業

DoEasy - コントロール(第2部):CPanelクラスでの作業

今回は、グラフィック要素の処理に関連するエラーを取り除き、CPanelコントロールの開発を継続する予定です。特に、すべてのパネルテキストオブジェクトにデフォルトで使用されるフォントのパラメータを設定するメソッドを実装します。
preview
MQL5の圏論(第20回):セルフアテンションとTransformerへの回り道

MQL5の圏論(第20回):セルフアテンションとTransformerへの回り道

ちょっと寄り道して、chatGPTのアルゴリズムの一部について考えてみたいとおもいます。自然変換から借用した類似点や概念はあるのでしょうか。シグナルクラス形式のコードを用いて、これらの疑問やその他の質問に楽しく答えようと思います。
preview
MQL5での取引戦略の自動化(第1回):Profitunityシステム(ビル・ウィリアムズ著「Trading Chaos」)

MQL5での取引戦略の自動化(第1回):Profitunityシステム(ビル・ウィリアムズ著「Trading Chaos」)

この記事では、ビル・ウィリアムズのProfitunityシステムを詳しく分析し、その核心となる構成要素や、市場の混乱の中での独自の取引アプローチを解説します。MQL5用いたシステムの実装方法を、主要なインジケーターやエントリー/エグジットシグナルの自動化に焦点を当てながら説明します。さらに、戦略のテストと最適化をおこない、さまざまな市場環境におけるパフォーマンスについて考察します。
preview
ダイナミックマルチペアEAの形成(第4回):ボラティリティとリスク調整

ダイナミックマルチペアEAの形成(第4回):ボラティリティとリスク調整

このフェーズでは、マルチペアEAを微調整し、ATRなどのボラティリティ指標を活用してリアルタイムで取引サイズとリスクを調整します。これにより、一貫性の向上、資金保護、そしてさまざまな市場状況下でのパフォーマンス改善を実現します。
preview
一からの取引エキスパートアドバイザーの開発(第30部):指標としてのCHART TRADE?

一からの取引エキスパートアドバイザーの開発(第30部):指標としてのCHART TRADE?

今日は再びChart Tradeを使用しますが、今回はチャート上に存在する場合と存在しない場合があるオンチャート指標になります。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する

MQL5で自己最適化エキスパートアドバイザーを構築する

どのような市場にも対応できる専門的なエキスパートアドバイザー(EA)を構築します。
preview
一からの取引エキスパートアドバイザーの開発(第27部):未来に向かって(II)

一からの取引エキスパートアドバイザーの開発(第27部):未来に向かって(II)

チャート上直接の発注システムをより完全にしましょう。この記事では、発注システムを修正する方法、またはより直感的にする方法を示します。