MQL5言語のプログラミング例に関する記事

icon

MQL5言語でMetaTraderプラットフォームのインジケータと自動売買ロボットを作成する方法を示すコード例を含む膨大な記事のコレクションにアクセスします。ソースコードは記事に添付されているので、MetaEditorで開いて実行して、アプリがどのように機能するかを確認できます。

これらの記事は自動取引初心者にも、プログラム経験があるプロのトレーダーにも役に立つでしょう。それらは単に例を特徴とするだけではなく、新しいアイデアも含んでいます。

新しい記事を追加
最新 | ベスト
preview
エキスパートアドバイザーの堅牢性テスト

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

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

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

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

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

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

プログラミングパラダイムについて(第2部):オブジェクト指向アプローチによるプライスアクションエキスパートアドバイザーの開発

オブジェクト指向プログラミングのパラダイムとMQL5コードへの応用について学びます。この第2回目の記事では、オブジェクト指向プログラミングの具体的な内容をより深く掘り下げ、実践的な例を通して実体験を提供します。EMA指標とローソク足価格データを使用した、手続き型プライスアクションエキスパートアドバイザー(EA)をオブジェクト指向コードに変換する方法を学びます。
preview
初心者からプロまでMQL5をマスターする(第4回):配列、関数、グローバルターミナル変数について

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

この記事は初心者向け連載の続きです。データ配列、データと関数の相互作用、および異なるMQL5プログラム間でのデータ交換を可能にするグローバルターミナル変数について詳しく説明します。
preview
MQL5とPythonで自己最適化エキスパートアドバイザーを構築する(第3回):Boom 1000アルゴリズムの解読

MQL5とPythonで自己最適化エキスパートアドバイザーを構築する(第3回):Boom 1000アルゴリズムの解読

本連載では、動的な市場状況に自律的に適応できるエキスパートアドバイザー(EA)を構築する方法について説明します。本日の記事では、Derivの合成市場に合わせてディープニューラルネットワークを調整してみます。
DoEasyライブラリでのその他のクラス(第72部): コレクション内のチャートオブジェクトパラメータの追跡と記録
DoEasyライブラリでのその他のクラス(第72部): コレクション内のチャートオブジェクトパラメータの追跡と記録

DoEasyライブラリでのその他のクラス(第72部): コレクション内のチャートオブジェクトパラメータの追跡と記録

本稿では、チャートオブジェクトクラスとそのコレクションの操作を完成します。また、チャートプロパティとそのウィンドウの変更の自動追跡を実装し、オブジェクトプロパティに新しいパラメータを保存します。このような変更により、を将来チャートコレクション全体のイベント機能実装できるようになります。
preview
初心者からエキスパートへ:サポートとレジスタンスの強度指標(SRSI)

初心者からエキスパートへ:サポートとレジスタンスの強度指標(SRSI)

本記事では、MQL5プログラミングを活用して市場の価格レベルを正確に特定し、弱いレベルと強いレベルを見分ける方法についての知見を共有します。さらに、実用的なサポートおよびレジスタンス強度インジケーター(SRSI)を完全に開発していきます。
preview
CCI指標:アップグレードと新機能

CCI指標:アップグレードと新機能

この記事では、CCI指標をアップグレードする可能性について検討するとともに、この指標の修正を提示します。
DoEasyライブラリのグラフィックス(第73部): グラフィック要素のフォームオブジェクト
DoEasyライブラリのグラフィックス(第73部): グラフィック要素のフォームオブジェクト

DoEasyライブラリのグラフィックス(第73部): グラフィック要素のフォームオブジェクト

本稿からは、ライブラリでのグラフィックの使用に関する新しい大きなセクションを始めます。本稿では、マウスステータスオブジェクト、すべてのグラフィック要素の基本オブジェクト、およびライブラリのグラフィック要素のフォームオブジェクトのクラスを作成します。
DoEasyライブラリのグラフィックス(第75部): 基本的なグラフィック要素でプリミティブとテキストを処理するメソッド
DoEasyライブラリのグラフィックス(第75部): 基本的なグラフィック要素でプリミティブとテキストを処理するメソッド

DoEasyライブラリのグラフィックス(第75部): 基本的なグラフィック要素でプリミティブとテキストを処理するメソッド

本稿では引き続き、CCanvas標準ライブラリクラスを使用したすべてのライブラリグラフィカルオブジェクトの基本的なグラフィック要素クラスを開発します。グラフィカルプリミティブを描画するメソッドとグラフィック要素オブジェクトにテキストを表示するメソッドを作成します。
preview
DoEasy - コントロール(第6部):パネルコントロール、内部コンテンツに合わせたコンテナサイズの自動変更

DoEasy - コントロール(第6部):パネルコントロール、内部コンテンツに合わせたコンテナサイズの自動変更

本稿では、Panel WinFormsオブジェクトの作業を続け、パネル内にあるDockオブジェクトの一般的なサイズに合わせた自動サイズ変更を実装します。さらに、銘柄ライブラリオブジェクトに新しいプロパティを追加します。
preview
母集団最適化アルゴリズム:焼きなまし(SA)アルゴリズム(第1部)

母集団最適化アルゴリズム:焼きなまし(SA)アルゴリズム(第1部)

焼きなましアルゴリズムは、金属の焼きなまし過程にヒントを得たメタヒューリスティックです。この記事では、このアルゴリズムを徹底的に分析し、この広く知られている最適化方法を取り巻く多くの一般的な信念や神話を暴露します。この記事の後半では、カスタムの等方的焼きなまし(Simulated Isotropic Annealing、SIA)アルゴリズムについて説明します。
preview
プライスアクション分析ツールキットの開発(第1回):チャートプロジェクター

プライスアクション分析ツールキットの開発(第1回):チャートプロジェクター

このプロジェクトは、MQL5アルゴリズムを活用して、MetaTrader 5向けの包括的な分析ツールセットを開発することを目的としています。これらのツールは、スクリプトやインジケーターからAIモデルやエキスパートアドバイザー(EA)に至るまで幅広く、市場分析プロセスの自動化を実現します。場合によっては、これらのツールによって、高度な分析を人間の介入なしで実行し、適切なプラットフォームに結果を予測することも可能になります。どのようなチャンスも逃しません。一緒に強力な市場分析用カスタムツールチェストを構築するプロセスを探求していきましょう。まず、「チャートプロジェクター」と名付けたシンプルなMQL5プログラムを開発することから始めます。
preview
母集団最適化アルゴリズム:Shuffled Frog-Leaping (SFL) アルゴリズム

母集団最適化アルゴリズム:Shuffled Frog-Leaping (SFL) アルゴリズム

本稿では、Shuffled Frog-Leaping (SFL)アルゴリズムの詳細な説明と、最適化問題を解く上でのその能力を紹介します。SFLアルゴリズムは、自然環境におけるカエルの行動から着想を得ており、関数最適化への新しいアプローチを提供します。SFLアルゴリズムは、効率的で柔軟なツールであり、様々な種類のデータを処理し、最適解を得ることができます。
preview
DoEasy-コントロール(第15部):TabControl WinFormsオブジェクト — 複数行のタブヘッダー、タブ処理メソッド

DoEasy-コントロール(第15部):TabControl WinFormsオブジェクト — 複数行のタブヘッダー、タブ処理メソッド

この記事では、TabControl WinFormオブジェクトの作業を続けます。タブフィールドオブジェクトクラスを作成して複数の行にタブヘッダーを配置できるようにし、オブジェクトタブを処理するメソッドを追加します。
preview
DoEasy-コントロール(第18部):TabControlでタブをスクロールする機能

DoEasy-コントロール(第18部):TabControlでタブをスクロールする機能

この記事では、ヘッダーバーがコントロールのサイズに収まらない場合に備えて、TabControl WinFormsオブジェクトにヘッダースクロールコントロールボタンを配置します。また、トリミングされたタブヘッダーをクリックしたときのヘッダーバーのシフトを実装します。
母集団最適化アルゴリズム
母集団最適化アルゴリズム

母集団最適化アルゴリズム

最適化アルゴリズム(OA)の分類についての入門記事です。この記事では、OAを比較するためのテストスタンド(関数群)を作成し、広く知られたアルゴリズムの中から最も普遍的なものを特定することを試みています。
preview
知っておくべきMQL5ウィザードのテクニック(第18回):固有ベクトルによるニューラルアーキテクチャの探索

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

ニューラルアーキテクチャー探索は、理想的なニューラルネットワーク設定を決定するための自動化されたアプローチで、多くのオプションや大規模なテストデータセットに直面したときにプラスになります。固有ベクトルをペアにすることで、この過程がさらに効率的になることを検証します。
preview
MQL5クックブック - マクロ経済イベントデータベース

MQL5クックブック - マクロ経済イベントデータベース

この記事では、SQLiteエンジンに基づいてデータベースを処理する可能性について説明します。CDatabaseクラスは、OOP原則を便利かつ効率的に使用するために作成されました。その後、マクロ経済イベントのデータベースの作成と管理に関与しています。この記事では、CDatabaseクラスの複数のメソッドを使用する例を示します。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する(第11回):初心者向け線形代数入門

MQL5で自己最適化エキスパートアドバイザーを構築する(第11回):初心者向け線形代数入門

本記事では、MQL5の行列・ベクトルAPIで利用できる強力な線形代数ツールの基礎を解説します。このAPIを効果的に利用するためには、これらの手法を賢く活用するための線形代数の原理をしっかり理解しておく必要があります。本稿は、MQL5でアルゴリズム取引をおこなう際にこの強力なライブラリを活用して作業を開始するために必要となる線形代数の最も重要な規則のいくつかを、読者が直感的に理解できるレベルで身につけることを目的としています。
DoEasyライブラリのグラフィックス(第79部): 「アニメーションフレーム」オブジェクトクラスとその子孫オブジェクト
DoEasyライブラリのグラフィックス(第79部): 「アニメーションフレーム」オブジェクトクラスとその子孫オブジェクト

DoEasyライブラリのグラフィックス(第79部): 「アニメーションフレーム」オブジェクトクラスとその子孫オブジェクト

本稿では、単一のアニメーションフレームとその子孫のクラスを開発します。このクラスでは、形状の下の背景を維持および復元しながら、形状を描画できるようにします。
preview
どんな市場でも優位性を得る方法(第5回):FRED EURUSD代替データ

どんな市場でも優位性を得る方法(第5回):FRED EURUSD代替データ

本日の議論では、セントルイス連邦準備銀行の広義のドル指数に関する代替日次データとその他のマクロ経済指標の集合を使用して、EURUSDの将来の為替レートを予測しました。残念ながら、データはほぼ完璧な相関関係にあるように見えますが、モデルの精度において際立った向上は実現できず、投資家は代わりに通常の市場相場を使用した方がよい可能性があることを示唆している可能性があります。
preview
Across Neighbourhood Search (ANS)

Across Neighbourhood Search (ANS)

この記事では、問題の詳細と検索空間内の環境のダイナミクスを考慮できる柔軟でインテリジェントな最適化手法の開発における重要なステップとしてのANSアルゴリズムの可能性を明らかにします。
DoEasyライブラリのグラフィックス(第81部): ライブラリオブジェクトへのグラフィックの統合
DoEasyライブラリのグラフィックス(第81部): ライブラリオブジェクトへのグラフィックの統合

DoEasyライブラリのグラフィックス(第81部): ライブラリオブジェクトへのグラフィックの統合

すでに作成されたオブジェクトを以前に作成されたライブラリオブジェクトに統合する時が来ました。最終的には各ライブラリオブジェクトに独自のグラフィカルオブジェクトが付与されるようになり、ユーザーはプログラムを操作できるようになります。
preview
DoEasy-コントロール(第9部):WinFormsオブジェクトメソッド、RadioButtonおよびButtonコントロールの再配置

DoEasy-コントロール(第9部):WinFormsオブジェクトメソッド、RadioButtonおよびButtonコントロールの再配置

この記事では、WinFormsオブジェクトクラスメソッドの名前を修正し、ButtonおよびRadioButton WinFormsオブジェクトを作成します。
preview
母集団最適化アルゴリズム:微小人工免疫系(Micro-AIS)

母集団最適化アルゴリズム:微小人工免疫系(Micro-AIS)

この記事では、身体の免疫系の原理に基づいた最適化手法、つまりAISを改良した微小人工免疫系(Micro Artificial Immune System:Micro-AIS)について考察します。Micro-AISは、より単純な免疫系のモデルと単純な免疫情報処理操作を用います。また、この記事では、従来のAISと比較した場合のMicro-AISの利点と欠点についても触れています。
preview
知っておくべきMQL5ウィザードのテクニック(第17回):多通貨取引

知っておくべきMQL5ウィザードのテクニック(第17回):多通貨取引

ウィザードを介してEAが組み立てられた場合、デフォルトでは複数の通貨をまたいだ取引は利用できません。トレーダーが一度に複数の銘柄から自分のアイデアをテストする際に、2つの可能なトリックを検討します。
preview
初心者からエキスパートへ:予測価格経路

初心者からエキスパートへ:予測価格経路

フィボナッチレベルは、市場がしばしば尊重する実践的な枠組みを提供し、価格が反応しやすいゾーンを明確に示します。本記事では、フィボナッチリトレースメントのロジックを用いて将来の値動きを予測し、指値注文で押し目を狙うエキスパートアドバイザー(EA)を構築します。スイング検出からレベル描画、リスク管理、注文執行まで、一連のワークフロー全体を解説します。
DIYテクニカル指標
DIYテクニカル指標

DIYテクニカル指標

この記事では、独自のテクニカル指標を作成できるアルゴリズムについて検討します。非常に単純な初期仮定で、非常に複雑で興味深い結果を得る方法を学びます。
preview
MetaTrader 5でのモンテカルロ並べ替え検定

MetaTrader 5でのモンテカルロ並べ替え検定

この記事では、Metatrader 5のみを使用して、任意のエキスパートアドバイザー(EA)でシャッフルされたティックデータに基づいて並べ替え検定を実施する方法を見てみましょう。
preview
MQL5で取引管理者パネルを作成する(第3回):ビジュアルスタイリングによるGUIの強化(I)

MQL5で取引管理者パネルを作成する(第3回):ビジュアルスタイリングによるGUIの強化(I)

この記事では、MQL5を使用して、取引管理パネルのグラフィカルユーザーインターフェイス(GUI)を視覚的にスタイル設定することに焦点を当てます。MQL5で利用できるさまざまなテクニックと機能について説明します。これらのテクニックと機能により、インターフェイスのカスタマイズと最適化が可能になり、魅力的な外観を維持しながらトレーダーのニーズを満たすことができます。
preview
RestAPIを統合したMQL5強化学習エージェントの開発(第3回):MQL5で自動手番とテストスクリプトを作成する

RestAPIを統合したMQL5強化学習エージェントの開発(第3回):MQL5で自動手番とテストスクリプトを作成する

この記事では、MQL5関数とユニットテストを統合した、Pythonによる三目並べの自動手番の実装について説明します。目標は、MQL5でのテストを通じて、対戦のインタラクティブ性を向上させ、システムの信頼性を確保することです。このプレゼンテーションでは、対戦ロジックの開発、統合、実地テストについて説明し、最後にダイナミックな対戦環境と堅牢な統合システムを作成します。
preview
初心者のためのMQL5におけるファンダメンタル分析とテクニカル分析戦略の組み合わせ

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

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

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

カルマンフィルターは、価格変動のノイズを除去して金融時系列の真の状態を推定するために、アルゴリズム取引で用いられる再帰的なアルゴリズムです。新しい市場データに基づいて予測を動的に更新するため、平均回帰のような適応型戦略において非常に有用です。本記事ではまず、カルマンフィルターの計算方法と実装について紹介します。次に、このフィルターをクラシックな平均回帰型の外国為替(FX)戦略に適用する例を示します。最後に、異なる通貨ペアにおいてカルマンフィルターと移動平均を比較し、さまざまな統計分析をおこないます。
preview
DoEasy-コントロール(第14部):グラフィック要素に名前を付けるための新しいアルゴリズム。TabControl WinFormsオブジェクトへの作業の継続

DoEasy-コントロール(第14部):グラフィック要素に名前を付けるための新しいアルゴリズム。TabControl WinFormsオブジェクトへの作業の継続

この記事では、カスタムグラフィックを構築するためのすべてのグラフィック要素に名前を付けるための新しいアルゴリズムを作成し、TabControl WinFormsオブジェクトの開発を継続する予定です。
DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備
DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備

DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備

この記事では、ティックデータの更新をリアルタイムで実装し、板情報を操作するための銘柄オブジェクトクラスを準備します(DOM自体は次の記事で実装されます)。
preview
母集団最適化アルゴリズム:電磁気的アルゴリズム(ЕМ)

母集団最適化アルゴリズム:電磁気的アルゴリズム(ЕМ)

この記事では、様々な最適化問題において、電磁気的アルゴリズム(EM、electroMagnetism-like Algorithm)を使用する原理、方法、可能性について解説しています。EMアルゴリズムは、大量のデータや多次元関数を扱うことができる効率的な最適化ツールです。
preview
Candlestick Trend Constraintモデルの構築(第10回):戦略的ゴールデンクロスとデスクロス(EA)

Candlestick Trend Constraintモデルの構築(第10回):戦略的ゴールデンクロスとデスクロス(EA)

移動平均線のクロスオーバーに基づくゴールデンクロスおよびデッドクロス戦略は、長期的な市場トレンドを見極める上で最も信頼性の高い指標の一つであることをご存知でしょうか。ゴールデンクロスは、短期移動平均線が長期移動平均線を上回るときに強気トレンドの到来を示します。一方、デッドクロスは、短期移動平均線が長期線を下回ることで弱気トレンドの兆候を示します。これらの戦略は非常にシンプルでありながら効果的ですが、手動で運用すると機会の逸失やエントリーの遅れが発生しやすいという課題があります。
preview
ビジュアルプログラミング言語DRAKON:MQL開発者と顧客のコミュニケーションツール

ビジュアルプログラミング言語DRAKON:MQL開発者と顧客のコミュニケーションツール

DRAKONは、ロシアの宇宙プロジェクト(例えば、「Buran」再利用可能宇宙船プロジェクト)のプログラマーと、異なる分野の専門家(生物学者、物理学者、エンジニアなど)との対話を簡素化するために設計されたビジュアルプログラミング言語です。この記事では、DRAKONが、コードに触れたことがない人にとっても、アルゴリズムの作成にアクセスしやすく、直感的にし、また、顧客が取引ロボットを注文する際に自分の考えを説明しやすくし、複雑な関数でプログラマーのミスを少なくする方法についてお話します。