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

icon

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

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

新しい記事を追加
最新 | ベスト
MQL5 クックブック:ОСО オーダー
MQL5 クックブック:ОСО オーダー

MQL5 クックブック:ОСО オーダー

トレーダーのトレーディング活動にはさまざまなメカニズムや注文同士の関係を含む相互関係がつきものです。本稿は OCO 注文処理のソリューションを提案します。新規データタイプがそこで作成されるのみならず、標準クラスは広くかかわっています。
適応型相場の実用的評価法
適応型相場の実用的評価法

適応型相場の実用的評価法

この記事で提案するトレーディングシステムは、株価を分析するための数学的ツールです。 ディジタルフィルタリングと離散時系列のスペクトル推定を適用します。 戦略の理論的側面について説明し、テストEAを作成します。
取引におけるニューラルネットワークの実用化
取引におけるニューラルネットワークの実用化

取引におけるニューラルネットワークの実用化

本稿では、フル機能の自動売買ロボットを作成することを目的として、ニューラルネットワークと取引ターミナルの統合の主な側面について検討します。
トレーダーツール、上級者向けのテクニカル分析のためのMQL4
トレーダーツール、上級者向けのテクニカル分析のためのMQL4

トレーダーツール、上級者向けのテクニカル分析のためのMQL4

まず、トレーディングは確率の計算です。進展のエンジンとなる無為に関することわざは、それらのインジケーターやトレーディングシステムが開発された理由を明らかにします。トレーディングの多くの新人は「すでにできあがった」トレーディング理論を学習します。しかし、より多くの発見されていない市場の秘密があり、価格の動きの分析に使用されているツールは基本的に明らかにされていないテクニカルインジケーターや統計パッケージとして存在しています。マーケットの動向の理論への貢献において、Bill Williamsに感謝します。おそらくその漕ぎ手に頼るのは早すぎますが。
MQL5でのオブジェクトポインターの使用
MQL5でのオブジェクトポインターの使用

MQL5でのオブジェクトポインターの使用

デフォルトで、MQL5ではすべてのオブジェクトがレファレンスによって渡されますが、オブジェクトポインターを使用する可能性があります。しかし、オブジェクトは初期化されないかもしれないので、ポインター 確認が必要です。 この場合、 MQL5はクリティカルエラーでアップロードされずにプログラムが終了します。自動作成されたオブジェクトはこのようなエラーが発生しないのでその意味で安全です。本記事ではオブジェクトレファレンスとオブジェクトポインターの違いを理解し、ポインターを使うセキュアコードの書き方を考察します。
グラフィカルインタフェース I: コントロールのフォーム(チャプター 2)
グラフィカルインタフェース I: コントロールのフォーム(チャプター 2)

グラフィカルインタフェース I: コントロールのフォーム(チャプター 2)

本稿ではグラフィカルインタフェースの第一及び主要素である、コントロールのフォームを作成します。このフォームには複数のコントロールが任意の場所と組み合わせで添付することができます。
取引戦略におけるファジー論理
取引戦略におけるファジー論理

取引戦略におけるファジー論理

本稿では、ファジーライブラリを使用して、ファジー論理を適用した簡単な取引システムの構築例を検討します。ファジー論理、遺伝的アルゴリズムおよびニューラルネットワークを組み合わせることによりシステムを改良するための変形が提案されます。
MQL5 クックブック-ピボットトレーディングシグナル
MQL5 クックブック-ピボットトレーディングシグナル

MQL5 クックブック-ピボットトレーディングシグナル

この記事では、ピボットの反転に基づいたシグナルのクラスの開発と実装について説明します。 このクラスは、標準ライブラリを適用する戦略を形成するために使用されます。 フィルタを追加することにより、ピボット戦略を改善することができるでしょう。
preview
連続的なウォークフォワード最適化(その7)。オートオプティマイザの論理部分をグラフィックスでバインドし、プログラムからグラフィックスを制御する

連続的なウォークフォワード最適化(その7)。オートオプティマイザの論理部分をグラフィックスでバインドし、プログラムからグラフィックスを制御する

この記事では、オートオプティマイザプログラムのグラフィカルな部分と論理的な部分の接続について説明します。 ボタンクリックから最適化マネージャへのタスクリダイレクトまで、最適化の起動プロセスを考慮します。
初心者のためのMQL5におけるデジタルフィルタの実践的実装
初心者のためのMQL5におけるデジタルフィルタの実践的実装

初心者のためのMQL5におけるデジタルフィルタの実践的実装

トレーディングシステムを構築するトピックを扱うフォーラムではデジタルシグナルのフィルタリングに関する考え方が広く議論されてきています。MQL5においてデジタルフィルタの標準コードを作成しないことは思慮が足りないかもしれません。本稿では、『初心者のためのMQL5におけるカスタムインディケータ』よりシンプルなSMAのインディケータ コードをより複雑で汎用なデジタルフィルタに変換することについて述べます。本稿は前稿からのロジカルな続編です。また、コード内テキストの置き換え方法、プログラムエラーの修正方法についても述べます。
グラフィカルインタフェースX: マルチラインテキストボックス(ビルド8)
グラフィカルインタフェースX: マルチラインテキストボックス(ビルド8)

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

マルチラインテキストボックスについて説明します。OBJ_EDIT型のグラフィカルオブジェクトとは異なり、ここで説明されるバージョンには入力文字数の制限がありません。また、カーソルをマウスまたはキーを使用して移動してテキストボックスをシンプルなテキストエディタに切り替えるモードも追加されています。
MQL5 ウィザード:計算された価格での発注、ストップロスおよびテイクプロフィット設定標準ライブラリ拡張
MQL5 ウィザード:計算された価格での発注、ストップロスおよびテイクプロフィット設定標準ライブラリ拡張

MQL5 ウィザード:計算された価格での発注、ストップロスおよびテイクプロフィット設定標準ライブラリ拡張

本稿は MQL5 標準ライブラリの拡張について説明します。それは MQL5 ウィザードを用いてインクルードされたモジュールから受信する価格によって Expert Advisors を作成し、発注し、ストップロスおよびテイクプロフィットを設定することを可能にするものです。この方法はモジュール数に追加の制限は何も設けず、その連携動作において競合が発生することはありません。
MetaEditor:支点としてのテンプレート
MetaEditor:支点としてのテンプレート

MetaEditor:支点としてのテンプレート

読者の多くにとって EA を書く準備はすべて一度だけすると、それを継続的に利用できるというのは初耳でしょう。
preview
MetaTrader 5のWebSocket — WindowsAPIの使用

MetaTrader 5のWebSocket — WindowsAPIの使用

この記事では、WinHttp.dllを使用してMetaTrader 5プログラム用のWebSocketクライアントを作成します。クライアントは最終的にクラスとして実装され、Binary.com WebSocketAPIに対してもテストされます。
CGraphic ライブラリを使用したスキャルピング相場深度の実装
CGraphic ライブラリを使用したスキャルピング相場深度の実装

CGraphic ライブラリを使用したスキャルピング相場深度の実装

この記事では、スキャルピング相場深度ツールの基本的な関数を作成します。 また、CGraphic ライブラリーをベースにしたティック・チャートを開発し、オーダーブックと統合します。 記述された相場深度を使用して、短期トレードの強力なアシスタントツールを作成することが可能になります。
フラクタルラインの構築
フラクタルラインの構築

フラクタルラインの構築

本稿はトレンドラインとフラクタルを利用したさまざまなタイプのフラクタルライン構築について説明します。
グラフィカルインタフェースを備えたユニバーサルチャンネル
グラフィカルインタフェースを備えたユニバーサルチャンネル

グラフィカルインタフェースを備えたユニバーサルチャンネル

すべてのチャネルインジケータは、上中下の3ラインとして表示されます。 移動平均インジケーターは主にチャネルに使用されますが、中央の線の描画原理は移動平均に似ています。 上下の線は中心線から等しい距離に位置します。 この距離は、標準偏差値 (ボリンジャーバンドバンド)、または ATR値 (ケルトナーチャネル) を使用して、価格のパーセント (エンベロープインジケータ) としてポイント単位で決定されます。
異なる国での異なるタイムゾーンに基づくトレーディング戦略例
異なる国での異なるタイムゾーンに基づくトレーディング戦略例

異なる国での異なるタイムゾーンに基づくトレーディング戦略例

インターネット検索をしていると、多くの戦略を見つけるのはたやすいことです。そこから多様な提案を得ることができます。インサイダーの方法を採り入れ、異なる大陸の異なるタイムゾーンに基づく戦略作成の手順を見ていきます。
MQL5 Cookbook:トレードレベルを設定/変更する際エラーを避ける方法
MQL5 Cookbook:トレードレベルを設定/変更する際エラーを避ける方法

MQL5 Cookbook:トレードレベルを設定/変更する際エラーを避ける方法

シリーズの前稿 "MQL5 Cookbook: Analyzing Position Properties in the MetaTrader 5 Strategy Tester" からの Expert Advisor への取り組みの続編として、既存の関数を改良、最適化しつつ有用な関数を数多く用いて Expert Advisor を強化していきます。今回 Expert Advisor は MetaTrader 5 「ストラテジーテスタ」で最適化可能な外部パラメータを取得し、いくつかの点でシンプルなトレーディングシステムのようになります。
preview
母集団最適化アルゴリズム:灰色オオカミオプティマイザー(GWO)

母集団最適化アルゴリズム:灰色オオカミオプティマイザー(GWO)

最新の最適化アルゴリズムの1つである灰色オオカミオプティマイザについて考えてみましょう。テスト関数の元々の動作により、このアルゴリズムは、以前に検討されたものの中で最も興味深いものの1つになります。これは、ニューラルネットワークの訓練に使用される最も優れたアルゴリズムの1つであり、多くの変数を持つ滑らかな関数です。
インディケータ代替一目均衡表–設定, 用例
インディケータ代替一目均衡表–設定, 用例

インディケータ代替一目均衡表–設定, 用例

代替一目均衡表を正しく設定するには?設定のパラメータ説明を読んでください。本稿は、インディケータ一目均衡表のみならず、パラメータ設定方法を理解するのに役立ちます。確実に、標準的な一目均衡表の設定方法についての理解も深まります。
FOREX 向けクラスターインディケータ構築の理論的基礎
FOREX 向けクラスターインディケータ構築の理論的基礎

FOREX 向けクラスターインディケータ構築の理論的基礎

クラスターインディケータは通貨ペアを個別の通貨に分けるインディケータセットです。インディケータは相対通貨変動をトレースし、新しい通貨トレンドのフォーマット可能性を判断し、トレードシグナルを受信し、中長期ポジションをフォローします。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第19部): ライブラリメッセージのクラス
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第19部): ライブラリメッセージのクラス

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第19部): ライブラリメッセージのクラス

本稿では、テキストメッセージを表示するクラスについて検討します。現在、異なるテキストメッセージが多数あるので、ロシア語または英語のメッセージを他の言語に保存、表示、翻訳する方法を再調整するときが来ました。さらに、新しい言語をライブラリに追加して言語をすばやく切り替える便利な方法を導入するのが望ましいでしょう。
ZUP - ぺサベントパターンぺサベント・パターンのユニバーサル ZigZag パート 1
ZUP - ぺサベントパターンぺサベント・パターンのユニバーサル ZigZag パート 1

ZUP - ぺサベントパターンぺサベント・パターンのユニバーサル ZigZag パート 1

本稿はインディケータ ZUP -ぺサベントパターンぺサベント・パターンのユニバーサル ZigZag 、の考えを手短に説明します。また、 ZUP に組み込まれた ZigZag インディケータについても説明します。
マルチ通貨システム エキスパートアドバイザーの作成
マルチ通貨システム エキスパートアドバイザーの作成

マルチ通貨システム エキスパートアドバイザーの作成

この記事は、複数のシンボルをトレードし、同時にいくつものトレーディングシステムを使用するエキスパートアドバイザーのストラクチャーを紹介します。もしすでにすべてのEAにおいて最適な入力パラメーターを特定し、それぞれに対して個別に良いテスト結果を得ているのであれば、もしすべての戦略を合わせて同時に全EAをテストすればどのような結果を得ることができるか、ご自身に尋ねてみてください。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第28部): 指値取引リクエストの決済、削除、変更
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第28部): 指値取引リクエストの決済、削除、変更

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第28部): 指値取引リクエストの決済、削除、変更

これは、保留中リクエストの概念に関する3番目の記事です。ここでは、ポジションの決済、指値注文の削除、ポジションと指値注文パラメータの変更のためのメソッドを作成することにより、指値取引リクエストのテストを完了します。
アンチウイルスソフトとファイアウォール下でのMetaTrader 4
アンチウイルスソフトとファイアウォール下でのMetaTrader 4

アンチウイルスソフトとファイアウォール下でのMetaTrader 4

トレーダーの大半は、PCの保護のために特別なプログラムを使用する。不幸にもこれらのプログラムはウイルスやトロイの木馬からコンピューターを保護するだけではなく、かなりのリソースを消費します。これは、ネットワークトラフィックにも関連し、様々な知的アンチウイルスソフトやファイアウォールによってコントロールされます。この記事を執筆した理由は、ファイアウォールを稼働させたため、動作の重いMetaTrader 4クライアントターミナルにトレーダーがクレームをつけたためです。Kaspersky Antivirus 6.0とOutpost Firewall Pro 4.0を用いて独自のリサーチを行うことにしました。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第29部): 未決取引リクエスト - 特定の条件下での注文とポジションの削除と変更
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第29部): 未決取引リクエスト - 特定の条件下での注文とポジションの削除と変更

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第29部): 未決取引リクエスト - 特定の条件下での注文とポジションの削除と変更

本稿では、保留中リクエスト取引の概念の説明を完了し、未決注文を削除する機能と、特定の条件下で注文とポジションを変更する機能を作成します。したがって、シンプルなカスタム戦略、またはユーザ定義の条件でアクティブ化されるEA動作ロジックを開発できるようになります。
カスタムグラフィックコントロールパート1:簡単なコントロールを作成する
カスタムグラフィックコントロールパート1:簡単なコントロールを作成する

カスタムグラフィックコントロールパート1:簡単なコントロールを作成する

本稿では、グラフィックコントロールの一般的な原則を網羅します。グラフィックオブジェクトの作業を早く便利に行うためのツールを用意し、テキストや数値データの入力のために簡単なコントロールを作成する方法や、その使用方法の例を分析していきます。
文字列:ASCII シンボルのテーブルとその使用
文字列:ASCII シンボルのテーブルとその使用

文字列:ASCII シンボルのテーブルとその使用

本稿では、ASCII シンボルのテーブルとその利用方法を分析します。また、その動作原理が ASCII テーブルの特殊性に基づく新しい関数をいくつか取り上げ、それらをインクルードする新しいライブラリを作成します。それらは別のプログラム言語ではきわめて一般的ですが、埋め込み関数には含まれていないものです。そのほかに、文字列を処理する基本を詳しく考察します。よって、みなさんはこの便利なデータタイプについて、確かに何か新しいことを学ぶこととなるのです。
グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)
グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)

グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)

シリーズの最初の章は、シンプルボタンと多機能ボタンについてでした。2番目の記事は、アプリケーション内でユーザーがセット(グループ)のうちオプションのいずれかを選択することができる際の要素の作成を可能にする相互接続されたボタンのグループに専念します。
標準ライブラリクラスを使ってオリジナルのMarket Watchを作成します。
標準ライブラリクラスを使ってオリジナルのMarket Watchを作成します。

標準ライブラリクラスを使ってオリジナルのMarket Watchを作成します。

新しいMetaTrader 5クライアント端末とMQL5言語はトレーダーにビジュアル情報を提供する機会をもたらします。 本稿では、汎用的拡張可能なクラスセットを提案します。それはチャート上の任意のテキストの表示作成作業をすべて行うものです。 Market Watch インディケータの例を提供します。
preview
多色ローソク足を作成するためのオプションの探究

多色ローソク足を作成するためのオプションの探究

この記事では、ローソク足でカスタマイズされたインジケーターを作成する可能性について説明し、それらの長所と短所を指摘します。
グラフィカルインタフェース I: フォームボタンとインターフェイス要素削除のための関数(チャプター 4)
グラフィカルインタフェース I: フォームボタンとインターフェイス要素削除のための関数(チャプター 4)

グラフィカルインタフェース I: フォームボタンとインターフェイス要素削除のための関数(チャプター 4)

本稿では、コントロールのクリックによるフォーム管理のメソッドを追加してWindowクラスの開発を続けていこうと思います。フォームのボタンによってのプログラムの終了を有効にするだけでなく、フォームの最小化と最大化機能も実装します。
MQL5での統計確率分布
MQL5での統計確率分布

MQL5での統計確率分布

本稿は、適用統計に使用されるランダム変数の確率分布(標準、対数正規分布、二項分布、ロジスティック分布、指数分布、コーシー分布、ストゥーデンとの t-分布、 ラプラス分布、 ポアソン分布、双曲線正割分布、 ベータ分布、ガンマ分布)について述べます。またこういった分布を処理するクラス特性についても述べます。
オープンされたポジションの二段階の修正
オープンされたポジションの二段階の修正

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

二段階アプローチにより、トレンドに近い状況でのポジションの不必要なクロージングや再オープンを避けることができます。
MQL5クックブック - スライディングウィンドウ内指標の高速計算のためのリングバッファの作成
MQL5クックブック - スライディングウィンドウ内指標の高速計算のためのリングバッファの作成

MQL5クックブック - スライディングウィンドウ内指標の高速計算のためのリングバッファの作成

リングバッファは、スライディングウィンドウで計算を実行するときにデータを配置するのに最も簡単で効率的な方法です。本稿では、そのアルゴリズムを説明し、同アルゴリズムが如何にスライディングウィンドウでの計算を単純化して効率を向上させるかを示します。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第10部): MQL4との互換性 - ポジションオープンイベントと指値注文発動イベント
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第10部): MQL4との互換性 - ポジションオープンイベントと指値注文発動イベント

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

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

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

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

MQL5でのZIPアーカイブの扱い

MQL5は常に進化しています。この度新しい機能が追加されました。この革新により、DLLなしでZIPアーカイブを標準MQL5ツールで実行できるようになりました。この記事ではCZipクラスの使い方と、ZIPアーカイブの読み込み・生成・修正を例として扱います。