MetaTrader 5をダウンロードする

AutoElliottWaveMaker - Elliott Wavesの半自動分析のためのMetaTrader 5ツール

28 10月 2015, 16:55
Roman Martynyuk
0
240

はじめに

記事"The Implementation of Automatic Analysis of the Elliott Waves in MQL5" はいくつかの imperfectionsに悩むElliott Wave 波形ラベルアルゴリズムを取り上げます。のひとつは遅さです。それとまた自立的な自動分析は実用にあまり向いていないことを意識して、Realizing 多くのメリットを提供する半自動の波形ラベルツール を開発しようと決めました。

  • 人の制御によるラベリング
  • ユーザーが指定するチャート部分のみが分析されるという事実による分析の高速

この問題はAutoElliottWaveMaker と呼ばれ、本稿で紹介されます。AutoElliottWaveMaker は現在「マーケット」で購入可能なマニュアルの波形ラベリングツールの理論開発です。


1. プログラムオブジェクト

プログラムの主要なオブジェクトはラベルとラベルパネルです(図1)。

ラベルパネル

図1 ラベルパネル

ラベルパネルはチャートの左上にある一波形レベルのラベルシーケンスを表します。パネル位置およびラベル間の距離はプログラムの入力パラメータでユーザーによってカスタマイズされます(図2)。

  • interval - ラベルパネル上のラベル間の距離
  • x_distance - チャートの左上に相対的 X 軸に沿ったラベルパネルの位置
  • y_distance - チャートの左上に相対的 y 軸に沿ったラベルパネルの位置

入力パラメータ

図2 プログラムの入力パラメータ

ラベルパネルはまた現在波形レベルの名前を表示します(図1)。

Esc キーを押すとラベルパネルを表示/非表示することができます。ラベルパネル上で前のまたは後の波形レベルを表示するには、それぞれQ または Wを押します。

ラベルはドラッグアンドドロップ手法を使ってラベルパネルから移動することができます。ラベルの移動時、ラベルパネルは初期状態に戻ります。ラベルがラベルパネルから消去されたあと、パネルは復元されません。それを復元するためには別の波形ラベルに進み、それから戻ってくる必要があります。

波形レベルの数とスタイルおよびラベルは最初にプログラムを起動するとき作成されるLevels.txtファイルに自動的に設定されます。Levels.txtファイルはMetaTrader 5 ターミナルデータディレクトリの Filesフォルダにあります。ファイルを編集することでユーザーは波形レベルのスタイルを変更することができます(図3)。

レベルの記述

図3 Levels.txt コンテント

例として4行目を取り上げ見ていきます。

  • SubMinuette - 波形レベル名
  • i, ii, iii, iv, v, a, b, c, d, e, w, x, y, xx, z - wave tops;
  • Times New Roman - フォント
  • 8 - フォントサイズ
  • 15 - ピクセルでのフォント高
  • 255, 140, 0 - RGB フォーマットの色

ファイルを編集するときは、以下の制約が設定されます。

  • 波の一番上の数は15
  • 各波形頂点に対する表記は異なる

また、プログラムの適切な処理を確かなものとするために『日制限』を『チャートの最大バー」値として MetaTrader 5 ターミナル設定(メインメニュー-ツール-オプション-チャート)に設定する必要があります。


2. 波形ラベリングプロセス

Elliott Waves は手動と/あるいは自動モードでラベルされます。

手動モードは順番にラベリングの2とおりの方法 in its turn, presupposes

  1. ラベルパネルからラベルをドラグすることで
  2. チャートのバーの近くをクリックすることで

自動モードはチャートがプログラムアルゴリズムに基づきラベルされることを意味します。分析がチャート全体、またはどの部分についても(一つのラベルから別のラベルに)行えるということです。それはユーザーの指定によります。


2.1. 手動モード

手動のラベリングモードでは、ラベルが勝手にバーの上か下に表示され、チャートのスケールまたはサイズが変更されると自動で調整されます。ラベルは波形レベルの precedence 順序でセットされます。よって同じバーの上か下に2つ以上の波形ラベルがあると、シニア波形レベルのラベルがそれぞれジュニア波形レベルより高くまたは低くセットされます(図4、図5)。

ラベリング前のラベル位置

図4 ラベリング前のラベル位置

ラベリング後のラベル位置

図5 ラベリング後のラベル位置


図4はバーの上に SubMicro波形レベルのラベル (A)があることを示しています。ラベルLabel 5 は低いレベルで同じバーの上にセットされました。 - SuperMicro. SuperMicro レベルは SubMicroより低いので、ラベル5 はラベル (A) の下に表示されます(図5)。

手動ラベリングの際、波形ラベルは最大最小 が近隣のバーのそれよりも高く低いバーの一番近くのバーの上/下にセットされます。特殊な機能によりチャート内でラベルはより正確に位置づけられます。

上述のように手動モードのラベリングは2とおりの方法で行われます。そしてドラッグアンドドロップ手順は多少明確で、クリックに基づくラベリングは特殊です。

マウスのクリックによるラベリングの際はラベルパネル上でラベルを選択する必要があります。それはZ キーを押すことでも行えます(この場合パネル上のラベルの間で切り替えができます) in succession (in which case you can switch between the labels on the panel as you cycle through). 現在波形レベルのラベリングはチャート上の必要なバーでマウスをクリックすることで行います。ラベリングのプロセスを完了するために任意のラベル上でクリックするかX キーを押します。

ラベリングはラベルパネル上に選択されたラベルがある限り続きます。マウスを毎回クリックすることで連続ラベルを選択することができます。最後のラベルはクリックするラベリングプロセスで完了します


2.2. 自動モード

チャートの自動ラベリングはコントロールキーを使って行います。自動ラベリングのバリアントは3つあります。

  1. 選択されたラベルによるチャート分析
  2. ラベル選択後のチャート分析
  3. ラベル選択のない場合のチャート全体の分析

自動ラベリングの最初のバリアントは1を押すと処理されます。チャートはこの場合、左に別のラベルがなければ最初から選択されたラベルまで分析されます。そうでなければ分析は左の一番近いラベルから選択されたラベルまで行われます。

図6はチャート内の2つのラベルを示しています。二番目のラベルが選択されます。After pressing 1を押した後、ラベル間のチャート部分が分析されます。分析結果は図7に示されています。

分析1の前

図6 1を押す前のチャートの初期状態


分析1後

図7 ラベル間チャート部分の自動分析結果

ラベリングの二番目の変数は2を押すことでアクティブになります。チャートはこの場合、その右側に別のラベルがなければ選択されたラベルからチャートの最後まで分析されます。そうでなければ分析は選択されたラベルからから右側の一番近いラベルまで行われます。

図8はチャートのあるラベルを表示しています。このラベルが選択されます。2を押した後、ラベルからチャートの終わりまでチャート部分に対して分析が行われます。分析結果は図9に示されています。

分析2の前

図8 2を押す前のチャートの初期状態

分析2後

図9 ラベルからチャートの終わりまでのチャート部分の自動分析結果


分析の三番目のバリアントは1 または 2を押した後開始します。この場合は全てのチャートラベルがまず消去されます。

それに続いてすぐにmmediately following the automatic analysis of Elliott Wavesの自動分析が行われ、ラベリングのバリアントがレビューできるようになります。

分的結果を閲覧するのに3つのオプションがあります。

  1. 選択された波形のラベリングバリアント閲覧
  2. 選択された波形に続く波のラベリングバリアント閲覧
  3. 波形ラベルが選択されていなければ、チャートの分析セクションのラベリングバリアントを閲覧

以下のキーによってラベリングバリアントを使用して navigateできます。: 最初の閲覧オプションに対して3 (前回バリアント閲覧)と 4 (次回バリアント閲覧)、二度目の閲覧オプションに対して 5 前回バリアント閲覧)と 6 次回バリアント閲覧)、そして三度目の閲覧オプションにはそれらのどのキーも使用できます。

図10は前に自動でラベルされ図7で示された波形に対する次回のラベリングバリアントを表示しています。

次のラベリングバリアント

図10 選択された波形にたいする次のラベリングバリアント

図7、9、10に見られるように、自動ラベリングの開始前のラベルの色であるグレーで表示されているラベルもあります。これらは分析前にチャートにあったラベルです。それらはマウス選択はできません。これはすべて手動ラベリングか自動ラベリングか区別する必要があります。

自動ラベリングを手動ラベリングに変換するには、チャート内のラベルがすべて以前の色で選択可能な箇所で V キーを押す必要があります。ただし V が一度押されると、ラベリング貼り餡との閲覧はできなくなります。

自動分析の後に取得される波形名に関する情報もユーザーは利用可能ですこの情報は、ラベルが選択されたあと、またはラベリングバリアント閲覧のためのコントロールキーが押された後、分析に続いてすぐにチャートの一番上に表示されます(図11)。

波形タイプに関する情報

図11 選択sれた波形タイプに関する情報

自動分析は特定の波形ルールに基づいて行われることに留意します。波形特定ルールはログラムを最初に起動するとき作成される Rules.txtファイルに格納されます。このファイルは MetaTrader 5 ターミナルデータディレクトリの Filesフォルダにあります。


3. 余分な機能

チャートの任意のラベルは選択可能なラベルの特定グループにインクルードすることができます。ラベルグループはチャート内で任意のラベルを選択し タブキーを押す ことで選択されます。選択は選択済みラベルを持つ同一グループを形成しているすべてのラベルをカバーします。選択を取り消すにはタブ キーをもう一度押します。

ラベルは任意のラベルを選び、それから新しいラベルを作成することでグループに追加できます。新しいラベルは選択ラベルがあるグループに追加されます。

チャートで選択されたすべてのラベルには以下のような操作が可能です。

  • Del キーを使って削除される
  • 波形レベルはそれぞれA または S キーを使って減らしたり増やしたりできます。

またプログラムアルゴリズムは現在の時間枠において表示された波形レベル数を判断する自動メカニズムを持ちます。そのアルゴリズムは次の原則に基づきます。;時間軸にとって異なる座標を持つラベルは同じバーにセットすることはできません。波形レベル数もまた波形レベルをそれぞれ減らしたり増やしたりする Eおよび Rキーを用いて手動で制御することが可能です。


4. キーボードコマンドのリスト

図12は適用可能なキーボードコマンドと説明をすべて表示しています。

キーボードコマンド

図12 キーボードコマンド


おわりに

本稿はMetaTrader 5におけるElliott Wavesの半自動分析のための最初の開発を紹介しました。このプログラムには多くのユニークな機能があります。

  • あらゆる期間のチャートにおけるバーで波形頂点ラベルの自動バインディング
  • ラベルパネルからラベルをドラッグ、また in successionでマウスをクリックすることによる波形超点のラベリング
  • あらゆる期間のチャートの波形レベルprecedenceの順序でバーで波形頂点ラベルの自動ラベリング
  • チャートに表示される波形レベル数を自動および手動制御
  • 波形レベルラベリングに対してカスタムスタイルを作成
  • 分析がチャート全体、また部分的(一つのラベルから別のラベルに)にカバーするElliott Wavesの自動分析
  • 自走ラベリングバリアントの閲覧
  • 波形ルールの編集機能
  • マウスとキーボードを用いたラベルプロセスの制御

この開発は MQL5言語の大きなリソースを表示しています。 またできれば開発者が複雑で面白いプログラム作成をする後押しになることを願っています。


MetaQuotes Software Corp.によりロシア語から翻訳された
元の記事: https://www.mql5.com/ru/articles/378

MetaTrader 5とMQL5の提供する限りのない機会 MetaTrader 5とMQL5の提供する限りのない機会

この記事では、MQL5を0から学び始めて9ヶ月でどれほどの結果を得ることができるかという点とともに、トレーダーのプログラムがどのようなもになることができるかの例を紹介したいと思います。この例は、価格チャートで最小限のスペースを使用しながら、プログラムがどれほど多機能に、かつ、情報を提供するようになるのかについて紹介します。そして、ユーザーにとってトレードパネルがどれほどカラフル、明るく、直感的に分かりやすくなるか見ることができます。その他数多くの機能を紹介します。

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

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

最後の改革 最後の改革

トレーディングターミナルを見てください。価格の提示はどのような意味に見えますか?バー、ろうそく足、罫線私たちは価格からしか利益を得ない一方、時間と価格の両方を追求しています。市場を分析する際に、価格のみに注意を向けるだけで良いのでしょうか?この記事は、(「3目並べ」)ポイント・フィギュアチャート作成のためのスクリプトとアルゴリズムを提唱します。記されている推奨にて、記載されている実用的な使用方法の様々な価格パターンを考察していきます。

MQL5 コードの保護:パスワード保護、キージェネレータ、時間制限、リモートライセンス、高度 EA ライセンスキー暗号化技術 MQL5 コードの保護:パスワード保護、キージェネレータ、時間制限、リモートライセンス、高度 EA ライセンスキー暗号化技術

開発者のほとんどは自分の書いたコードの保護を必要としています。本稿は MQL5 ソフトウェアを保護するいくつかの異なる方法を紹介します。 - MQL5 スクリプト、Expert Advisors、インディケータに対しライセンス機能を提供する手法を紹介します。パスワード保護、キージェネレータ、アカウントライセンス、時間制限判定、MQL5-RPC 呼び出しを使用するリモート保護も取り上げます。