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

icon

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

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

新しい記事を追加
最新 | ベスト
MQL5 クックブック: インジケーターサブウィンドウコンソールースクロールバー
MQL5 クックブック: インジケーターサブウィンドウコンソールースクロールバー

MQL5 クックブック: インジケーターサブウィンドウコンソールースクロールバー

様々なコントロールを試してみましょう。今回はスクロールバーを紹介します。「MQL5クックブック:インジケーターサブウィンドウコンソールーボタン」という以前の記事のように、すべての処理がインジケーターサブウィンドウにて実行されます。OnChartEvent()関数にてイベントを扱う詳しい詳細を提供しているので、上記の記事を読んでみてください。この点はこの記事においても言及されます。今回はMQL5リソースを用いて取得される金融商品情報の大きなリストのための垂直スクロールバーを作成します。
MQL5 でのアサーション
MQL5 でのアサーション

MQL5 でのアサーション

この記事では、MQL5でのアサーションの利用について扱います。アサーションメカニズムとアサーションを実装するための一般的なガイダンスを2つの例として提供します。
グラフィカルインタフェースIX:カラーピッカーコントロール(チャプター1)
グラフィカルインタフェースIX:カラーピッカーコントロール(チャプター1)

グラフィカルインタフェースIX:カラーピッカーコントロール(チャプター1)

本稿は、MetaTrader取引ターミナルのグラフィカルインタフェース作成ライブラリの開発に関するシリーズの第九部の初めとなります。それは2章で構成され、カラーピッカー、カラーボタン、プログレスバーや折れ線グラフなどのコントロールとインターフェースの新しい要素が提示されてます。
インディケータエミッションの積分特性計算
インディケータエミッションの積分特性計算

インディケータエミッションの積分特性計算

インディケータエミッションはマーケットリサーチでほとんど研究されていない分野です。時間依存性データのひじょうに大きな配列を処理することで起こる分析の難しさがその主な理由です。既存のグラフ分析は資源集約的に過ぎ、そのためエミッションの時系列を利用する簡素なアルゴリズムの開発をもたらしました。本稿では視覚的(直観的イメージ)分析がどのようにエミッションの積分特性の研究に置き換えることができるのかを示します。トレーダー、自動売買システムの開発者双方に興味深いものとなることでしょう。
preview
DoEasy - サービス関数(第2回):はらみ線パターン

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

今回は、引き続きDoEasyライブラリの価格パターンを見ていきましょう。また、プライスアクションフォーメーションのはらみ線パターンクラスも作成します。
MQL5 クックブック:Expert Advisorsにトレード条件を設定するためのインディケータ利用
MQL5 クックブック:Expert Advisorsにトレード条件を設定するためのインディケータ利用

MQL5 クックブック:Expert Advisorsにトレード条件を設定するためのインディケータ利用

本稿では MQL5 クックブックシリーズの先行記事をとおして作業をおこなってきているExpert Advisorの修正を続行します。今回は、Expert Advisor は値がポジションオープンの条件を確認するのに使用されるインディケータを使って強化されます。それに一点添えるために、外部パラメータにドロップダウンリストを作成し、3つのトレードインディケータの中から1つを選ぶことができるようにします。
DoEasyライブラリでのその他のクラス(第67部): チャットオブジェクトクラス
DoEasyライブラリでのその他のクラス(第67部): チャットオブジェクトクラス

DoEasyライブラリでのその他のクラス(第67部): チャットオブジェクトクラス

本稿では、(単一の取引製品チャートの)チャートオブジェクトクラスを作成し、MQL5シグナルオブジェクトのコレクションクラスを改善して、コレクションに格納されている各シグナルオブジェクトでリストの更新時にすべてのパラメータが更新されるようにします。
グラフィカルインタフェース  II:メインメニュー要素(チャプターー4)
グラフィカルインタフェース  II:メインメニュー要素(チャプターー4)

グラフィカルインタフェース II:メインメニュー要素(チャプターー4)

これは、グラフィカルインターフェイスに関するシリーズの第二部の最終章です。ここでは、メインメニューの作成を検討します。このコントロールの開発とユーザの行動に正確な反応するライブラリクラスのハンドラ設定が実証されます。また、メインメニューの項目にコンテキストメニューを取り付ける方法についても説明します。そのに加えて、現在非アクティブな要素のブロックも言及されます。
C plus plus テンプレートの代用としての疑似テンプレート使用
C plus plus テンプレートの代用としての疑似テンプレート使用

C plus plus テンプレートの代用としての疑似テンプレート使用

本稿はテンプレートは使わないが、プログラムスタイルはテンプレートに合ったものを保持する方法について述べていきます。カスタムメソッドを使ってテンプレートを実装することをお伝えします。また、指定のテンプレートを基にしたコード作成用既製のスクリプトを添付しています。
preview
時間の取扱い(第2部): 関数

時間の取扱い(第2部): 関数

証券会社のオフセットとGMTを自動で特定します。おそらく不十分な答えしかくれない(欠如した時間について説明することはいとわないでしょうが)証券会社にサポートを求める代わりに、時間が変わる週に証券会社が価格をどのように計算するかを自分で見ます。結局のところ、私たちはPCを持っているので、面倒な手作業ではなくプログラムを使用します。
最適化数点のシンプルな考え
最適化数点のシンプルな考え

最適化数点のシンプルな考え

最適化のプロセスにはコンピュータや MQL5 クラウドネットワーク検証エージェントのリソースも大量に必要とします。本稿では作業の促進とMetaTrader 5 ストラテジーテスタの改良に利用する簡単な考えをいくつか取り上げます。こういったアイデアはドキュメンテーション、フォーラム、記事から得ました。
怠慢は、進歩またはグラフィックスとインタラクティブに作業する方法への刺激
怠慢は、進歩またはグラフィックスとインタラクティブに作業する方法への刺激

怠慢は、進歩またはグラフィックスとインタラクティブに作業する方法への刺激

トレンドライン、フィボナッチレベル、チャートにマニュアルで入れられたアイコンとインタラクティブに動作するインターフェース用インディケータ。それにより、フィボナッチレベルのゾーンを色付きで描画し、価格がトレンドラインを交差する瞬間を表示し、『価格レベル』オブジェクトを管理することができます。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第3部)成行注文と取引のコレクション、検索と並び替え
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第3部)成行注文と取引のコレクション、検索と並び替え

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第3部)成行注文と取引のコレクション、検索と並び替え

最初の部分では、MetaTrader 5とMetaTrader 4プラットフォーム用のプログラムの開発を単純化するための大規模なクロスプラットフォームライブラリの作成を始めました。さらに、履歴の注文と取引の収集を実装しました。次のステップは、コレクションリスト内の注文、取引、ポジションの便利な選択と並び替えのためのクラスを作成することです。Engineという基本ライブラリオブジェクトを実装し、成行注文とポジションのコレクションをライブラリに追加します。
MQL5におけるインディケータemissionの描写
MQL5におけるインディケータemissionの描写

MQL5におけるインディケータemissionの描写

本稿では、マーケットリサーチの新手法であるインディケータ エミッションについて考察していきたいと思います。エミッションの計算は異なるインディケータの交点が基本になります。ティックのあとに異なる色や形のポイントが多数表示されます。それらは星雲、雲、軌道、線、アーチなど様々なクラスターを形成します。こういった形は市場価格を左右する見えないバネや力を検出するのに役立ちます。
エリック・ナイマンの『チャネル』インディケータ
エリック・ナイマンの『チャネル』インディケータ

エリック・ナイマンの『チャネル』インディケータ

この記事では、エリック・L・ナイマン氏の著書『トレーダーの小百科事典』を元に『チャネル』インディケータの作成について述べていきます。このインディケータは、指定した期間で計算したベアとブルの値に基づき、トレンドの方向を表示します。この記事では、サンプルコードと共にインディケータの計算と構築の原理を説明し、インディケータをベースにエキスパートアドバイザを作成し、外部パラメータの最適化について述べていきます。
MQL5 クックブック:トリプルスクリーン戦略に基づくトレーディングシステムに対するフレームワーク作成
MQL5 クックブック:トリプルスクリーン戦略に基づくトレーディングシステムに対するフレームワーク作成

MQL5 クックブック:トリプルスクリーン戦略に基づくトレーディングシステムに対するフレームワーク作成

本稿では MQL5で「リプルスクリーン」戦略に基づくトレーディングシステムに対するフレームワークを作成します。Expert Advisor を一から作成することはしません。代わりに、実質上すでにわれわれの目的に役だっている先行記事 "MQL5 Cookbook: Using Indicators to Set Trading Conditions in Expert Advisors" のプログラムを変更するだけとします。よって本稿は既製プログラムのパターンを簡単に変更する方法もお伝えします。
トレーダーのキット:デコインディケータ
トレーダーのキット:デコインディケータ

トレーダーのキット:デコインディケータ

本稿では、インディケータを装飾する際の主要なタスク、そのソリューションと自動化を見つけ出します。
preview
連続ウォークフォワード最適化(パート4):最適化マネージャ(オートオプティマイザ)

連続ウォークフォワード最適化(パート4):最適化マネージャ(オートオプティマイザ)

この記事の主な目的は、アプリケーションとその機能を操作するメカニズムについて説明することです。 したがって、この記事は、アプリケーションの使用方法に関する説明書としても使うことができます。 アプリケーションの使用法においてありがちな落とし穴と詳細を扱っています。
preview
ニューラルネットワークが簡単に(第13回): Batch Normalization

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

前回の記事では、ニューラルネットワーク訓練の品質を向上させることを目的とした手法の説明を開始しました。本稿では、このトピックを継続し、別のアプローチであるデータのBatch Normalizationについて説明します。
DoEasyライブラリのグラフィックス(第88部): グラフィカルオブジェクトコレクション - 動的に変化するオブジェクトのプロパティを格納するための2次元動的配列
DoEasyライブラリのグラフィックス(第88部): グラフィカルオブジェクトコレクション - 動的に変化するオブジェクトのプロパティを格納するための2次元動的配列

DoEasyライブラリのグラフィックス(第88部): グラフィカルオブジェクトコレクション - 動的に変化するオブジェクトのプロパティを格納するための2次元動的配列

本稿では、任意の次元のデータ量を変更できる動的な多次元配列クラスを作成します。作成したクラスに基づいて、動的に変更されたグラフィックオブジェクトのプロパティを格納する2次元の動的配列を作成します。
preview
母集団最適化アルゴリズム:カッコウ最適化アルゴリズム(COA)

母集団最適化アルゴリズム:カッコウ最適化アルゴリズム(COA)

次に考察するのは、レヴィフライトを使ったカッコウ検索最適化アルゴリズムです。これは最新の最適化アルゴリズムの1つで、リーダーボードの新しいリーダーです。
ターミナル間のデータ交換にクラウドストレージサービスを使用
ターミナル間のデータ交換にクラウドストレージサービスを使用

ターミナル間のデータ交換にクラウドストレージサービスを使用

クラウド技術の普及が進んでいます。 今日では、有料と無料のストレージサービスから選択することができます。 トレードで使用することは可能でしょうか? 本稿では, クラウドストレージサービスを利用してターミナル間でのデータ交換を行う技術を提案します。
ユニバーサルEA:イベントモデルと取引ストラテジープロトタイプ(パート2)
ユニバーサルEA:イベントモデルと取引ストラテジープロトタイプ(パート2)

ユニバーサルEA:イベントモデルと取引ストラテジープロトタイプ(パート2)

この記事は、ユニバーサルEAのシリーズです。このパートでは、データ処理に基づいて、オリジナルのイベント・モデルについて解説し、エンジンのストラテジーの基本クラスの構造を扱います。
グラフィカルインタフェースVII: タブコントロール(チャプター2)
グラフィカルインタフェースVII: タブコントロール(チャプター2)

グラフィカルインタフェースVII: タブコントロール(チャプター2)

第七部の最初の章では、テーブルを作成するためのコントロールであるテキストラベルテーブル(CLabelsTable)、エディットボックステーブル(CTable)およびレンダーテーブル(CCanvasTable)の3つのクラスが紹介されました。本稿(チャプター2)ではタブコントロールが考察されます。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第21部): 取引クラス - 基本クロスプラットフォーム取引オブジェクト
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第21部): 取引クラス - 基本クロスプラットフォーム取引オブジェクト

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第21部): 取引クラス - 基本クロスプラットフォーム取引オブジェクト

この記事では、取引クラスを新しいライブラリセクションとして開発し始めます。さらに、MetaTrader 5およびMetaTrader 4プラットフォーム向けの統合基本取引オブジェクトの開発を検討します。サーバにリクエストを送信する場合、このような取引オブジェクトにより、検証済みの正しい取引リクエストパラメータがサーバに渡されます。
グラフィカルインターフェイスXI:テーブルセル内のテキストエディットボックスとコンボボックス(ビルド15)
グラフィカルインターフェイスXI:テーブルセル内のテキストエディットボックスとコンボボックス(ビルド15)

グラフィカルインターフェイスXI:テーブルセル内のテキストエディットボックスとコンボボックス(ビルド15)

このライブラリアップデートでは、テーブルコントロール(CTableクラス)に新しいオプションが追加されます。テーブルセル内のコントロールのラインアップが拡張され、今回はテキストエディットボックスとコンボボックスが追加されます。また、このアップデートでは、実行中にMQLアプリケーションのウィンドウのイズを変更する機能も導入されています。
AutoElliottWaveMaker -  Elliott Wavesの半自動分析のためのMetaTrader 5ツール
AutoElliottWaveMaker -  Elliott Wavesの半自動分析のためのMetaTrader 5ツール

AutoElliottWaveMaker - Elliott Wavesの半自動分析のためのMetaTrader 5ツール

本稿は AutoElliottWaveMakerのレビューを行います。 - 手動と自動の組合せの波形ラベリングを表す MetaTrader 5 におけるElliott Wave分析に対する初めての開発です wave labeling. 波形分析ツールは包括的に MQL5 で書かれており、外部 dll ライブラリはインクルードしていません。これは MQL5で洗練されたおもしろいプログラムが開発できる(するべきである)というもうひとつの証明です。
モスクワ為替先物のスプレッド戦略の開発例
モスクワ為替先物のスプレッド戦略の開発例

モスクワ為替先物のスプレッド戦略の開発例

MT5 プラットフォームでは、同時に複数の金融商品のトレードロボットをテストすることができます。組み込みのストラテジーテスターは、自動的にヒストリーデータをブローカーのサーバーからダウンロードします。そのため、開発者は特別手動で何かをする必要はありません。シンプルかつ確実に異なるシンボルのミリ秒単位のティックによるトレード環境を再現することが可能です。この記事では、2つのモスクワ為替先物においてスプレッドストラテジーをテストと開発を行います。
ヘッジ  Expert Advisor コーディングの基礎
ヘッジ  Expert Advisor コーディングの基礎

ヘッジ Expert Advisor コーディングの基礎

ヘッジ Expert Advisor の例が本稿で提供されたばかりです。私は個人的に好むヘッジペアを選びます。EURJPY と GBPJPY です。それはつねに同じように変動し、ヘッジングオーダータイプの設定が簡単なものです。
単一インスツルメント上で異なるExpert Advisorsを使ったトレーディングのためのORDER_MAGICの使用
単一インスツルメント上で異なるExpert Advisorsを使ったトレーディングのためのORDER_MAGICの使用

単一インスツルメント上で異なるExpert Advisorsを使ったトレーディングのためのORDER_MAGICの使用

本稿は、異なるExpert Advisorsの自動トレーディングの分割、組立て、同期同様magic-identificationを使用したインフォメーションコーディングの疑問について考察します。本稿は、より経験を積んだトレーダー同様初心者にも興味深い内容となっています。その理由は、Expert Advisorsおよび様々な戦略の複雑なシステムの同期を実装するのに有用な垂直ポジションの疑問に取り組んでいるからです。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第23部): 基本取引クラス - パラメータ有効性の検証
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第23部): 基本取引クラス - パラメータ有効性の検証

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第23部): 基本取引クラス - パラメータ有効性の検証

本稿では、取引クラスの不正な取引注文パラメータ値に対する制御と取引イベントの音声通知において開発を続けています。
グラフィカルインターフェイスX:マルチラインテキストボックスでのテキスト選択(ビルド13)
グラフィカルインターフェイスX:マルチラインテキストボックスでのテキスト選択(ビルド13)

グラフィカルインターフェイスX:マルチラインテキストボックスでのテキスト選択(ビルド13)

本稿では、他のテキストエディタと同様に、さまざまなキーの組み合わせによってテキストを選択して選択したテキストを削除する機能を実装します。さらに、引き続きコードを最適化し、ライブラリの進化の第2段階の最終プロセスではすべてのコントロールが別々の画像(キャンバス)としてレンダリングされるため、これに向かってクラスを準備します。
preview
ニューラルネットワークが簡単に(第12回): ドロップアウト

ニューラルネットワークが簡単に(第12回): ドロップアウト

ニューラルネットワークを研究する次のステップとして、ニューラルネットワークの訓練中に収束を高める手法を検討することをお勧めします。そのような手法はいくつかありますが、本稿では、それらの1つである「ドロップアウト」について考察します。
取引イベントおよびシグナルの音声通知システム
取引イベントおよびシグナルの音声通知システム

取引イベントおよびシグナルの音声通知システム

今日では、ナビゲーター、音声検索、翻訳ツールがよく使用され、音声アシスタントは人間の生活において重要な役割を果たしています。本稿では、さまざまな取引イベント、市場の状態、取引シグナルによって生成されるシグナルに対するシンプルでユーザフレンドリーな音声通知システムの開発を試みます。
クロスプラットフォームEA: CExpertAdvisor と CExpertAdvisors クラス
クロスプラットフォームEA: CExpertAdvisor と CExpertAdvisors クラス

クロスプラットフォームEA: CExpertAdvisor と CExpertAdvisors クラス

この記事では、クロスプラットフォームのEAについて扱っています。主にクラス CExpertAdvisor と CExpertAdvisors は、この記事で説明した他のすべてのコンポーネントのコンテナとして機能します。
テクニカル指標や取引シグナルの利益表のビジュアル最適化
テクニカル指標や取引シグナルの利益表のビジュアル最適化

テクニカル指標や取引シグナルの利益表のビジュアル最適化

この記事は、前の記事「テクニカル指標とアラートの利益のビジュアルテスト」の関連記事です。パラメータ変更プロセスに双方向性を加え、検査の目的を変えることにより、シグナルを用いて取引結果予想を表示するだけでなく、メインチャートのシグナルパラメータ値を制御する役割として仮想スライドを動かすことで、取引レイアウトやバランスチャート、取引結果を即座に取得できるツールを作成します。
グラフィカルインタフェースVIII: ツリービューコントロール(チャプター2)
グラフィカルインタフェースVIII: ツリービューコントロール(チャプター2)

グラフィカルインタフェースVIII: ツリービューコントロール(チャプター2)

前のグラフィカルインターフェイス第八部では静的およびドロップダウンカレンダー要素に焦点が当てられました。この第2章は、グラフィカルインタフェースを作成するために使用されるすべての完全なライブラリーに含まれているツリービューという均等に複雑な要素に焦点を当てます。本稿で実装されるツリービューは複数の柔軟な設定とモードを含み、ニーズに合わせてコントロール要素を調整することができます。
EAステータス SMS 通知機能
EAステータス SMS 通知機能

EAステータス SMS 通知機能

稼働中のEAの状況を知らせることで何処にいても常に詳細な状況を確認できるSMS通知システムの開発
preview
PSAR、平均足、ディープラーニングを組み合わせて取引に活用する

PSAR、平均足、ディープラーニングを組み合わせて取引に活用する

このプロジェクトでは、ディープラーニングとテクニカル分析の融合を探求し、FXの取引戦略を検証します。EUR/USDの動きを予測するために、PSAR、SMA、RSIのような伝統的な指標とともにONNXモデルを採用し、迅速な実験のためにPythonスクリプトを使用します。MetaTrader 5のスクリプトは、この戦略をライブ環境に導入し、ヒストリカルデータとテクニカル分析を使用して、情報に基づいた取引決定をおこないます。バックテストの結果は、積極的な利益追求よりもリスク管理と着実な成長に重点を置いた、慎重かつ一貫したアプローチを示しています。
MQL5 クックブック: 価格の乖離を分析するマルチシンボルインジケーターの開発
MQL5 クックブック: 価格の乖離を分析するマルチシンボルインジケーターの開発

MQL5 クックブック: 価格の乖離を分析するマルチシンボルインジケーターの開発

この記事では、特定の期間における価格の分離を分析するためのマルチシンボルインジケーターの開発を紹介します。そのトピックは、「MQL5クックブック:MQL5のマルチシンボルボラティリティインジケーターの開発」というマルチカレンシーインジケーターのプログラミングに関する以前の記事にてすでに紹介されています。なので、今回は新しい特徴や劇的に変更された機能についてのみ紹介します。マルチカレンシーインジケーターのプログラミングに詳しくなければ、以前の記事をまずお読みいただくことをお勧めします。