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

icon

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

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

新しい記事を追加
最新 | ベスト
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第10部): MQL4との互換性 - ポジションオープンイベントと指値注文発動イベント
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第10部): MQL4との互換性 - ポジションオープンイベントと指値注文発動イベント

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第10部): MQL4との互換性 - ポジションオープンイベントと指値注文発動イベント

前の記事では、MetaTrader 5とMetaTrader 4プラットフォーム用のプログラムの開発を単純化するための大規模なクロスプラットフォームライブラリの作成を始めました。第9部では、MQL4を使用するためのライブラリクラスの改善を開始しました。ここでは、MQL4との完全な互換性を確保するために、ライブラリの改善を続けます。
グラフィカルインターフェイスを備えたエキスパートアドバイザ : 機能の設定(第2部)
グラフィカルインターフェイスを備えたエキスパートアドバイザ : 機能の設定(第2部)

グラフィカルインターフェイスを備えたエキスパートアドバイザ : 機能の設定(第2部)

これは手動取引のためのマルチシンボルシグナルエキスパートアドバイザーの作成に関する記事の第2部です。私たちはすでにグラフィカルインターフェースを作成しました。この記事では、インターフェースとプログラムの機能を融合させる方法について説明します。
Expert Advisor パラメータのユーザーパネルからの『オンザフライ』の変更
Expert Advisor パラメータのユーザーパネルからの『オンザフライ』の変更

Expert Advisor パラメータのユーザーパネルからの『オンザフライ』の変更

本稿ではパラメータをユーザーパネルから管理できる Expert Advisor の実装を示すちょっとした例を提供します。『オンザフライ』でパラメータを変更するとき、Expert Advisor はのちにファイルから読み込みパネル上で適切に表示するために情報パネルからファイルに取得した値を書きます。本稿はマニュアルでトレードを行う方または半自動モードでトレードを行う方に適しているでしょう。
オープンされたポジションの二段階の修正
オープンされたポジションの二段階の修正

オープンされたポジションの二段階の修正

二段階アプローチにより、トレンドに近い状況でのポジションの不必要なクロージングや再オープンを避けることができます。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第24部): 基本取引クラス - 無効なパラメータの自動修正
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第24部): 基本取引クラス - 無効なパラメータの自動修正

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第24部): 基本取引クラス - 無効なパラメータの自動修正

本稿では、無効な取引注文パラメータのハンドラを一瞥して、取引イベントクラスを改善します。これによって、すべての取引イベント(単一のイベントと1ティック内で同時に発生したイベントの両方)がプログラムで正しく定義されるようになります。
グラフィックエキスパートアドバイザー: オートグラフ
グラフィックエキスパートアドバイザー: オートグラフ

グラフィックエキスパートアドバイザー: オートグラフ

本稿はトレードを管理する便利なインターフェースである画面表示の利用法について書いています。
MеtaTrader 4 と MATLAB エンジン(仮想 MATLAB マシン)間のインタラクション
MеtaTrader 4 と MATLAB エンジン(仮想 MATLAB マシン)間のインタラクション

MеtaTrader 4 と MATLAB エンジン(仮想 MATLAB マシン)間のインタラクション

本稿では DLL ライブラリ- MetaTrader 4 と MATLAB の数学的デスクトップパッケージのインタラクションを可能にするラッパーの作成に関する考察を行います。また落とし穴とそれを克服する方法を説明します。本稿は Borland C++ Builder 6 コンパイラを使用している準備済みの C/C++ プログラマ―を対象としています。
Market Product向けの優れた記述方法
Market Product向けの優れた記述方法

Market Product向けの優れた記述方法

MQL5「マーケット」には数多くのプロダクツが販売されていますが、その説明にはいま一つ物足りないということがあります。テキストの多くは明らかに改善が必要です。一般トレーダーが理解できないようなものだからです。本稿はみなさんのプロダクトを有利な位置に置くことに役立つことでしょう。販売しているものが何であるか的確に顧客に示す、注意を引く説明を書くための提案を活用ください。
ユニバーサルEA:戦略トレードモード(その1)
ユニバーサルEA:戦略トレードモード(その1)

ユニバーサルEA:戦略トレードモード(その1)

EAの開発者は、プログラミングのスキルに関係なく、信頼性の高い取引プロセスを整理するため、同じタスクとアルゴリズムの問題に直面しています。この記事では、これらのタスクの解決に着手し、トレードアイデアを記述するための便利なCStrategyエンジンの可能性を説明します。
Accumulation/Distributionへのインサイトと、そのゴール地点
Accumulation/Distributionへのインサイトと、そのゴール地点

Accumulation/Distributionへのインサイトと、そのゴール地点

Accumulation/Distribution (A/D)インジケーターは、一つ興味深い特徴があります - このインジケータチャートのトレンド線のブレークアウトは、特定の確率にてやがて来る価格チャートのトレンド線のブレークアウトを示唆します。この記事は、MQL4プログラミングに慣れ親しんでいない人にとってはとても役に立ち、面白い記事になるかと思います。この観点から最も簡単なコードの構造を用い、コーディングの方法を理解する上でわかりやすい情報を提示することに努めました。
グラフィカルインタフェース V:リストビュー要素(チャプター 2)
グラフィカルインタフェース V:リストビュー要素(チャプター 2)

グラフィカルインタフェース V:リストビュー要素(チャプター 2)

前の章では、縦横スクロールバーを作成するためのクラスを書きました。この章では、それを実装します。縦スクロールバーはそのコンパウンドの一部となるリストビュー要素を作成するためのクラスが記述されます。
DoEasyライブラリの時系列(第36部): すべての使用銘柄期間の時系列オブジェクト
DoEasyライブラリの時系列(第36部): すべての使用銘柄期間の時系列オブジェクト

DoEasyライブラリの時系列(第36部): すべての使用銘柄期間の時系列オブジェクト

本稿では、使用された各銘柄期間のバーオブジェクトのリストを単一の銘柄時系列オブジェクトに結合することを検討します。使用されるすべての銘柄時系列期間のリストを格納するオブジェクトが各銘柄に備わることになります。
preview
ニューラルネットワークが簡単に(第2回): ネットワークのトレーニングとテスト

ニューラルネットワークが簡単に(第2回): ネットワークのトレーニングとテスト

第2回目の今回は、引き続きニューラルネットワークの勉強をし、作成したCNetクラスをEAで使用した例を考えていきます。 学習時間、予測精度ともに同様の結果を示す2つのニューラルネットワークモデルを用いてタスクを行います。
GUIコントロールのレイアウトとコンテナの使用:CGrid クラス
GUIコントロールのレイアウトとコンテナの使用:CGrid クラス

GUIコントロールのレイアウトとコンテナの使用:CGrid クラス

この記事では、1つのレイアウトマネージャを使用して、レイアウトやコンテナに基づいて、GUI作成の代替方法を提示しています。CGridクラスは、グリッドレイアウトを使用して、他のコンテナやコントロールのコンテナとして機能する補助コントロールです。
エキスパートアドバイザーを使って自分ルールでシグナルをコピーするには?
エキスパートアドバイザーを使って自分ルールでシグナルをコピーするには?

エキスパートアドバイザーを使って自分ルールでシグナルをコピーするには?

シグナルを購読していると、このような状況が起こることがあります。貴方の取引口座はレバレッジが1:100であるのに、プロバイダのレバレッジは1:500かつ最小ロットでトレードを行っていて、貴方の取引残高はほぼ同じ。そしてこの時コピー係数は10%から15%になるという状況です。この記事では、このような場合にどのようにコピー係数を上げたら良いかをお話しします。
CCanvasでのカスタム指標とインフォグラフィックス
CCanvasでのカスタム指標とインフォグラフィックス

CCanvasでのカスタム指標とインフォグラフィックス

本稿は、より複雑な構造的実装を伴う新しい種類の指標について検討し、擬似3D型指標と動的インフォグラフィックスの開発についても説明します。
preview
MQL言語を使用したゼロからのディープニューラルネットワークプログラミング

MQL言語を使用したゼロからのディープニューラルネットワークプログラミング

この記事は、MQL4/5言語を使用してディープニューラルネットワークを最初から作成する方法を読者に教えることを目的としています。
МetaTrader 5からWCFサービスを利用し.NETアプリケーションにクオートをエクスポートする方法
МetaTrader 5からWCFサービスを利用し.NETアプリケーションにクオートをエクスポートする方法

МetaTrader 5からWCFサービスを利用し.NETアプリケーションにクオートをエクスポートする方法

MetaTrader 5からご自身のアプリケーションにクオートをエクスポートしたくありませんか?MQL5-DLLジャンクションを使用するとそのソリューションの作成が可能です!本稿でMetaTrader 5から.NETに書かれたアプリケーションにクオートをエクスポートする方法の一つをお伝えします。私はまさにこのプラットフォームの使用により、クオートのエクスポート実装がおもしろく、根本的にやさしく行えました。残念ながらバージョン5はまだ.NETをサポートしていないので、かつてのように.NETサポート機能のあるwin32 dllを interlayerとして利用します。
MetaTrader 4 クライアントターミナルと MS SQL  Server の統合
MetaTrader 4 クライアントターミナルと MS SQL  Server の統合

MetaTrader 4 クライアントターミナルと MS SQL Server の統合

本稿は dll を用いたMetaTrader 4 クライアントターミナルの MS SQL Server との統合例を提供します。また、С++ および MQL4 両言語でのソースコード、既製のコンパイル済み Visual C++ 6.0 SP5 プロジェクトを添付しています。
preview
連続ウォークスルー最適化(パート2):ロボットの最適化レポート作成のメカニズム

連続ウォークスルー最適化(パート2):ロボットの最適化レポート作成のメカニズム

ウォークスルー最適化シリーズの最初の記事では、自動オプティマイザで使用するDLLの作成について説明しました。 今回は完全にMQL5言語に専念します。
MQL5プログラミングベージックス:リスト
MQL5プログラミングベージックス:リスト

MQL5プログラミングベージックス:リスト

トレーディング戦略開発のためのプログラミング言語の新バージョン、MQL5は、以前のバージョン、MQL4と比較してより強力で効果的な機能を提供しています。その利点は本質的にオブジェクト指向プログラミングの機能にあります。この記事は、ノードやリストなど複雑なカスタムデータ型を用いることについて詳しく見ていきます。また、MQL5での実際的なプログラミングにてリストを用いる例を紹介します。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第4部): 取引イベント
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第4部): 取引イベント

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第4部): 取引イベント

前の記事では、MetaTrader 5とMetaTrader 4プラットフォーム用のプログラムの開発を単純化するための大規模なクロスプラットフォームライブラリの作成を始めました。過去の注文と取引のコレクション、成行注文とポジション、そして注文の便利な選択と並び替えのためのクラスはすでに存在します。この記事では、基本オブジェクトの開発を続け、Engineライブラリが口座の取引イベントを追跡できるようにします。
HTMLとCSSを使用した代替ログ・ファイル
HTMLとCSSを使用した代替ログ・ファイル

HTMLとCSSを使用した代替ログ・ファイル

本稿では、html ファイル作成のためのシンプルでありながらひじょうに力強いライブラリを書く手順を説明し、その表示の調整を学習し、エキスパートやスクリプトでいかに簡単に実装し利用できるか見ていきます。
行列代数ライブラリ『LibMatrix』(第一部)
行列代数ライブラリ『LibMatrix』(第一部)

行列代数ライブラリ『LibMatrix』(第一部)

著者は読者に簡単な行列代数ライブラリを紹介します。主要な機能とその特徴を見ていきます。
4 とおりのタイムフレームからの複数インディケータシグナルの同時表示
4 とおりのタイムフレームからの複数インディケータシグナルの同時表示

4 とおりのタイムフレームからの複数インディケータシグナルの同時表示

マニュアルトレーディングでは、複数インディケータの値から目を離すわけにはいきません。メカニカルトレーディングではそこは少しばかり異なります。2~3個のインディケータがあると、トレーディングにはタイムフレームを1つ選ぶ必要があり、それはむつかしい仕事ではありません。しかし5~6個ものインディケータがあり、トレーディング戦略が複数のタイムフレームについてのシグナルを考慮することを要求すればどうなるのでしょうか?
MQL5クックブック - 移動チャンネルのシグナルトレーディング
MQL5クックブック - 移動チャンネルのシグナルトレーディング

MQL5クックブック - 移動チャンネルのシグナルトレーディング

この記事では、移動チャネルに基づいたシグナルを送信するクラスを実装するプロセスについて説明します。各々は、テスト結果を取引戦略が引き続きます。標準ライブラリのクラスは派生クラスを作成するために使用します。
インディケータコードから Expert Advisor コードへの変換Expert Advisor およびインディケータ関数の一般的スキーム
インディケータコードから Expert Advisor コードへの変換Expert Advisor およびインディケータ関数の一般的スキーム

インディケータコードから Expert Advisor コードへの変換Expert Advisor およびインディケータ関数の一般的スキーム

本稿はインディケータコードを Expert Advisor コードへ変換し、カスタムインディケータの呼び出しなく、Expert Advisor 内で必要なインディケータ値を計算するためのプログラムコード全体を使って Expert Advisor を書く方法に特化して述べます。本稿は Expert Advisor 変更とカスタムインディケータを基にしたインディケータ関数構築の考えを提供します。対象とする読者はすでに MQL4 言語でのプログラム経験をお持ちの方です。
自作 DLL の排除
自作 DLL の排除

自作 DLL の排除

MQL5 言語機能がタスク遂行に十分でなければMQL5 プログラマーは別のツールを使用する必要があります。別のプログラム言語によって仲介DLL を作成する必要があります。MQL5 にはさまざまなデータタイプを表示し、それを API に転送する機能がありますが、残念ながら MQL5 は受け付けられたポインタからデータを抽出することに関する問題を解決することはできません。本稿ではすべての "i" にドットを打ち、複雑なデータタイプを交換し、それと連携するメカニズムを示していきます。
「穴」のないチャート
「穴」のないチャート

「穴」のないチャート

この記事は、バーの見逃しのないチャートの実装を目的にしています。
MetaTrader 4クライアントターミナルの秘密:MetaEditorのファイルライブラリ
MetaTrader 4クライアントターミナルの秘密:MetaEditorのファイルライブラリ

MetaTrader 4クライアントターミナルの秘密:MetaEditorのファイルライブラリ

カスタムプログラムを作成する際、コードエディターはとても重要です。より多くの機能がエディターで使用することができれば、より早く、より便利にプログラムを作成することができます。たくさんのプログラムが既存のコードを基盤に作成されています。あなたの目的にそぐわないインジケーターやスクリプトを使用しますか?ウェブサイトからこのプログラムのコードをダウンロードし、ご自身でカスタマイズしてみてください。
最小の遅れでの効果的な平均化アルゴリズム:インディケータおよび Expert Advisor での使用
最小の遅れでの効果的な平均化アルゴリズム:インディケータおよび Expert Advisor での使用

最小の遅れでの効果的な平均化アルゴリズム:インディケータおよび Expert Advisor での使用

本稿は私が作成したハイクオリティーなカスタム平均化関数:JJMASeries()、JurXSeries()、JLiteSeries()、ParMASeries()、 LRMASeries()、T3Series()、MASeries()、について説明します。SmoothXSeries() 関数呼び出しによるインディケータ内でのこれら関数の最新の置換法を考察します。
テスターでのブレークポイント:それは可能です!
テスターでのブレークポイント:それは可能です!

テスターでのブレークポイント:それは可能です!

この記事では、デバッグ情報が表示され、テスターで通過された際のブレークポイントエミュレーションを扱います。
DoEasyライブラリの時系列(第40部): ライブラリに基づいた指標 - 実時間でのデータ更新
DoEasyライブラリの時系列(第40部): ライブラリに基づいた指標 - 実時間でのデータ更新

DoEasyライブラリの時系列(第40部): ライブラリに基づいた指標 - 実時間でのデータ更新

本稿では、DoEasyライブラリに基づく単純な複数期間指標の開発について検討します。時系列クラスを改善して、任意の時間枠からデータを受け取り、現在のチャート期間に表示します。
インディケータコードの Expert Advisor コードへの変換おわりに
インディケータコードの Expert Advisor コードへの変換おわりに

インディケータコードの Expert Advisor コードへの変換おわりに

本稿はインディケータコードを Expert Advisor コードへ変換することに関して述べられる最終稿です。ここで著者はある例においてExpert Advisor のコードを変換します。よって、この EA はカスタムインディケータを呼びださず単一ファイルに示されます。
トレーダーライフハック:"静かな"最適化とプロットトレード分布
トレーダーライフハック:"静かな"最適化とプロットトレード分布

トレーダーライフハック:"静かな"最適化とプロットトレード分布

トレードのヒストリーの分析とポジションエントリーの時間に応じて、HTMLでトレード結果の分布図をプロットします。このチャートは、次の3つのセクションで表示されています - 時間、曜日及び月。
Expert Advisorのオーダーメード - トレーダー向けマニュアル
Expert Advisorのオーダーメード - トレーダー向けマニュアル

Expert Advisorのオーダーメード - トレーダー向けマニュアル

トレーダーが全員プログラマーというわけではありません。そしてプログラマーが全員優秀というわけではありません。自分のシステムを自動化する必要がある場合、何をすべきでしょうか?MQL4 を学ぶのに時間も欲求もなしで?
グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)
グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)

グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)

この章では、MQLアプリケーションでのマルチウィンドウインタフェースの作成の可能性をもたらすライブラリの実装を拡張します。また、グラフィカルオブジェクト上でのマウスの左クリックの優先順位のシステムを開発します。これは、要素がユーザのアクションに応答しない場合に発生する問題を回避するために必要です。
サポート/レジスタンスレベルを描く方法
サポート/レジスタンスレベルを描く方法

サポート/レジスタンスレベルを描く方法

本稿はサポート/レジスタンスレベルを検出するシンプルなスクリプトを作成する手順について説明します。対象は初心者です。よって手順の各段階の詳細説明を確認することができます。ただ、スクリプトはひじょうにシンプルでも、本稿は上級トレーダーや MetaTrader 4 プラットフォーム利用者にとっても有用なことでしょう。ここには表形式へのデータエクスポート例、テーブルの Microsoft Excel へのインポート、より詳細な分析のためのチャートプロットの例が入っています。
自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング
自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング

自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング

この記事では、Kohonenマップで動作するのテクニックについて説明します。Kohonenマップで困難に直面し、MQL4とMQL5でのプログラミングの基本的なレベルがわかる研究者や経験豊富なプログラマーを対象としています。自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング