MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
MQL5 クックブック: 板情報の実装
MQL5 クックブック: 板情報の実装

MQL5 クックブック: 板情報の実装

この記事では、板情報(DOM)を利用する方法を示します。また、CMarketBookクラスの動作についても説明します。これは、MQL5クラスの標準ライブラリを拡張し、DOMを使用する際の便利な方法となります。
リスク設定に基づいてSL/TPを設定するクロスプラットフォームEAの開発
リスク設定に基づいてSL/TPを設定するクロスプラットフォームEAの開発

リスク設定に基づいてSL/TPを設定するクロスプラットフォームEAの開発

本稿では、リスク値に基づいて自動的にエントリロットを計算するエキスパートアドバイザー(EA)を作成します。このEAでは、選択したSL(ストップロス)に対する比率を持つTP(テイクプロフィット)が自動的に配置されます。言い換えれば、3:1、4:1などの選択した比率に基づいたTPが計算されます。
インジケータのバッファや配列を使わずにヒストグラムを形成する統計分布
インジケータのバッファや配列を使わずにヒストグラムを形成する統計分布

インジケータのバッファや配列を使わずにヒストグラムを形成する統計分布

この記事では、グラフィックメモリの助けを借りて、相場の統計的分布ヒストグラムをプロットする可能性について説明します。サンプルのヒストグラムと mql5のグラフィカルオブジェクトの「非表示」関数があります。
最適化管理(パートII): キーオブジェクトとアドオンロジックの作成
最適化管理(パートII): キーオブジェクトとアドオンロジックの作成

最適化管理(パートII): キーオブジェクトとアドオンロジックの作成

本稿は、以前の最適化管理用のグラフィカルインターフェイスの作成に関する記事の続きです。本稿では、アドオンのロジックについて検討しています。MetaTrader 5ターミナルのラッパーが作成され、アドオンをC#を介した管理プロセスとして実行できるようにします。また、構成ファイルとセットアップファイルを使用した操作についても検討します。アプリケーションのロジックは2つの部分に分かれています。最初の部分では特定のキーを押した後に呼び出されるメソッドを記述し、2番目の部分では最適化の起動と管理を扱います。
preview
SQLite: MQL5 での SQL データベースのネイティブな処理

SQLite: MQL5 での SQL データベースのネイティブな処理

トレード戦略の開発には、大量のデータの処理が関連しています。 今では、MQL5 で直接 SQLite に基づいた SQL クエリを使用してデータベースを操作できるようになりました。 このエンジンの重要な特徴は、データベース全体がユーザーのPC上の単一のファイルに配置されるということです。
インディケータTaichi - 一目均衡表の値を公式化するシンプルな考え方
インディケータTaichi - 一目均衡表の値を公式化するシンプルな考え方

インディケータTaichi - 一目均衡表の値を公式化するシンプルな考え方

一目の信号を解釈するのはむつかしいですか?本稿では、一目均衡表の値と信号を公式化する基本をいくつか紹介します。その使用を可視化するために、私は自分の好みに応じて通貨ペア EURUSD を選択しました。ただしインディケータはどんな通貨ペアにも使用可能です。
ディープニューラルネットワーク(その3)サンプル選択と次元削減
ディープニューラルネットワーク(その3)サンプル選択と次元削減

ディープニューラルネットワーク(その3)サンプル選択と次元削減

本稿は、ディープニューラルネットワークに関する一連の記事の続きです。ここでは、ニューラルネットワークの訓練データの準備に当たってのサンプルの選択(ノイズ除去)、入力データの次元数の削減、及びデータセットの訓練/検証/テストセットへの分割を検討します。
MQL5をプログラミングの基礎: ターミナルのグローバル変数
MQL5をプログラミングの基礎: ターミナルのグローバル変数

MQL5をプログラミングの基礎: ターミナルのグローバル変数

ターミナルのグローバル変数は、高度で信頼性の高いEAを開発するために欠かせないツールです。グローバル変数なしで MQL5で EA の開発をすることは想像を絶します。
トレーディングにおけるOLAPの適用(その4)。テスターレポートの定量的・視覚的分析
トレーディングにおけるOLAPの適用(その4)。テスターレポートの定量的・視覚的分析

トレーディングにおけるOLAPの適用(その4)。テスターレポートの定量的・視覚的分析

この記事では、シングルパスや最適化結果に関連するテスターレポートのOLAP分析のための基本的なツールを提供しています。 このツールは標準フォーマットのファイル(tstとopt)を扱うことができ、グラフィカルなインターフェイスも提供します。 最後にMQLのソースコードを添付します。
CSSセレクタを使用した HTML ページからの構造化データの抽出
CSSセレクタを使用した HTML ページからの構造化データの抽出

CSSセレクタを使用した HTML ページからの構造化データの抽出

この記事では、CSS セレクタに基づいて HTML ドキュメントからデータを分析および変換するための汎用的な方法について説明します。 トレードレポート、テスターレポート、お気に入りの経済カレンダー、パブリックシグナル、アカウント監視、その他のオンラインクオートソースは MQL から直接利用可能になります。
エキスパートアドバイザとインディケータに素早く制御パネルを追加する方法
エキスパートアドバイザとインディケータに素早く制御パネルを追加する方法

エキスパートアドバイザとインディケータに素早く制御パネルを追加する方法

自分のエキスパートアドバイザやインディケータに便利な制御パネルを追加したいけど、何をどうしたら良いかわかりませんか?この記事では、貴方のMQL4/MQL5プログラムに入力パラメータを持つダイアログパネルを『取り付ける方法』をステップバイステップでご紹介します。
MQL5 クックブック:典型的なチャートイベントの処理
MQL5 クックブック:典型的なチャートイベントの処理

MQL5 クックブック:典型的なチャートイベントの処理

本稿では典型的なチャートイベントを考察し、その処理例についてお話します。マウスのイベント、キーストローク、グラフィックオブジェクトの作成/変更/消去、チャートおよびグラフィックオブジェクト上でのマウスのクリック、マウスでのグラフィックオブジェクト移動、テキストフィールドでのテキスト編集終了、チャート上でのイベント修正を取り上げます。考察する各イベントに対応する MQL5 プログラム例も提供します。
未知の確率密度関数のカーネル密度推定
未知の確率密度関数のカーネル密度推定

未知の確率密度関数のカーネル密度推定

本稿では、未知の確率密度関数のカーネル密度推定を可能にするプログラム作成に取り組みます。そしてタスク実行のためにカーネル密度推定法を選択しました。本稿にはメソッドのソフトウェア実装コード、その使用例、説明が述べられています。
「新規バー」イベントハンドラ
「新規バー」イベントハンドラ

「新規バー」イベントハンドラ

MQL5プログラミング言語はまったく新しいレベルで問題解決をする能力があります。 そういったタスクにして、もオブジェクト指向プログラミングのおかげでそれはすでに高いレベルに引きあげることができるのです。本稿では、かなり力強い多目的ツールに変換されたチャートの新規バーチェックの特にシンプルな例を取り上げます。どんなツールでしょうか?本稿でみつけてください。
ボックスーコックス変換
ボックスーコックス変換

ボックスーコックス変換

この記事は、読者がボックスーコックス変換について詳しく知ることができることを意図されています。使用方法に関して取り組まれ、ランダムなシーケンスと実際の取引価格での変換率を評価を行うものに関しての例がいくつか提示されています。
カスタムインジケーターに基づくトレーディングシグナルジェネレーター
カスタムインジケーターに基づくトレーディングシグナルジェネレーター

カスタムインジケーターに基づくトレーディングシグナルジェネレーター

カスタムインジケーターに基づくトレーディングシグナルジェネレーターはどのように作成するのでしょうか?カスタムインジケーターはどのように作成するのでしょうか?カスタムインジケーターのデータへのアクセスはどのように取得するのでしょうか?IS_PATTERN_USAGE(0) ストラクチャーとモデルがなぜ必要なのでしょうか?
MQL5のExpert Advisorsのテストと最適化を行うためのガイド
MQL5のExpert Advisorsのテストと最適化を行うためのガイド

MQL5のExpert Advisorsのテストと最適化を行うためのガイド

ここでは、コードエラーを見つけ解決するための段階的な手順について説明します。またExpert Advisor(以下EA)への入力パラメータのテストと最適化の手順についても説明します。Meta Trader 5のクライアント端末のStrategy Testerの使い方がわかれば、ご自身のEAに最も適したシンボルや入力パラメータセットを見つけることができるようになります。
新しいMetaTrader 4ビルド600以降へのアップデート
新しいMetaTrader 4ビルド600以降へのアップデート

新しいMetaTrader 4ビルド600以降へのアップデート

4ターミナル(build600以降)の、ユーザーデータの保存場所が変更されました。以前は、全てのプログラムやテンプレート、プロフィールなどがターミナルのインストールディレクトリに直接保存されていましたが、これからは特定のユーザーターミナルの動作に必要不可欠なデータは、データフォルダと呼ばれる別個の特別なフォルダに保存されます。この記事では、よくある質問についての回答を集めました。
古典的な隠れたダイバージェンスを解釈する新しいアプローチ第2部
古典的な隠れたダイバージェンスを解釈する新しいアプローチ第2部

古典的な隠れたダイバージェンスを解釈する新しいアプローチ第2部

本稿では、さまざまな指標のレギュラーダイバージェンスと効率性について批判的に検討します。さらに、分析の精度を高めるためのフィルタリングオプションと、非標準ソリューション機能の説明が含まれています。 その結果、技術的なタスクを解決するための新しいツールを作成します。
CSV ファイルを介した MetaTrader 4 と Matlab 間の連携
CSV ファイルを介した MetaTrader 4 と Matlab 間の連携

CSV ファイルを介した MetaTrader 4 と Matlab 間の連携

CSV ファイルを介した MetaTrader 4 と Matlab 間のデータ配列交換作成法の段階的手順。
MT4のポートフォリオトレード
MT4のポートフォリオトレード

MT4のポートフォリオトレード

この記事では、ポートフォリオトレードの原則と外国為替相場への応用を明らかにします。簡単な数学的ポートフォリオの配置モデルが考えられています。半自動化されたトレードのポートフォリオのインジケーターとEA:この記事では、実用的なMT4でのポートフォリオトレードの実装例があります。トレード戦略、ならびに利点と落とし穴の要素が記載されています。
外部指標のためのアラートとコメント:第二部
外部指標のためのアラートとコメント:第二部

外部指標のためのアラートとコメント:第二部

前回の記事「外部指標のためのアラートとコメント」掲載後、指標線に基く外部密告者の作成方法についての質問もよくあります。一般論としての質問で、前のテーマの続きを書きます。また指標バッファからのデータ検索方法についても併せて書きます。
シグナル計算機
シグナル計算機

シグナル計算機

シグナル計算機は、MetaTrader 5のターミナルから直接動作し、ターミナルがシグナルの事前選択とソートを行います。これこそがこの計算機の大きな長所でもあります。これによって、MetaTrader 5のターミナルでは、自分の取引口座と最大限に互換性のあるシグナルのみユーザーに見えることになります。
フィルターの魔法
フィルターの魔法

フィルターの魔法

ほとんどの自動売買システム開発者はなんらかのトレードシグナルフィルター機能を利用しています。本稿では、帯域通過と Expert Advisor 用の個別フィルターの作成と実装を探り、自動売買システムの特性を向上させます。
買われすぎ・売られすぎゾーンの検出方法について。 第一部
買われすぎ・売られすぎゾーンの検出方法について。 第一部

買われすぎ・売られすぎゾーンの検出方法について。 第一部

買われすぎ/売られすぎのゾーンは、相場の特定の状態を特徴づけ、有価証券の価格の弱い変化によって区別されます。 シナミクスにおけるこの不利な変化は、あらゆるスケールのトレンドの成長の最終段階で顕著です。 トレードにおける利益価値は、可能な限り大きなトレンド振幅をカバーできるかどうかに直接依存するため、このようなゾーンを検出する精度は、どのような証券でも重要な課題となります。
かぎ足チャート用インジケーター
かぎ足チャート用インジケーター

かぎ足チャート用インジケーター

この記事は、様々なチャートオプションや追加関数を持つかぎ足チャート用インジケーターを紹介します。また、インジケーターのチャート化原則やMQL5実装の特徴なども紹介されています。トレーディングにおける実装の人気なものは、トレンド線から押しのけ、断続的に「肩」をあげ、「腰」を下げるYin/Yang交換戦略です。
80-20 トレード戦略
80-20 トレード戦略

80-20 トレード戦略

この記事では、80-20 トレード戦略を分析するためツール (インジケーターおよびEA) の開発について説明します。トレードルールは"ストリートスマート"より引用します。リンダラッシュクとローレンス · コナーズによる"短期的なトレード戦略”です。mql5を使用して、戦略ルールを定式化し、最近の相場のヒストリーベースで、インディケータとEAをテストします。
MQL5 マーケットがトレーディング戦略およびテクニカルインディケータを販売するのにベストな場所である理由
MQL5 マーケットがトレーディング戦略およびテクニカルインディケータを販売するのにベストな場所である理由

MQL5 マーケットがトレーディング戦略およびテクニカルインディケータを販売するのにベストな場所である理由

MQL5.community マーケットは Expert Advisors 開発者に対してすでに何千人という潜在的購入者のいるできあがったマーケットを提供します。これは売買ロボットやテクニカルインディケータを販売するのにはベストな場所です。
新しいMetaTrader 5 とMQL5の登場
新しいMetaTrader 5 とMQL5の登場

新しいMetaTrader 5 とMQL5の登場

これはMetaTrader5のただの簡単なレビューです。このような短い時間でシステムのすべての特徴を述べることはできません。2009年9月9日に試用を開始しました。これはシンボル的な日付でラッキーナンバーになると信じています。ベータ版のMetaTrader5とMQL5を手に入れて数日が経ちました。まだ全ての特徴を使ってはいませんが、すでに関心させられました。
MQL5でのオブジェクト作成と削除の順番
MQL5でのオブジェクト作成と削除の順番

MQL5でのオブジェクト作成と削除の順番

MQL5プログラムでは、すべてのオブジェクトはカスタムオブジェクトだろうと、動的配列またはオブジェクト配列は特定の方法で作成され削除されます。 しばしば オブジェクトは他のオブジェクトの一部で、非初期化のオブジェクト削除の順は特に重要になります。本記事ではオブジェクトを使用するメカニズムの例を紹介します。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第1部)概念、データ管理および最初の結果
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第1部)概念、データ管理および最初の結果

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第1部)概念、データ管理および最初の結果

膨大な数の取引戦略やMetaTrader 5およびMetaTrader 4ターミナル用アプリケーションの開発の注文、さまざまなMetaTrader Webサイトを分析しているうちに、私は、このすべての多様性のほとんどが、異なるプログラムで定期的に現れる同じ基本的な機能、行動、および価値観に基づいているという結論に達しました。これにより、МetaТrader5およびМetaТrader4アプリケーションを簡単かつ迅速に開発するためのDoEasyクロスプラットフォームライブラリが完成しました。
MQL5でのエラー処理とロギング
MQL5でのエラー処理とロギング

MQL5でのエラー処理とロギング

この記事では、ソフトウェアにおける一般的なエラー処理の問題について述べていきます。また、ロギングについて言及し、MQL5のツールによるデータロガーの実装例をデモンストレーションします。
オブジェクト指向プログラミング
オブジェクト指向プログラミング

オブジェクト指向プログラミング

オブジェクト指向プログラミングに関する多相性やカプセル化などについて理解する必要はありません。これらの機能を使うだけで良いのです。この記事ではオブジェクト指向プログラミングの基本を例を使って具体的に見ていきます。
テクニカル分析と市場予測の手法について
テクニカル分析と市場予測の手法について

テクニカル分析と市場予測の手法について

本稿は、チャートなどを使用した視覚的思考と、"箱から出した"市場見通しを通じ、よく知られた数学的手法の能力と可能性について考察しています。 一方で、本稿は、トレードの考え方を再考する想像力を得ることがでますので、幅広く皆さんの注目を集めると思います。また他方で、本稿は幅広い分析および予測ツールについての代替開発並びにプログラムコードの実装に役立つでしょう。
トレーダーのリスクを低減するには
トレーダーのリスクを低減するには

トレーダーのリスクを低減するには

金融市場における取引には広範囲のリスクがつきもので、これらは取引システムのアルゴリズムで考慮されるべきです。そのようなリスクを低減することは、取引で利益を得るために最も重要な課題です。
ビジュアルストラテジービルダー。 プログラミングなしでトレーディングロボットを作成する
ビジュアルストラテジービルダー。 プログラミングなしでトレーディングロボットを作成する

ビジュアルストラテジービルダー。 プログラミングなしでトレーディングロボットを作成する

この記事では、ビジュアルストラテジービルダーを紹介します。 ユーザーがプログラミングせずにトレードロボットやユーティリティを作成する方法について紹介します。 作成されたEAは、完全に機能し、ストラテジーテスターでテストすることができます。また、クラウドで最適化またはリアルタイムチャートでライブ実行することも可能です。
CCanvas クラスを知る透明なオブジェクトの描画方法
CCanvas クラスを知る透明なオブジェクトの描画方法

CCanvas クラスを知る透明なオブジェクトの描画方法

みなさんは移動平均のぎこちないグラィック以上のものが必要ですか?ターミナルにただ色がついている長方形よりも見栄えの良い何かを描画してみたいですか?ターミナルには魅力的なグラフィックを描くことができるのです。それはカスタムグラフィックを作成する CСanvas クラスで実装することができます。このクラスで透明性を取り入れ、色を混ぜ、オーバーラップと色の混ぜ合わせによって透明の錯覚を産み出すことができるのです。
f()10分でできるMQL5 のためのDLL (パート II): Visual Studio 2017で作成
f()10分でできるMQL5 のためのDLL (パート II): Visual Studio 2017で作成

f()10分でできるMQL5 のためのDLL (パート II): Visual Studio 2017で作成

元の基本となる記事との関連性は失われていませんが、このトピックに興味がある場合は、まず最初の記事を読んでください。 しかし、前回の記事から時間が経過しているので、現在の Visual Studio 2017 には、更新されたインターフェイスがあります。 また、MetaTrader5プラットフォームにも新しい機能が追加されました。 この記事では、DLLのプロジェクト開発、およびセットアップと MetaTrader5 ツールとのやり取りについて説明します。
金融時系列の予測
金融時系列の予測

金融時系列の予測

金融時系列の予測はあらゆる投資活動に必要とされる要素です。将来利益を得るために今資金を投入する、という投資そのもののコンセプトは、将来予測のコンセプトに基づいています。そのため、金融時系列の予測は、組織化された為替やその他有価証券の取引システムといった投資業界全体に根差すものです。
強化学習におけるモンテカルロ法の応用
強化学習におけるモンテカルロ法の応用

強化学習におけるモンテカルロ法の応用

自己学習を行うEAを作成するためのReinforcement learningの適用。前回の記事では、Random Decision Forestアルゴリズムを学び、Reinforcement learning(強化学習)に基づく簡単な自己学習EAを作成しました。このアプローチの主な利点は、取引アルゴリズムを書くことの単純さと『学習」の高速性でした。強化学習(以下、単にRL)は、どのEAにも簡単に組み込むことができ、最適化のスピードを上げられます。