MQL5プログラミング記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
自動で動くEAを作る(第14回):自動化(VI)

自動で動くEAを作る(第14回):自動化(VI)

今回は、この連載で得た知識をすべて実践してみましょう。最終的には、100%自動化された機能的なシステムを構築します。しかしその前に、まだ最後の詳細を学ばなければなりません。
preview
EAを用いたリスクとキャピタルの管理

EAを用いたリスクとキャピタルの管理

この記事では、バックテストレポートでは見えないこと、自動売買ソフトを使用する際の注意点、エキスパートアドバイザー(EA)を使用している場合の資金管理、自動売買をおこなっている場合に取引活動を続けるために大きな損失をカバーする方法について説明します。
preview
母集団最適化アルゴリズム:人工蜂コロニー(ABC)

母集団最適化アルゴリズム:人工蜂コロニー(ABC)

今回は、人工蜂コロニーアルゴリズムを研究し、機能空間を研究する新しい原理で知識を補います。今回は、古典アルゴリズムについて、私の解釈を紹介します。
preview
MetaTraderのMultibot:1つのチャートから複数のロボットを起動させる

MetaTraderのMultibot:1つのチャートから複数のロボットを起動させる

今回は、個々のチャートにロボットの各インスタンスを設定する必要がなく、1つのチャートにのみ接続された状態で複数のチャートで使用できる汎用MetaTraderロボットを作成するための簡単なテンプレートについて考えてみます。
preview
DoEasyライブラリの時系列(第54部): 抽象基本指標の子孫クラス

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

本稿では、基本抽象指標の子孫オブジェクトのクラスの作成について検討しています。このようなオブジェクトは、指標EAを作成し、さまざまな指標と価格のデータ値統計を収集および取得する機能へのアクセスを備えています。また、プログラムで作成された各指標のプロパティとデータにアクセスできる指標オブジェクトコレクションを作成します。
DoEasyライブラリでの価格(第63部): 板情報とその抽象リクエストクラス
DoEasyライブラリでの価格(第63部): 板情報とその抽象リクエストクラス

DoEasyライブラリでの価格(第63部): 板情報とその抽象リクエストクラス

本稿では、板情報を使用するための機能の開発を開始します。また、板情報抽象注文オブジェクトとその子孫のクラスも作成します。
preview
データサイエンスと機械学習(第13回):主成分分析(PCA)で金融市場分析を改善する

データサイエンスと機械学習(第13回):主成分分析(PCA)で金融市場分析を改善する

主成分分析(Principal component analysis、PCA)で金融市場分析に革命を起こしましょう。この強力な手法がどのようにデータの隠れたパターンを解き放ち、潜在的な市場動向を明らかにし、投資戦略を最適化するかをご覧ください。この記事では、PCAが複雑な金融データを分析するための新しいレンズをどのように提供できるかを探り、従来のアプローチでは見逃されていた洞察を明らかにします。金融市場データにPCAを適用することで競争力を高め、時代を先取りする方法をご覧ください。
preview
MetaTrader 5用のMQTTクライアントの開発:TDDアプローチ

MetaTrader 5用のMQTTクライアントの開発:TDDアプローチ

この記事では、MQL5のネイティブMQTTクライアント開発における最初の試みについて報告します。MQTTは、クライアントサーバーのパブリッシュ/サブスクライブメッセージングトランスポートプロトコルです。MQTTは軽量、オープン、シンプルで、簡単に実装できるように設計されています。これらの特性により、さまざまな状況での使用に最適です。
preview
DoEasy - コントロール(第8部):カテゴリ(GroupBoxおよびCheckBoxのコントロール)による基本WinFormsオブジェクト

DoEasy - コントロール(第8部):カテゴリ(GroupBoxおよびCheckBoxのコントロール)による基本WinFormsオブジェクト

この記事では、「GroupBox」および「CheckBox」WinFormsオブジェクトの作成、およびWinFormsオブジェクトカテゴリの基本オブジェクトの開発について検討します。作成されたすべてのオブジェクトはまだ静的で、マウスと対話することはできません。
preview
ニューラルネットワークの実験(第4回):テンプレート

ニューラルネットワークの実験(第4回):テンプレート

この記事では、実験と非標準的な方法を使用して収益性の高い取引システムを開発し、ニューラルネットワークがトレーダーに役立つかどうかを確認します。ニューラルネットワークを取引に活用するための自給自足ツールとしてMetaTrader 5を使用します。簡単に説明します。
preview
DoEasyライブラリの時系列(第55部): 指標コレクションクラス

DoEasyライブラリの時系列(第55部): 指標コレクションクラス

本稿では、指標オブジェクトクラスとそのコレクションの開発を続けます。指標オブジェクトごとに、その説明と正しいコレクションクラスを作成して、エラーなしのストレージを作成し、コレクションリストから指標オブジェクトを取得します。
preview
MQL5の圏論(第2回)

MQL5の圏論(第2回)

圏論は数学の一分野であり、多様な広がりを見せていますが、MQL5コミュニティではまだ比較的知られていません。この連載では、その概念のいくつかを紹介し、考察することで、コメントや議論を呼び起こし、トレーダーの戦略開発におけるこの注目すべき分野の利用を促進することを目的としたオープンなライブラリを確立することを目指しています。
preview
MQL5でボリンジャーバンド取引戦略を実装する:ステップごとのガイド

MQL5でボリンジャーバンド取引戦略を実装する:ステップごとのガイド

ボリンジャーバンド売買戦略に基づくMQL5での自動売買アルゴリズム実装のためのステップごとのガイドです。トレーダーに役立つEAの作成に基づく詳細なチュートリアルです。
preview
ニューラルネットワークが簡単に(第53回):報酬の分解

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

報酬関数を正しく選択することの重要性については、すでに何度かお話ししました。報酬関数は、個々の行動に報酬またはペナルティを追加することでエージェントの望ましい行動を刺激するために使用されます。しかし、エージェントによる信号の解読については未解決のままです。この記事では、訓練されたエージェントに個々のシグナルを送信するという観点からの報酬分解について説明します。
preview
知っておくべきMQL5ウィザードのテクニック(第42回):ADXオシレーター

知っておくべきMQL5ウィザードのテクニック(第42回):ADXオシレーター

ADXは、一部のトレーダーが一般的なトレンドの強さを測定するために使用する、もう1つの比較的人気のあるテクニカルインジケーターです。これは他の2つのインジケーターの組み合わせとして機能し、オシレーターとして表示されます。この記事では、MQL5ウィザードアセンブリとそのサポートクラスを使用して、そのパターンについて説明します。
preview
エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第2部):出来高指標とビルウィリアムズの指標

エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第2部):出来高指標とビルウィリアムズの指標

この記事では、標準的な出来高指標とビルウィリアムズ指標のカテゴリについて見ていきます。パラメータの宣言と設定、指標の初期化と解除、EAの指標バッファからのデータとシグナルの受信など、EAで指標を使用するためのすぐに使えるテンプレートを作成します。
preview
MQL5入門(第3部):MQL5のコア要素をマスターする

MQL5入門(第3部):MQL5のコア要素をマスターする

この初心者向けの記事では、MQL5プログラミングの基本を解説します。配列、カスタム関数、プリプロセッサ、イベント処理など、すべてのコードをわかりやすく説明し、すべての行にアクセスできるようにします。すべてのステップで理解を深める独自のアプローチで、MQL5のパワーを引き出しましょう。この記事はMQL5をマスターするための基礎となるもので、各コード行の説明に重点を置き、明確で充実した学習体験を提供します。
preview
MQL5でパラボリックSARと単純移動平均(SMA)を使用した高速取引戦略アルゴリズムを実装する

MQL5でパラボリックSARと単純移動平均(SMA)を使用した高速取引戦略アルゴリズムを実装する

この記事では、パラボリックSARと単純移動平均(SMA)インジケーターを活用し、応答性の高い取引戦略を構築する高速取引型エキスパートアドバイザー(EA)をMQL5で開発します。インジケーターの使用方法、シグナルの生成、テストおよび最適化プロセスなど、戦略の実装について詳しく解説します。
preview
一からの取引エキスパートアドバイザーの開発(第9部):概念的な飛躍(II)

一からの取引エキスパートアドバイザーの開発(第9部):概念的な飛躍(II)

この記事では、Chart Tradeをフローティングウィンドウに配置します。前稿では、フローティングウィンドウ内でテンプレートを使用できるようにする基本的なシステムを作成しました。
preview
MFIによる取引システムの設計方法を学ぶ

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

最も人気のあるテクニカル指標に基づいて取引システムを設計する連載のこの新しい記事では、新しくマネーフローインデックス(Money Flow Index、MFI)テクニカル指標を考察します。その詳細を学び、MQL5によって簡単な取引システムを開発し、MetaTrader 5で実行します。
preview
ニューラルネットワークが簡単に(第35回):ICM(Intrinsic Curiosity Module、内発的好奇心モジュール)

ニューラルネットワークが簡単に(第35回):ICM(Intrinsic Curiosity Module、内発的好奇心モジュール)

強化学習アルゴリズムの研究を続けます。これまで検討してきたすべてのアルゴリズムでは、あるシステム状態から別の状態への遷移ごとに、エージェントがそれぞれの行動を評価できるようにするための報酬方策を作成する必要がありました。しかし、この方法はかなり人工的なものです。実際には、行動と報酬の間には、ある程度の時間差があります。今回は、行動から報酬までの様々な時間の遅れを扱うことができるモデル訓練アルゴリズムに触れてみましょう。
preview
Pythonを使用したEA用ディープラーニングONNXモデルの季節性フィルタと期間

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

Pythonでディープラーニングのモデルを作成する際、季節性から恩恵を受けることはできるのでしょうか。ONNXモデルのデータをフィルタすることでより良い結果が得られるのでしょうか。どの期間を使用するべきでしょうか。この記事では、これらすべてを取り上げます。
DoEasyライブラリでの価格(第65部): 板情報コレクションとMQL5.comシグナル操作クラス
DoEasyライブラリでの価格(第65部): 板情報コレクションとMQL5.comシグナル操作クラス

DoEasyライブラリでの価格(第65部): 板情報コレクションとMQL5.comシグナル操作クラス

本稿では、すべての銘柄の板情報コレクションクラスを作成し、シグナルオブジェクトクラスを作成することによってMQL5.comシグナルサービスを使用するための機能の開発を開始します。
preview
一からの取引エキスパートアドバイザーの開発(第20部):新規受注システム(III)

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

新しい受注システムの導入を継続します。このようなシステムを作るには、MQL5を使いこなすだけでなく、MetaTrader 5プラットフォームが実際にどのように機能し、どのようなリソースを提供しているかを理解することが必要です。
preview
一からの取引エキスパートアドバイザーの開発(第26部):未来に向かって(I)

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

今日は、発注システムを次のレベルに引き上げます。ただしその前に、いくつかの問題を解決する必要があります。ここで、どのように働きたいか、取引日に何をするかに関連するいくつかの質問があります。
preview
DoEasy-コントロール(第17部):オブジェクトの非表示部分の切り取り、補助矢印ボタンのWinFormsオブジェクト

DoEasy-コントロール(第17部):オブジェクトの非表示部分の切り取り、補助矢印ボタンのWinFormsオブジェクト

この記事では、コンテナの外側にあるオブジェクトセクションを非表示にする機能を作成します。また、他のWinFormsオブジェクトの一部として使用する補助矢印ボタンオブジェクトを作成します。
preview
古典的な戦略をPythonで再構築する(第2回):ボリンジャーバンドのブレイクアウト

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

本稿では、線形判別分析(LDA: Linear Discriminant Analysis)とボリンジャーバンドを統合し、戦略的市場参入シグナルの生成を目的としたカテゴリ別ゾーン予測を活用する取引戦略を考察します。
preview
知っておくべきMQL5ウィザードのテクニック(第12回):ニュートン多項式

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

ニュートン多項式は、数点の集合から二次方程式を作るもので、時系列を見るには古風だが興味深いアプローチです。この記事では、このアプローチをトレーダーがどのような面で役立てることができるかを探るとともに、その限界についても触れてみたいと思います。
preview
MQL5の圏論(第20回):セルフアテンションとTransformerへの回り道

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

ちょっと寄り道して、chatGPTのアルゴリズムの一部について考えてみたいとおもいます。自然変換から借用した類似点や概念はあるのでしょうか。シグナルクラス形式のコードを用いて、これらの疑問やその他の質問に楽しく答えようと思います。
preview
DoEasy - コントロール(第2部):CPanelクラスでの作業

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

今回は、グラフィック要素の処理に関連するエラーを取り除き、CPanelコントロールの開発を継続する予定です。特に、すべてのパネルテキストオブジェクトにデフォルトで使用されるフォントのパラメータを設定するメソッドを実装します。
preview
MQL5における拡張ディッキー–フラー検定の実装

MQL5における拡張ディッキー–フラー検定の実装

本稿では、拡張ディッキー–フラー検定の実装を示し、Engle-Granger法を用いた共和分検定に適用します。
preview
一からの取引エキスパートアドバイザーの開発(第30部):指標としてのCHART TRADE?

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

今日は再びChart Tradeを使用しますが、今回はチャート上に存在する場合と存在しない場合があるオンチャート指標になります。
preview
知っておくべきMQL5ウィザードのテクニック(第04回):線形判別分析

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

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

知っておくべきMQL5ウィザードのテクニック(第18回):固有ベクトルによるニューラルアーキテクチャの探索

ニューラルアーキテクチャー探索は、理想的なニューラルネットワーク設定を決定するための自動化されたアプローチで、多くのオプションや大規模なテストデータセットに直面したときにプラスになります。固有ベクトルをペアにすることで、この過程がさらに効率的になることを検証します。
preview
Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

この記事では、RSIと移動平均指標に基づいて自動売買をおこなうDeus EAの実装手順を概説します。
preview
知っておくべきMQL5ウィザードのテクニック(第18回):固有ベクトルによるニューラルアーキテクチャの探索

知っておくべきMQL5ウィザードのテクニック(第18回):固有ベクトルによるニューラルアーキテクチャの探索

ニューラルアーキテクチャー探索は、理想的なニューラルネットワーク設定を決定するための自動化されたアプローチで、多くのオプションや大規模なテストデータセットに直面したときにプラスになります。固有ベクトルをペアにすることで、この過程がさらに効率的になることを検証します。
preview
独自のLLMをEAに統合する(第5部):LLMs(II)-LoRA-チューニングによる取引戦略の開発とテスト

独自のLLMをEAに統合する(第5部):LLMs(II)-LoRA-チューニングによる取引戦略の開発とテスト

今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じてファインチューニング(微調整)し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
preview
DoEasyライブラリの時系列(第56部):カスタム指標オブジェクト、コレクション内指標オブジェクトからのデータ取得

DoEasyライブラリの時系列(第56部):カスタム指標オブジェクト、コレクション内指標オブジェクトからのデータ取得

本稿では、EAで使用するためのカスタム指標オブジェクトの作成について検討します。ライブラリクラスを少し改善し、EAの指標オブジェクトからデータを取得するメソッドを追加しましょう。
preview
MQL5でONNXモデルをアンサンブルする方法の例

MQL5でONNXモデルをアンサンブルする方法の例

ONNX (Open Neural Network eXchange)は、ニューラルネットワークを表現するために構築されたオープンフォーマットです。この記事では、1つのエキスパートアドバイザー(EA)で2つのONNXモデルを同時に使用する方法を示します。
preview
ニューラルネットワークの実験(第1回):幾何学の再検討

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

この記事では、実験と非標準的なアプローチを使用して、収益性の高い取引システムを開発し、ニューラルネットワークがトレーダーに役立つかどうかを確認します。