Aroonのダウンロードと解説|MT4インジケーター

Aroonアイキャッチ
  • URLをコピーしました!

AroonというMT4インジケーターが欲しいです。

どんなインジケーターなのですか?

ホシノ

FXの不労所得だけで年収2000万を達成しました。
このお悩みに誠意をもって回答します。

この無料EA不労所得が稼げます
累計テスト120年以上・リアル取引公開2020年~

BBF_MQL5-202401006
リアルトレード公開|EA BBF

このページでわかること・できること

〇Aroonインジケーターのダウンロード

〇Aroonの使い方や計算方法などについて

目次

ダウンロードはこちら

ここからインジケーターのダウンロードが可能。
ダウンロードするインジケーターファイルは.ex4ファイルとなる。
MT4のインジケーターフォルダへ移動すれば使用可能だ。

Aroonのインストール

ダウンロードしたAroonインジケーターはMT4のデータフォルダからindicatorsフォルダを探しファイルを移動する。

ファイル>データフォルダを開く>MQL4>indicators

indicatorsフォルダにRCIのファイルを移動し、MT4を再起動するとインストールが完了する。

Aroonインジケーターとは?

Aroonチャート画像

Aroonインジケーターは、相場のトレンドを特定するためのテクニカル分析ツールで、1995年にトゥーシャー・シャンデ(Tushar Chande)によって開発された。Aroonはサンスクリット語で「夜明け」を意味し、新しいトレンドの始まりを示すことを目的としている。Aroonは特にトレンドの強さと持続期間を評価するために使用される。トレンドフォロー戦略をもつトレーダーにとって有効なインジケーターとされる。

Aroonインジケーターの構成

Aroonインジケーターは、通常2つのラインで構成される:

  1. Aroon Up: 特定の期間内の最高値からの経過日数を基に計算される。
  2. Aroon Down: 特定の期間内の最安値からの経過日数を基に計算される。

計算方法

Aroon UpとAroon Downの計算式は次の通り:

  • Aroon Up = ((期間 – 最高値の日数) / 期間) * 100
  • Aroon Down = ((期間 – 最安値の日数) / 期間) * 100

ここで、「期間」は一般的に14日間が使われるが、トレーダーのニーズに応じて変更が可能。「最高値の日数」と「最安値の日数」は、特定の期間内での最高値と最安値が発生した最も近い日の経過日数を意味する。

Aroonインジケーターの解釈

  • Aroon Upが高く、Aroon Downが低い場合:
    • 強い上昇トレンドを示す。特にAroon Upが70以上で、Aroon Downが30以下の場合、上昇トレンドが強いとされる。
  • Aroon Downが高く、Aroon Upが低い場合:
    • 強い下降トレンドを示す。特にAroon Downが70以上で、Aroon Upが30以下の場合、下降トレンドが強いとされる。
  • Aroon UpとAroon Downが共に低い場合:
    • トレンドが弱い、またはレンジ相場を示す。この状況では、マーケットは方向感を欠いていると解釈される。
  • Aroon UpとAroon Downが交差する場合:
    • トレンドの転換点を示すことがある。例えば、Aroon UpがAroon Downを上回る場合、上昇トレンドへの転換を示唆する。

使い方の例

  1. トレンドの識別:
    • Aroonインジケーターは、トレンドの強さを識別するために使用される。強いトレンドの際にはポジションを保有し、トレンドが弱まる兆候が見えたらポジションを手仕舞う判断ができる。
  2. トレンドの転換点の特定:
    • Aroon UpとAroon Downの交差点を利用して、トレンドの転換点を見極めることができる。例えば、Aroon UpがAroon Downを上回る際には買いのシグナルと考え、逆にAroon DownがAroon Upを上回る際には売りのシグナルと考える。
  3. エントリーとエグジットのタイミング:
    • トレンドが強いときにポジションを持ち、トレンドが弱まるときにポジションを解消することで、エントリーとエグジットのタイミングを計るのに役立つ。

メリットとデメリット

メリット

  • トレンドの早期発見: 新しいトレンドの開始を比較的早くキャッチできる。
  • シンプルな計算: 理解しやすく、計算もシンプル。

デメリット

  • レンジ相場でのパフォーマンス: 市場がレンジ相場にある場合、Aroonインジケーターはダマシサインを出す。
  • 遅延: 価格変動に対して反応が遅れることがある。

注意点

  • 期間の設定:
    • Aroonインジケーターの期間設定はトレーダーの戦略に応じて調整する必要がある。短期間ではより敏感に反応するが、ノイズが増える可能性がある。長期間では滑らかに動くが、反応が遅れることもある。
  • 他のインジケーターとの併用:
    • Aroonインジケーターは他のトレンド指標やオシレーターと併用することで、シグナルの信頼性を向上させることができる。

Aroonインジケーターは、トレンドフォロー戦略を採用するトレーダーにとって非常に有用なツールとなる。適切な期間設定と他のインジケーターとの組み合わせにより、効果的なトレンド分析が可能となる。

Aroonのプログラム

//+------------------------------------------------------------------+
//|                                                        Aroon.mq4 |
//|                                     Copyright 2024, FX-Bonus.net |
//|                                            https://fx-bonus.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, FX-Bonus.net"
#property link      "https://fx-bonus.net/"
#property version   "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Yellow
#property indicator_color2 Red

//--- input parameters
input int period = 14; // Default Aroon period

//--- indicator buffers
double AroonUpBuffer[];
double AroonDownBuffer[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   // Indicator buffer assignment
   SetIndexBuffer(0, AroonUpBuffer);
   SetIndexBuffer(1, AroonDownBuffer);
   
   // Indicator styles
   SetIndexStyle(0, DRAW_LINE);
   SetIndexStyle(1, DRAW_LINE);

   // Indicator labels
   IndicatorShortName("Aroon(" + IntegerToString(period) + ")");
   SetIndexLabel(0, "Aroon Up");
   SetIndexLabel(1, "Aroon Down");

   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   int i, highest, lowest;
   double aroonUp, aroonDown;
   
   // Check if there are enough bars
   if(rates_total < period)
      return(0);

   // Calculate Aroon Up and Down
   for(i = MathMax(prev_calculated, period); i < rates_total; i++)
     {
      highest = iHighest(NULL, 0, MODE_HIGH, period, i - period);
      lowest = iLowest(NULL, 0, MODE_LOW, period, i - period);

      aroonUp = 100.0 * (period - (i - highest)) / period;
      aroonDown = 100.0 * (period - (i - lowest)) / period;

      AroonUpBuffer[i] = aroonUp;
      AroonDownBuffer[i] = aroonDown;
     }

   return(rates_total);
  }
//+------------------------------------------------------------------+

Aroonのソースコードを詳しく解説

プロパティとバッファの設定

#property strict
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Yellow
#property indicator_color2 Red
  1. #property strict:
    • 厳格な型チェックを有効にします。コードの品質向上とバグ防止に役立つ。
  2. #property indicator_separate_window:
    • インジケーターがメインチャートとは別のウィンドウに表示されることを指定。
  3. #property indicator_buffers 2:
    • インジケーターが2つのバッファを使用することを指定する。これはAroon UpとAroon Downの2つのラインを表示するため。
  4. #property indicator_color1 Yellow:
    • 最初のバッファ(Aroon Up)のライン色を黄色に設定する。
  5. #property indicator_color2 Red:
    • 2つ目のバッファ(Aroon Down)のライン色を赤に設定する。

入力パラメータとバッファの宣言

input int period = 14; // Default Aroon period double AroonUpBuffer[]; double AroonDownBuffer[];

  1. input int period = 14:
    • インジケーターの計算に使用するデフォルト期間(14)を入力パラメータとして設定。これにより、ユーザーは期間を変更できる。
  2. double AroonUpBuffer[]:
    • Aroon Upの値を格納するためのバッファ。
  3. double AroonDownBuffer[]:
    • Aroon Downの値を格納するためのバッファ。

OnInit関数:初期化処理

int OnInit()
  {
   SetIndexBuffer(0, AroonUpBuffer);
   SetIndexBuffer(1, AroonDownBuffer);
   
   SetIndexStyle(0, DRAW_LINE);
   SetIndexStyle(1, DRAW_LINE);

   IndicatorShortName("Aroon(" + IntegerToString(period) + ")");
   SetIndexLabel(0, "Aroon Up");
   SetIndexLabel(1, "Aroon Down");

   return(INIT_SUCCEEDED);
  }
  1. SetIndexBuffer(0, AroonUpBuffer):
    • 最初のバッファにAroon Upのデータを割り当てる。
  2. SetIndexBuffer(1, AroonDownBuffer):
    • 2つ目のバッファにAroon Downのデータを割り当てる。
  3. SetIndexStyle(0, DRAW_LINE):
    • 最初のバッファの表示スタイルをラインに設定。
  4. SetIndexStyle(1, DRAW_LINE):
    • 2つ目のバッファの表示スタイルをラインに設定。
  5. IndicatorShortName(“Aroon(” + IntegerToString(period) + “)”):
    • インジケーターの短い名前を設定。IntegerToString(period)を使用して期間を文字列に変換し、名前に含める。
  6. SetIndexLabel(0, “Aroon Up”):
    • 最初のバッファのラベルを「Aroon Up」に設定。
  7. SetIndexLabel(1, “Aroon Down”):
    • 2つ目のバッファのラベルを「Aroon Down」に設定。
  8. return(INIT_SUCCEEDED):
    • 初期化が成功したことを示すためにINIT_SUCCEEDEDを返す。

OnCalculate関数:計算処理

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   int i, highest, lowest;
   double aroonUp, aroonDown;
   
   if(rates_total < period)
      return(0);

   for(i = prev_calculated; i < rates_total; i++)
     {
      highest = iHighest(NULL, 0, MODE_HIGH, period, i - period + 1);
      lowest = iLowest(NULL, 0, MODE_LOW, period, i - period + 1);

      aroonUp = 100.0 * (period - (i - highest)) / period;
      aroonDown = 100.0 * (period - (i - lowest)) / period;

      AroonUpBuffer[i] = aroonUp;
      AroonDownBuffer[i] = aroonDown;
     }

   return(rates_total);
  }
  1. OnCalculate関数は、インジケーターの値を計算する主要な関数。
  2. int i, highest, lowest:
    • ループ変数i、最高値と最安値の日付インデックスを格納する変数highestlowestを宣言する。
  3. double aroonUp, aroonDown:
    • Aroon UpとAroon Downの値を格納する変数を宣言する。
  4. if(rates_total < period) return(0):
    • 利用可能なバーの数が計算に必要な期間より少ない場合、計算を行わずに終了。
  5. for(i = prev_calculated; i < rates_total; i++):
    • prev_calculatedからrates_totalまでループを実行する。prev_calculatedは前回計算が行われたバーのインデックス。
  6. highest = iHighest(NULL, 0, MODE_HIGH, period, i – period + 1):
    • 指定した期間内の最高値が発生したバーのインデックスを取得。
  7. lowest = iLowest(NULL, 0, MODE_LOW, period, i – period + 1):
    • 指定した期間内の最安値が発生したバーのインデックスを取得。
  8. aroonUp = 100.0 * (period – (i – highest)) / period:
    • Aroon Upの値を計算する。最高値が発生したバーからの期間を基に計算。
  9. aroonDown = 100.0 * (period – (i – lowest)) / period:
    • Aroon Downの値を計算する。最安値が発生したバーからの期間を基に計算。
  10. AroonUpBuffer[i] = aroonUp:
    • 計算したAroon Upの値をバッファに格納。
  11. AroonDownBuffer[i] = aroonDown:
    • 計算したAroon Downの値をバッファに格納。
  12. return(rates_total):
    • 計算が完了したバーの総数を返す。

MT4インジケーターまとめ

  • URLをコピーしました!
  • URLをコピーしました!

このEAを使って、将来の見通しが立ちました

収入を増やしたい、将来のための資産が欲しい、支払いに縛られない自由な生活がしたい

このEAを使うと将来が見通せます。

22年以上で無敗の安定取引。リスク0%運用も可能なロジック。年利100%越えの上級者向け取引も可能。

マネーマシンとして育て上げることで大きな不労所得を得られます。

BBF-Girl
ドリームEA_BBF 無料ダウンロード
BBF_MQL5-202401006
リアルトレード公開|EA BBF

ポジション監視の時間

集中力は続いてますか?


オートクローズツールを使ってポジション管理を自動化


自動ポジション管理だから万が一でも大丈夫

あなたは空いた時間を自由に、効率的に使えます

自動決済ルールは独自にカスタム可能

ストップ、リミット変更にも対応。

エントリー後のポジション管理をすべて自動化できるトレーディングサポートツール。

トレード中のちょっとした離席など、念のためセットといった使い方も可能。

MT4用自動決済ツール【AutoCloseTool】は無料で入手できます。

オートクローズツール

取引ごとにキャッシュバックが発生します

もらわないだけ損している
取引ごとに毎回発生する現金のキャッシュバック
海外FXのキャッシュバックはメリットしかないサービスです

取引ごとにキャッシュバック
目次