MQL5 プログラミング記事

トレーディングストラテジーをプログラミングするためのMQL5言語 を、ほとんどがコミュニティーのメンバーが書いた数多くのパブリッシュされた記事で勉強してください。記事はプログラミングに関連した任意の質問に対する解答を素早く見つけることができるようにカテゴリーに分けられています: インテグレーション、テスター、トレーディングストラテジー等。

私たちの新しいパブリケーションをフォローし、フォーラム上でそれらについてディスカッションしてください!

最新の | ベスト

MQL5言語でのTelegram用ボットの作成

この記事では、MQL5言語でのTelegram用ボットの作成を順を追って説明していきます。この資料は、トレードロボットを自分のモバイルデバイスに繋げたい人にとって、興味深いものになると思います。記事では、トレードシグナルのリンクの実行、サイト上の情報の検索、取引口座の状態や相場、チャートのスクリーンショットをあなたのモバイルデバイスへ送信するボットの例をご紹介します。

シグナル計算機

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

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

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

ファジーロジックの概要

ファジーロジックは、数学的論理と集合論の境界を拡張します。この記事では、マムダニ型とスゲノ型モデルを使用して、2つのファジー推論システムを説明し、ファジー理論の基本的な原則を取り扱います。MQL5FuzzyNetライブラリを使用して、これら2つのシステムに基づいてファジーモデルの実装について説明します。

MQL5 でのアサーション

この記事では、MQL5でのアサーションの利用について扱います。アサーションメカニズムとアサーションを実装するための一般的なガイダンスを2つの例として提供します。

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

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

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

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

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

ボタンについて考えましょう。ここでは、簡単なボタン、拡張機能を持ったボタン(アイコンボタンとスプリットボタン)、また相互接続されたボタン(ボタングループとラジオボタン)を作成するためのいくつかのクラスの例を説明していきます。そのうえ、それらの能力を拡大するためのコントロールのために既存クラスにいくつかの追加を導入します。

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

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

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

以前の記事には、メインメニューの構成部分を作成するためのクラスの実装が含まれています。ここで、主要な基本クラスと作成されたコントロールのクラスでイベントハンドラを細かく見ることにします。また、マウスカーソルの位置に応じたチャートの状態の管理にも特別な注意が払われます。

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

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

グラフィカルインタフェース IV:情報インターフェース要素(チャプター1)

開発の現段階では、グラフィカルインタフェース作成のライブラリは、フォームとそれに取り付けることができるいくつかのコントロールを含んでいます。今後の記事の1つがマルチウィンドウモードについてになることは、以前に言及されました。そのための準備が整ったので、それは次の章で対処します。この章では、ステータスバーとツールチップ情報インタフェース要素を作成するためのクラスを作成します。

MetaTrader 5にポジション計算のヘッジシステムが追加されました

リテールFXトレーダーの可能性を拡大する為に、プラットフォームに2つ目の計算システムであるヘッジングが追加されました。これからは、シンボルごとに、反対方向のものを含む、多数のポジションを持つことができます。これによって、いわゆる『ロック』を使った取引戦略を実装することができ、つまり、もし価格がトレーダーに反する方向へ向かった場合、反対方向にポジションを開くことができます。

グラフィカルインタフェース II: 区切り線とコンテキストメニュー要素(チャプター 2)

本稿では、区切り線要素を作成します。区切り線要素は、独立したインターフェース要素としてだけでなく、他の多くの構成要素の一部として使用することもできます。本稿ではまた、その後、コンテキストメニュークラスの開発に必要なものすべての詳細を考察します。それに加え、アプリケーションのすべてのグラフィカル・インターフェース要素へのポインタ格納の基本であるクラスに必要なすべての追加をご紹介します。

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

シリーズの第二部では、メインメニュー、コンテキストメニューなどのインターフェイス要素の開発の詳細をお話しします。また、要素の描画にもふれ、そのための特別なクラスを作成します。カスタムイベントを含むプログラムイベントの管理なども詳しく話し合われます。

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

この記事では、板情報(DOM)を利用する方法を示します。また、CMarketBookクラスの動作についても説明します。これは、MQL5クラスの標準ライブラリを拡張し、DOMを使用する際の便利な方法となります。

MQL5でのレジスタンス・サポートレベルの描写

この記事では、サポートとレジスタンスのレベルを描画するための4つの極点を求める方法を説明します。通貨ペアのチャートの極値を見つけるために、RSIインジケータを使用します。例として、サポートとレジスタンスのレベルを表示するインジケータコードを掲載しています。

CCanvas Classを使ったメーターの描写

メーターは車や飛行機などの産業や日常生活で見ることができます。これには管理する値を即座に反映する半円を使います。この記事では、 MetaTrader 5用のメーターのライブラリについて説明します。

モスクワ証券取引所で取引をする際の、EAの安全性について

この記事では、トレード執行時の安全性を確保する手法について考察します。例として、モスクワ証券取引所における低流動性の株式を扱います。この方法は、"モスクワ証券取引所の例によるトレードの原則"による、実践的なアプローチとなります。

グラフィカルインタフェース I: 種々のプログラム及びメタトレーダー4ターミナルでのライブラリのテスト(チャプター 5)

このグラフィカルインターフェイスに関するシリーズの第一部の前章では、フォームクラスは、そのコントロールを押すしてフォームの管理を許可するメソッドによって改善されました。本稿では、インディケータやスクリプトなどの異なるMQLプログラムでのテストが行われます。ライブラリはすべてのMetaTraderプラットフォームで使用できるクロスプラットフォーム対応として設計されたので、MetaTrader

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

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

グラフィカルインタフェース I: グラフィカルインタフェースの動画化(チャプター 3)

前回の記事では、コントロールのフォームクラスの開発に着手しました。本稿では、チャート領域にフォームを移動するためのクラスメソッドを書き入れによってそれを続行します。その後、このインターフェイスコンポーネントをライブラリコアに統合します。また、マウスカーソルが上をホバリングしたときにフォームコントロールの色が変わることを保証します。

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

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

グラフィカルインタフェース I: ライブラリストラクチャの準備(チャプター 1)

本稿は、グラフィカルインタフェースの開発に関するあと一つのシリーズの始まりです。現在、MQLアプリケーション内で高品質なグラフィカルインタフェースを迅速かつ簡単に作成できるよコードライブラリは1つもありません。ここで、グラフィカルインタフェースとは私たちになじみ深いオペレーティングシステムで使用されるグラフィカルインタフェースを意味します。

MQL5にて独自のグラフィカルパネルを作成する

MQL5プログラムの脂溶性は、たくさんの機能と、洗練されたGUIによって決定されます。ビジュアルによる理解は時折早くて安定した処理よりも重要なことがあります。こちらで標準ライブラリクラスを基盤にディスプレイパネルを毒で作成するためのステップごとの手順を紹介します。

ランダムフォレストの予測トレンド

本稿は Forex における通貨ペアのロングおよびショートポジションを予測するパターンを自動検索するための Rattle パッケージの使用について考察を行います。本稿は初心者トレーダーにも経験あるトレーダーにも有用な内容です。

GUIのレイアウトとコンテナの使用: CBoxクラス

この記事は、CBoxクラスによるレイアウトマネージャーを使って、レイアウトとコンテナに基づくGUIの生成の代替手法について取り扱います。CBoxクラスは、GUIパネルの必要不可欠なコンテナとして機能する補助コントロールです。グラフィカルパネルのデザインを容易にし、ときとして、コーディングの時間を割きます。

マーケットでプロダクトを購入することについてのアドバイス段階的ガイド

この段階的ガイドは希望のプロダクトをよりよく理解し検索しやすくするアドバイスと技を提供します。本稿は適切なプロダクトを検索し、不要なプロダクトをより分け、みなさんにとってのプロダクトの効果と本質を判断するための異なる方法を解き明かす試みをしています。

MetaTrader 5 でRSS フィードを表示するためのインタラクティブアプリケーション構築

本稿では RSS フィードを表示するためのアプリケーションを作成する機能を見ていきます。本稿は MetaTrader 5 用のインタラクティブプログラム作成に標準ライブラリの特徴を利用する方法を示します。

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

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

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

みなさんは移動平均のぎこちないグラィック以上のものが必要ですか?ターミナルにただ色がついている長方形よりも見栄えの良い何かを描画してみたいですか?ターミナルには魅力的なグラフィックを描くことができるのです。それはカスタムグラフィックを作成する CСanvas

MQL5 クックブック: 連想配列またはクイック データアクセスのための辞書の実装

本稿はユニークなキーによってエレメントへのアクセスが可能となる特殊なアルゴリズムについて説明します。キーとして任意のベースデータタイプが使用可能です。たとえば文字列や整数変数として表すことが可能です。そのようなデータのコンテナは一般的に辞書または連想配列と呼ばれます。それにより課題解決に対するより簡単で効果的な方法が提供されます。

HedgeTerminalAPIを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う - パート2

本稿ではポジションヘッジへの新しいアプローチについて述べ、本件に関する MetaTrader 4 および MetaTrader 5 のユーザー間のディベートに一線を画します。これは『HedgeTerminalパネルを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う-パート1』の続編です。パート2ではカスタム Expert Advisors

HedgeTerminalパネルを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う - パート1

本稿ではポジションヘッジへの新しいアプローチについて述べ、本件に関する MetaTrader 4 および MetaTrader 5 のユーザー間のディベートに一線を画します。そのようなヘッジを信頼して行うアルゴリズムは解りやすい言葉で、またシンプルなグラフと図で説明されています。本稿は新しいパネルHedgeTerminalに特化して説明しています。これは MetaTrader 5

モスクワ証券取引所のデリバティブ市場を例にとった取り引き価格の原則

本稿では取り引き価格とモスクワ証券取引所のデリバティブ市場のクリアリング詳細について説明します。本稿はデリバティブ取引で最初の為替経験をしたいと思っている初心者向けの理解しやすい内容です。また集中交換プラットフォームでの取引を検討している経験ある外為トレーダー向けでもあります。

オブジェクト指向アプローチによる EA モードのプログラミング

本稿は MQL5 でのマルチモード売買ロボットプログラミングの考えかたについて説明します。モードはすべてオブジェクト指向アプローチにより実装されます。どちらのモードクラス階層のインスタンスおよび検証用クラスも提供されます。売買ロボットのマルチモードプログラミングは MQL5 で書かれた EA

トレーダーの統計的クックブック:仮説

本稿では仮説について考察します。それは数理統計学の基本的考え方のひとつです。ここでは多様な仮説が検討され、数学的手法を用いて例を挙げて検証されます。実データはノンパラメトリックな方法を用いて一般化されます。データ処理には Statistica パッケージと移植された ALGLIB MQL5 数値解析ライブラリが使用されています。

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

本稿はターミナルのグローバル変数の処理を助けるオブジェクト作成のための MQL5 言語オブジェクト指向機能を明らかにします。実用例として私はプログラム段階実装のためのコントロールポイントとしてグローバル変数が使用される場合を考察します。