定義済みリスクおよびRRレシオに基づく半自動化ドラッグドロップExpert Advisor連携構築 すべての取引を自動で行うトレーダーもいれば、複数インディケータのアウトプットを基にして自動と手動のミックスで取引を実行するトレーダーもいます。後者のグループの一員として、私はリスクと利益をチャートから直接、動的に評価するための連携ツールが必要でした。本稿は、定義済みの資本リスクおよびR/Rレシオを連携する半自動化Expert Advisorを実装する方法を提供します。EA パネル実行中には、 Expert Advisor リスク、R/R、ロットサイズ パラメータが変更可能です。
MQL5の電子テーブル 本稿では、第一ディメンションに異なるタイプのデータを含む動的二次元配列クラスについて述べていきます。テーブル形式でデータを格納すると、整理の幅広い問題を解決し、異なるタイプの広範囲におよぶ情報を格納および処理するのに好都合です。テーブルに連携する機能性を実装するクラスのソースコードは本稿に添付があります。
移動ミニマックス法:テクニカル分析用新インディケータと MQL5への実装実装 本稿ではZ.G.Silagadze氏による論文 'Moving Mini-max: a new indicator for technical analysis'を基にした移動ミニマックス インディケータの実装手順について述べます。このインディケータの考え方は、G. Gamov 氏のα 崩壊で提案される量子トンネル現象を基にしています。
DLLを使用せず、名前のつけられたパイプを使っての MetaTrader 5との通信 多くの開発者が同じ課題に出会います。安全性の低い DLL を使わずトレーディングターミナルのサンドボックスを手に入れる方法です。もっとも簡単で安全な方法の一つは、通常のファイル処理で動作する標準的な「名前付きパイプ」を使用することです。名前付きパイプにより、プロセッサ内でプログラム間のクライアントサーバー通信を行うことができます。サーバー、クライアント、それらの間のデータ交換、パフォーマンスのベンチマークを含んだ C++ 言語および MQL5 での実用例を見ていきます。
OpenCL:パラレルワールドへの橋渡し 2012年1月下旬、MetaTrader 5の開発を支援するソフトウェア開発企業はMQL5でのOpenCLのネイティブサポートを発表しました。本稿では解説例を用いてMQL5 環境におけるOpenCL のプログラミング基礎を記述し、処理スピードを上げるプログラムのシンプルな最適化例を提供します。
プライスヒストグラム(マーケット特性)とMQL5への導入 「マーケットプロファイル」は非常に優秀な思索家、 ピーター・スタイドルマイヤー氏によって展開されました。氏は全く異なるモデルセットに導く『水平的な』また『垂直的な』マーケットの動きに関する情報の別の解釈の仕方を提案しました。潜在するマーケットの拍動、または均衡と不均衡の周期と呼ばれる基本パターンがある、と仮定したのです。本記事では、プライスヒストグラムについて考察していきたいと思います。それは、マーケットプロファイルの最も単純なモデルです。また、その MQL5への導入について述べていきたいと思います。
DelphiでDLLをMQL5向けに書くためのガイド 本稿は、人気のプログラム言語ObjectPascalを使用しDelphiプログラム環境でDLLモジュールの作成メカニズムを検証します。本稿で使用している資料は、まずは問題を抱えたプログラム初心者用に考えられでおります。外部DLLに接続することでMQL5プログラム言語に埋め込まれた境界を破ります。
単一インスツルメント上で異なるExpert Advisorsを使ったトレーディングのためのORDER_MAGICの使用 本稿は、異なるExpert Advisorsの自動トレーディングの分割、組立て、同期同様magic-identificationを使用したインフォメーションコーディングの疑問について考察します。本稿は、より経験を積んだトレーダー同様初心者にも興味深い内容となっています。その理由は、Expert Advisorsおよび様々な戦略の複雑なシステムの同期を実装するのに有用な垂直ポジションの疑問に取り組んでいるからです。
名前つきパイプを使用したMetaTrader 5端末間コミュニケーションにDLLを使用しないソリューション 本稿は名前つきパイプを使用したMetaTrader 5端末同士のプロセス間コミュニケーションの実装方法について述べていきます。名前付きパイプを使用するにはCNamedPipesクラスが作成されます。 その使用検証と接続計測のために、ティックインディケータ、サーバー、クライアントスクリプトが提供されます。リアルタイムのクオートには名前付きパイプの使用で十分です。
最後の改革 トレーディングターミナルを見てください。価格の提示はどのような意味に見えますか?バー、ろうそく足、罫線私たちは価格からしか利益を得ない一方、時間と価格の両方を追求しています。市場を分析する際に、価格のみに注意を向けるだけで良いのでしょうか?この記事は、(「3目並べ」)ポイント・フィギュアチャート作成のためのスクリプトとアルゴリズムを提唱します。記されている推奨にて、記載されている実用的な使用方法の様々な価格パターンを考察していきます。
高度適応インディケータ理論および MQL5への実装 本稿は高度適応インディケータとその MQL5への実装について述べます。適応型サイバーサイクル、適応型重心、適応型RVIです。すべてのインディケータはJohn F. Ehlersの原著 "Cybernetic Analysis for Stocks and Futures" で紹介されていました。
MQL5での統計確率分布 本稿は、適用統計に使用されるランダム変数の確率分布(標準、対数正規分布、二項分布、ロジスティック分布、指数分布、コーシー分布、ストゥーデンとの t-分布、 ラプラス分布、 ポアソン分布、双曲線正割分布、 ベータ分布、ガンマ分布)について述べます。またこういった分布を処理するクラス特性についても述べます。
統計的推定 シーケンスの統計的パラメータの推定はたいへん重要なものです。それはたいていの数学的モデルと手法が異なる前提に基づいているからです。たとえば、分布法則の正常化、分散値、その他パラメータです。よって時系列を分析し推定するとき、主要な統計的パラメータを素早く明確に推定できるシンプルで使い勝手のよいツールが必要です。本稿では、もっともシンプルなランダムシーケンスの統計パラメータとビジュアル分析のメソッドをいくつか取り上げ述べていきます。それにより MQL5 でこれらメソッド、またニュープロットアプリケーションを用いて計算した結果の視覚化メソッドを実装します。
MQL5 標準ライブラリの拡張とコードの再利用 MQL5 標準ライブラリによってみなさんの開発者としての生活は楽になります。しかしながらそれは世界中の開発者全員のすべてのニーズを実装するわけではありません。よってみなさんがカスタム的なものをもっと必要とするなら一歩先へすすんで拡張することができます。本稿は MetaQuotesの Zig-Zag テクニカルインディケータを標準ライブラリに統合する方法をご紹介します。私達はMetaQuotes の設計哲学により自分自身の目標を達成しようという気持ちになります。
OpenCL: ネィティブから、より洞察力のあるプログラミングへ この記事は、少なくともOpenCLカー熱の実行されるハードウェアについて考察されている際に、最適化能力の可能性について焦点を当てています。取得された図形は、天井に着く値とは程遠いですが、既存のリソースをここに持っておくべきであるとしています(ターミナルの開発者に実行されるOpenCL APIは、ワークグループのサイズなど、最適化に重要なパラメーターを管理することを可能にしていません。)ホストプログラムの実行中に取得されたパフォーマンスはとても重要です。
トレーダーの為の正規表現 正規表現(英語ではregular expressions) とは、正規表現のパターンやマスクと呼ばれる指定されたルールに従ったテキストを処理する為の特別な言語です。この記事では、MQL5のRegularExpressionsライブラリを使用した取引レポートの処理をご紹介し、それを使った最適化結果をデモンストレーションします。
オブジェクト指向プログラミング オブジェクト指向プログラミングに関する多相性やカプセル化などについて理解する必要はありません。これらの機能を使うだけで良いのです。この記事ではオブジェクト指向プログラミングの基本を例を使って具体的に見ていきます。
クロスプラットフォームEA: タイムフィルタ この記事では、クロスプラットフォームEAによるさまざまな時間フィルタリングメソッドの実装について説明します。 時間フィルタクラスは、特定の時間が一定の時間構成設定に該当するかどうかをチェックします。
SQL と MQL5:SQLite データベースとの連携 本稿はご自身のプロジェクトで SQL を利用することに興味のある開発者を対象としています。ここではSQLite の機能性とメリットについて説明します。SQLite の特別な知識は必要ありませんが、SQL の最小限の知識があれば役に立つと思います。
MQL5とQLUAの比較ーなぜMQL5での取引操作は28倍速いのか? 多くのトレーダーは、どれくらいの速さで自分の注文が取引所に到達し、どれくらいの時間で実行されるのか、そしていつトレーダーの取引ターミナルに取引操作の結果が反映されるのかということについてよく考えるものだと思います。今まで誰もMQL5とQLUAのプログラムを使用した取引操作速度の比較測定を行っていないので、この比較を行いたいと思います。
MQL5 ウィザード:計算された価格での発注、ストップロスおよびテイクプロフィット設定標準ライブラリ拡張 本稿は MQL5 標準ライブラリの拡張について説明します。それは MQL5 ウィザードを用いてインクルードされたモジュールから受信する価格によって Expert Advisors を作成し、発注し、ストップロスおよびテイクプロフィットを設定することを可能にするものです。この方法はモジュール数に追加の制限は何も設けず、その連携動作において競合が発生することはありません。
MQL5プログラミングベージックス:リスト トレーディング戦略開発のためのプログラミング言語の新バージョン、MQL5は、以前のバージョン、MQL4と比較してより強力で効果的な機能を提供しています。その利点は本質的にオブジェクト指向プログラミングの機能にあります。この記事は、ノードやリストなど複雑なカスタムデータ型を用いることについて詳しく見ていきます。また、MQL5での実際的なプログラミングにてリストを用いる例を紹介します。
取引戦略におけるファジー論理 本稿では、ファジーライブラリを使用して、ファジー論理を適用した簡単な取引システムの構築例を検討します。ファジー論理、遺伝的アルゴリズムおよびニューラルネットワークを組み合わせることによりシステムを改良するための変形が提案されます。
クロスプラットフォームEA: CExpertAdvisor と CExpertAdvisors クラス この記事では、クロスプラットフォームのEAについて扱っています。主にクラス CExpertAdvisor と CExpertAdvisors は、この記事で説明した他のすべてのコンポーネントのコンテナとして機能します。
拡散と収束の自動探索 本稿では、シンプル、隠れ、拡張、トリプル、クワドラプル、収束のあらゆる種類の拡散、またA、B、Cクラスの拡散を考察し、それらをチャート上で検索及び表示するためのユニバーサル指標が開発されます。
クロスプラットフォームEA: カスタムストップ、ブレイクイーブン、トレーリング この記事では、クロスプラットフォームEAでのカスタムストップレベルの設定方法について説明します。 また、時間の経過とともにストップレベルを設定するメソッドについても説明します。
MQL5クックブック - 移動チャンネルのシグナルトレーディング この記事では、移動チャネルに基づいたシグナルを送信するクラスを実装するプロセスについて説明します。各々は、テスト結果を取引戦略が引き続きます。標準ライブラリのクラスは派生クラスを作成するために使用します。
グラフィカルインタフェースXI:標準グラフィックライブラリの統合(ビルド16) グラフィックライブラリの科学的なグラフを作成するための新バージョン(CGraphicクラス)が最近発表されました。今回のアップデートでは、グラフィカルインターフェイス作成のために開発された当ライブラリにグラフを作成するための新しいコントロールを備えたバージョンが導入されます。さまざまな種類のデータを視覚化することがさらに簡単になりました。
ユニバーサルEA: CUnIndicator と予約オーダーの使用 (その 9) この記事では、ユニバーサル CUnIndicator クラスを通じたインジケーターのタスクについて説明します。 さらに、予約オーダーを処理する新しいメソッドを考慮します。 注意: この時点でCStrategy プロジェクトの構造は、実質的な変更を受けています。 すべてのファイルは、ユーザーの利便性のため単一のディレクトリに配置されています。
グラフィカルインターフェイスXI:テーブルセル内のテキストエディットボックスとコンボボックス(ビルド15) このライブラリアップデートでは、テーブルコントロール(CTableクラス)に新しいオプションが追加されます。テーブルセル内のコントロールのラインアップが拡張され、今回はテキストエディットボックスとコンボボックスが追加されます。また、このアップデートでは、実行中にMQLアプリケーションのウィンドウのイズを変更する機能も導入されています。
グラフィカルインタフェース I: 種々のプログラム及びメタトレーダー4ターミナルでのライブラリのテスト(チャプター 5) このグラフィカルインターフェイスに関するシリーズの第一部の前章では、フォームクラスは、そのコントロールを押すしてフォームの管理を許可するメソッドによって改善されました。本稿では、インディケータやスクリプトなどの異なるMQLプログラムでのテストが行われます。ライブラリはすべてのMetaTraderプラットフォームで使用できるクロスプラットフォーム対応として設計されたので、MetaTrader 4でもテストを行います。
ターミナル間のデータ交換にクラウドストレージサービスを使用 クラウド技術の普及が進んでいます。 今日では、有料と無料のストレージサービスから選択することができます。 トレードで使用することは可能でしょうか? 本稿では, クラウドストレージサービスを利用してターミナル間でのデータ交換を行う技術を提案します。
グラフィカルインタフェースX: マルチラインテキストボックス(ビルド8) マルチラインテキストボックスについて説明します。OBJ_EDIT型のグラフィカルオブジェクトとは異なり、ここで説明されるバージョンには入力文字数の制限がありません。また、カーソルをマウスまたはキーを使用して移動してテキストボックスをシンプルなテキストエディタに切り替えるモードも追加されています。
MQL5 クックブック: 連想配列またはクイック データアクセスのための辞書の実装 本稿はユニークなキーによってエレメントへのアクセスが可能となる特殊なアルゴリズムについて説明します。キーとして任意のベースデータタイプが使用可能です。たとえば文字列や整数変数として表すことが可能です。そのようなデータのコンテナは一般的に辞書または連想配列と呼ばれます。それにより課題解決に対するより簡単で効果的な方法が提供されます。
ユニバーサルEA: シンボルプロパティへのアクセス (その 8) このテーマの8番目のパートは、任意のトレーディングツールへアクセスする特殊なオブジェクト CSymbol クラスの説明をします。 EAで使用する場合、このクラスはEAのプログラミングを簡素化し、その関数を拡張することができ、シンボルプロパティのセットを提供します。
フラグパターン 本稿では、フラグ、ペナント、ウェッジ、長方形、三角形、収縮三角形、膨張三角形のパターンを分析します。それらの類似点と相違点を分析するだけでなく、パターンを検出するための指標、及びその有効性を迅速に評価するためのテスター指標を作成します。
グラフィカルインターフェイスXI:レンダリングされたコントロール(ビルド14.2) ライブラリのこの新バージョンでは、すべてのコントロールが個別のOBJ_BITMAP_LABEL型のグラフィカルオブジェクトに描画されます。また、コードの最適化についても引き続き説明し、ライブラリの中核クラスの変更について説明します。
グラフィカルインターフェイスXI:ライブラリコードのリファクタリング(ビルド14.1) ライブラリが大きくなるにつれて、コードをサイズを減らすために最適化が再び必要がです。本稿で説明するライブラリのバージョンはさらにオブジェクト指向になっており、コードの学習もさらに容易になります。読者は、最新の変更の詳細な記述によって、独自のニーズに基づいて独自にライブラリを開発できるでしょう。
グラフィカルインタフェースIX:カラーピッカーコントロール(チャプター1) 本稿は、MetaTrader取引ターミナルのグラフィカルインタフェース作成ライブラリの開発に関するシリーズの第九部の初めとなります。それは2章で構成され、カラーピッカー、カラーボタン、プログレスバーや折れ線グラフなどのコントロールとインターフェースの新しい要素が提示されてます。