MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
データサイエンスと機械学習(第24回):通常のAIモデルによるFX時系列予測

データサイエンスと機械学習(第24回):通常のAIモデルによるFX時系列予測

外国為替市場において、過去を知らずに将来のトレンドを予測することは非常に困難です。過去の値を考慮して将来の予測をおこなうことができる機械学習モデルは非常に少ないです。この記事では、市場に勝つために古典的な(非時系列)人工知能モデルを使用する方法について説明します。
グラフィカルインターフェイスX:マルチラインテキストボックスでのテキスト選択(ビルド13)
グラフィカルインターフェイスX:マルチラインテキストボックスでのテキスト選択(ビルド13)

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

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

知っておくべきMQL5ウィザードのテクニック(第01回):回帰分析

今日のトレーダーは哲学者であり、ほとんどの場合(意識的かどうかにかかわらず...)新しいアイデアを探し、試し、変更するか破棄するかを選択します。これは、かなりの労力を要する探索的プロセスです。トレーダーの時間とミスを避ける必要性は明らかに重視されます。この連載では、MQL5ウィザードがトレーダーの主力であるべきであることを示します。なぜでしょうか。MQL5ウィザードを使用すれば、新しいアイデアを組み立てることで時間を節約できるだけでなく、コーディングの重複によるミスを大幅に減らすことができるため、最終的に、取引の哲学のいくつかの重要な分野にエネルギーを注ぐことができるからです。
preview
ニューラルネットワークが簡単に(第12回): ドロップアウト

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

ニューラルネットワークを研究する次のステップとして、ニューラルネットワークの訓練中に収束を高める手法を検討することをお勧めします。そのような手法はいくつかありますが、本稿では、それらの1つである「ドロップアウト」について考察します。
グラフィカルインタフェースVIII: ツリービューコントロール(チャプター2)
グラフィカルインタフェースVIII: ツリービューコントロール(チャプター2)

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

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

トレーダーの作業における統計的分布の役割

本稿は、理論的統計的分布に連携するクラスについて述べた拙著『MQL5 における投擲的可能性』の続編です。われわれには理論的基盤があるので、現実のデータ設定に進み、こ基盤を情報的に利用していきたいと思います。
非標準自動取引
非標準自動取引

非標準自動取引

詳しく市場分析をせず MT4 のプラットフォームで行う首尾よく快適な取引。そんなこと、できるのでしょうか?そのような取引を実際に実装することはできますか?私はできると思います。特に自動取引では!
preview
エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第3部):トレンド指標

エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第3部):トレンド指標

この参考記事では、トレンド指標カテゴリから標準的な指標を取り上げます。パラメータの宣言と設定、指標の初期化と解除、EAの指標バッファからのデータとシグナルの受信など、EAで指標を使用するためのすぐに使えるテンプレートを作成します。
クロスプラットフォームEA: CExpertAdvisor と CExpertAdvisors クラス
クロスプラットフォームEA: CExpertAdvisor と CExpertAdvisors クラス

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

この記事では、クロスプラットフォームのEAについて扱っています。主にクラス CExpertAdvisor と CExpertAdvisors は、この記事で説明した他のすべてのコンポーネントのコンテナとして機能します。
より優れたプログラマー(第02部): MQL5プログラマーとして成功するためにやめなければいけない5つのこと
より優れたプログラマー(第02部): MQL5プログラマーとして成功するためにやめなければいけない5つのこと

より優れたプログラマー(第02部): MQL5プログラマーとして成功するためにやめなければいけない5つのこと

この記事は、プログラミングのキャリアを向上させたい人にとって必読です。本連載は、どんなに経験が豊富な読者でも最高のプログラマーになれることを目的としています。議論されたアイデアは、MQL5プログラミングの初心者だけでなくプロにも役立ちます。
preview
ニューラルネットワークが簡単に(第4回): リカレントネットワーク

ニューラルネットワークが簡単に(第4回): リカレントネットワーク

これまでニューラルネットワークの勉強を続けてきました。 この記事では、ニューラルネットワークのもう一つのタイプであるリカレントネットワークについて考えてみます。 このタイプは、MetaTrader 5の取引プラットフォームで価格チャートで表現される時系列を使用するために提案されています。
EAステータス SMS 通知機能
EAステータス SMS 通知機能

EAステータス SMS 通知機能

稼働中のEAの状況を知らせることで何処にいても常に詳細な状況を確認できるSMS通知システムの開発
preview
トランスダクション・アクティブ機械学習におけるスロープブースト

トランスダクション・アクティブ機械学習におけるスロープブースト

本記事では、実データを活用したアクティブな機械学習手法について考察するとともに、その長所と短所について考察していきます. おそらく、いくつかの方法が有用であるとわかるでしょうし、機械学習モデルのアーセナルにインクルードするでしょう. トランスダクションは、サポートベクターマシン(SVM)の共同発明者であるVladimir Vapnik氏が紹介しています.
preview
MQL5の構造体とデータ表示メソッド

MQL5の構造体とデータ表示メソッド

この記事では、MqlDateTime、MqlTick、MqlRates、MqlBookInfoの各構造体と、それらからデータを表示するメソッドについて見ていきます。構造体のすべてのフィールドを表示するためには、標準的なArrayPrint()関数があります。この関数では、配列に含まれるデータを便利な表形式で、扱われる構造体の型とともに表示します。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第22部): 取引クラス - 基本取引クラス、制限の検証
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第22部): 取引クラス - 基本取引クラス、制限の検証

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第22部): 取引クラス - 基本取引クラス、制限の検証

この記事では、ライブラリベースの取引クラスの開発を開始し、最初のバージョンに取引操作を行うためのアクセス許可の初期検証を追加します。さらに、基本取引クラスの機能とコンテンツをわずかながら拡張します。
自己適応アルゴリズムの開発(第II部): 効率の向上
自己適応アルゴリズムの開発(第II部): 効率の向上

自己適応アルゴリズムの開発(第II部): 効率の向上

この記事では、以前に作成したアルゴリズムの柔軟性を向上させることでトピックの開発を続けます。アルゴリズムは、分析期間内のローソク足の数の増加または上昇/下降ローソク足超過率のしきい値の増加によって、より安定しました。分析のためにより大きなサンプルサイズを設定するかより高いローソク足の超過率を設定して、妥協する必要がありました。
preview
連続ウォークフォワード最適化(パート5):自動オプティマイザプロジェクトの概要とGUIの作成

連続ウォークフォワード最適化(パート5):自動オプティマイザプロジェクトの概要とGUIの作成

この記事では、MetaTrader5 ターミナルでのウォークフォワード最適化の詳細を説明します。 以前の記事では、最適化レポートを生成およびフィルタリングする方法を検討し、最適化プロセスを担当するアプリケーションの内部構造の分析を開始しました。 自動オプティマイザは C# アプリケーションとして実装され、独自のグラフィカル インターフェイスを備えています。 5番目となるこの記事では、このグラフィカルインタフェースの作成に専念します。
Jeremy Scott - MQL5「マーケット」販売の成功者
Jeremy Scott - MQL5「マーケット」販売の成功者

Jeremy Scott - MQL5「マーケット」販売の成功者

MQL5.community におけるニックネーム Johnnypasado ことJeremy Scott 氏は MQL5 「マーケット」サービスにプロダクツを提供することで有名になりました。Jeremy は「マーケット」ですでに何千ドルも得ていますが、それで終わるわけではありません。将来の百万長者を詳しく知り MQL5 「マーケット」の販売者に対してなにかアドバイスを得ようと思いました。
ヘッジ  Expert Advisor コーディングの基礎
ヘッジ  Expert Advisor コーディングの基礎

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

ヘッジ Expert Advisor の例が本稿で提供されたばかりです。私は個人的に好むヘッジペアを選びます。EURJPY と GBPJPY です。それはつねに同じように変動し、ヘッジングオーダータイプの設定が簡単なものです。
MetaTrader 5 プラットフォームに新しい UI 言語を追加する方法
MetaTrader 5 プラットフォームに新しい UI 言語を追加する方法

MetaTrader 5 プラットフォームに新しい UI 言語を追加する方法

MetaTrader 5 プラットフォームのユーザーインターフェースは複数言語に翻訳されています。あなたの母国語がサポートされている言語に含まれていなかったとしてもご心配なく。MetaQuotes Software Corp. が全利用者に対して提供する特別な MetaTrader 5 MultiLanguage Pack ユーティリティを使用して簡単に翻訳することができるのです。本稿ではMetaTrader 5 プラットフォームに新しい ユーザーインターフェース言語を追加する方法を提示します。
その他のアプリのためにMetaTrader5の取引価格を準備する方法
その他のアプリのためにMetaTrader5の取引価格を準備する方法

その他のアプリのためにMetaTrader5の取引価格を準備する方法

この記事は、エラーのハンドリングも含めて、ディレクトリの作成、データのコピー、Market Watchでのシンボルを使用の例などを紹介します。これら全ての要素は、最終的にユーザーによって定義されたフォーマットにてデータが格納されるためのシングルスクリプトにて集められます。
運動継続モデル-チャート上での検索と実行統計
運動継続モデル-チャート上での検索と実行統計

運動継続モデル-チャート上での検索と実行統計

この記事では、運動継続モデルの1つをプログラムによって定義します。 この主なアイデアは、2つの波の定義です(メインと補正) 極値点については、フラクタルだけでなく、 "潜在的な " フラクタル-まだフラクタルとして形成されていない極値点を適用します。
preview
Linux上のMetaTrader 5のC++マルチスレッドサポートを備えた概念実証DLLを開発する

Linux上のMetaTrader 5のC++マルチスレッドサポートを備えた概念実証DLLを開発する

最終製品がWindowsとLinuxシステムの両方でシームレスに動作するMetaTrader 5プラットフォームの開発をLinuxシステムのみでおこなう方法のステップとワークフローを探索する旅を始めます。WineとMinGWについて学ぶことができます。これらはどちらも、クロスプラットフォーム開発を機能させるために不可欠なツールです。特に、MinGWのスレッド実装(POSIXおよびWin32)については、どれを使用するかを選択する際に考慮する必要があります。次に、概念実証のDLLを構築し、それをMQL5コードで使用して、最後に両方のスレッド実装のパフォーマンスを比較します。すべては読者の基盤が自力でさらに拡大するようにするためです。この記事を読めば、LinuxでMT関連のツールを快適に構築できるはずです。
テクニカル分析:どのように分析するのか?
テクニカル分析:どのように分析するのか?

テクニカル分析:どのように分析するのか?

本稿ではインディケータ、マルチタイムフレームインディケータの再作成および日本式ろうそく足を使用するクオート表示に関する著者の意見を簡潔に述べます。本稿はプログラムの特定部分には言及せzす、一般的特徴を述べるものです。
DoEasyライブラリの時系列(第35部): バーオブジェクトと銘柄の時系列リスト
DoEasyライブラリの時系列(第35部): バーオブジェクトと銘柄の時系列リスト

DoEasyライブラリの時系列(第35部): バーオブジェクトと銘柄の時系列リスト

本稿は、簡単で迅速なプログラム開発のためのDoEasyライブラリの作成に関する新しいシリーズの始まりとなります。本稿では、銘柄の時系列データにアクセスして操作するためのライブラリ機能を実装します。メインおよび拡張時系列バーデータを格納するバーオブジェクトを作成し、オブジェクトの検索と並び替えを容易にするために、時系列リストにバーオブジェクトを配置します。
preview
あらゆるタイプのトレーリングストップを開発してEAに接続する方法

あらゆるタイプのトレーリングストップを開発してEAに接続する方法

この記事では、様々なトレーリングストップを簡単に作成するためのクラスと、トレーリングストップを任意のEAに接続する方法について説明します。
グラフィックコントロールオプションを用いたインディケータ作成
グラフィックコントロールオプションを用いたインディケータ作成

グラフィックコントロールオプションを用いたインディケータ作成

マーケットの動きに通じた方はMACDインディケータ(移動平均収束拡散)をご存じでしょう。価格の変動を分析するのに力強いツールで、コンピュータ分析手法が登場したごく初期段階からトレーダーに利用されているものです。本稿では MACDの潜在的修正と修正間でグラフィカルに切り替える可能性のあるインディケータへの実装について考察していきます。
ファジー理論を使用しインディケータを作成する簡単な例
ファジー理論を使用しインディケータを作成する簡単な例

ファジー理論を使用しインディケータを作成する簡単な例

本稿はファイナンシャルマーケット分析にファジー理論の概念を実用的に適用することに特化しています。エンベロープインディケータ上で2つのファジールールに基づくインディケータ生成シグナルの例を提供します。作成されたインディケータは複数のインディケータバッファを使用します。7個のバッファを計算に、5個のバッファをチャート表示に、2個をカラーバッファとします。
preview
パターン検索への総当たり攻撃アプローチ(第III部): 新しい水平線

パターン検索への総当たり攻撃アプローチ(第III部): 新しい水平線

本稿では、総当たり攻撃のトピックを続けます。プログラムアルゴリズムに市場分析の新しい機会を導入することで分析速度を高め、結果の品質を向上します。新しい追加により、このアプローチ内でグローバルパターンの最高品質で表示できるようになります。
テクニカル指標や取引シグナルの利益表のビジュアル最適化
テクニカル指標や取引シグナルの利益表のビジュアル最適化

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

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

MQL5入門(第8回):初心者のためのEA構築ガイド(II)

この記事では、MQL5フォーラムでよく見られる初心者からの質問を取り上げ、実践的な解決策を紹介します。売買やローソク足の価格取得、取引限度額の設定、取引期間や利益/損失の閾値の管理といった基本的なタスクを自動売買で実行する方法を学びます。MQL5でのこれらの概念の理解と実装を強化するため、ステップごとのガイダンスも提供します。
MQL5 クックブック:パラメータ数無制限での複数通貨対応 EXPERT 作成
MQL5 クックブック:パラメータ数無制限での複数通貨対応 EXPERT 作成

MQL5 クックブック:パラメータ数無制限での複数通貨対応 EXPERT 作成

本稿ではトレーディングシステムの最適化に対して一組のパラメータを使うパターンを作成していきます。同時にパラメータ数は無制限に認めます。シンボルリストは標準的なテキストファイル (*.txt)内に作成します。各シンボルに対する入力パラメータもファイルに格納されます。このように Expert Advisorの入力パラメータ数に関してターミナルの制約を回避することができます。
トレードシステムの評価 - 参入、退出と取引における一般の有効性
トレードシステムの評価 - 参入、退出と取引における一般の有効性

トレードシステムの評価 - 参入、退出と取引における一般の有効性

トレードシステムの有効性と利益性を決定できる多数の尺度がある。しかし、トレーダーは常にどのシステムでも試したいと考えている。この記事はどのようにして有効性の尺度に基づいた統計が MetaTrader 5 のプラットフォームに使えるかを教えるものである。 これは取引による統計の解釈を、S.V.Bulashev(ブラシェフ)による著作"Statistika dlya traderov"(トレーダーのための統計) の記述に矛盾しないものに変換するクラスを含んでいる。また最適化のためのカスタムファンクションの例も含んでいる。
MQL5 Cookbook:カスタム情報パネル上のポジションプロパティ
MQL5 Cookbook:カスタム情報パネル上のポジションプロパティ

MQL5 Cookbook:カスタム情報パネル上のポジションプロパティ

今回は、現在シンボルについてポジションプロパティを取得し、マニュアルトレーディングの間カスタム情報パネルにそのポジションプロパティを表示するシンプルな Expert Advisor を作成します。情報パネルはグラフィカルオブジェクトを用いて作成され、表示される情報はティック毎にリフレッシュされます。これは "MQL5 Cookbook: Getting Position Properties"と呼ばれるシリーズの以前の記事に記載があるスクリプトをつねにマニュアルで実行しなければならないのよりはるかに便利になります。
preview
自動で動くEAを作る(第09回):自動化(I)

自動で動くEAを作る(第09回):自動化(I)

自動EAの作成はそれほど難しい作業ではありませんが、必要な知識がないと多くの間違いを犯す可能性があります。この記事では、ブレイクイーブンとトレーリングストップレベルを作動させるトリガーの作成からなる自動化の最初のレベルを構築する方法について見ていきます。
DoEasyライブラリでのその他のクラス(第71部): チャットオブジェクトコレクションイベント
DoEasyライブラリでのその他のクラス(第71部): チャットオブジェクトコレクションイベント

DoEasyライブラリでのその他のクラス(第71部): チャットオブジェクトコレクションイベント

本稿では、いくつかのチャートオブジェクトイベント(銘柄チャートとチャートサブウィンドウの追加/削除、およびチャートウィンドウの指標の追加/削除/変更)を追跡する機能を作成します。
グラフィカルインタフェース  II:ライブラリのイベントハンドラの設定(チャプター3)
グラフィカルインタフェース  II:ライブラリのイベントハンドラの設定(チャプター3)

グラフィカルインタフェース II:ライブラリのイベントハンドラの設定(チャプター3)

以前の記事には、メインメニューの構成部分を作成するためのクラスの実装が含まれています。ここで、主要な基本クラスと作成されたコントロールのクラスでイベントハンドラを細かく見ることにします。また、マウスカーソルの位置に応じたチャートの状態の管理にも特別な注意が払われます。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第24部): 未決取引リクエストの使用 - 初期実装(ポジションのオープン)
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第24部): 未決取引リクエストの使用 - 初期実装(ポジションのオープン)

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第24部): 未決取引リクエストの使用 - 初期実装(ポジションのオープン)

本稿では、注文の値にいくつかのデータを格納し、マジックナンバーを配置し、保留中リクエストの実装を開始します。概念を確認するために、サーバエラーを受信して、待機後に繰り返しリクエストを送信する必要がある際にマーケットポジションを開くための最初のテスト保留中リクエストを作成しましょう。
preview
指標やEAのデータを表示するダッシュボードの作成

指標やEAのデータを表示するダッシュボードの作成

この記事では、指標とEAで使用するダッシュボードクラスを作成します。これは、エキスパートアドバイザー(EA)に標準指標を含めて使用するためのテンプレートを含む短い連載の紹介記事です。まず、MetaTrader 5データウィンドウに似たパネルを作成します。
MQL5 クックブック: 価格の乖離を分析するマルチシンボルインジケーターの開発
MQL5 クックブック: 価格の乖離を分析するマルチシンボルインジケーターの開発

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

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