iAC()

 iAC()関数は、ビル・ウィリアムズのアクセラレーターオシレーター(Accelerator/Decelerator)の値を取得するために使用します。

 iAC()関数は、以下のように定義されています。

double iAC(
string symbol,
int timeframe,
int shift
);

 各引数の意味は、以下のとおりです。

  • string symbol
    アクセラレーターオシレーターの値を計算する通貨ペア名を指定します。
    通貨ペア名は、「気配値表示ウィンドウ」に表示されているとおりに記述します。
    特定の通貨ペア名を指定せず、EA等を適用したチャートの通貨ペアのアクセラレーターオシレーターの値を取得したい場合は、「NULL」と記述します。
  • int timeframe
    以下の表に従って、アクセラレーターオシレーターの値を計算する時間軸を指定します。

    種 類
    定 数
    内 容
    PERIOD_CURRENT
    現在の時間足
    PERIOD_M1
    1分足
    PERIOD_M5
    5分足
    PERIOD_M15
    15
    15分足
    PERIOD_M30
    30
    30分足
    PERIOD_H1
    60
    1時間足
    PERIOD_H4
    240
    4時間足
    PERIOD_D1
    1440
    日 足
    PERIOD_W1
    10080
    週 足
    PERIOD_MN1
    43200
    月 足
  • int shift
    アクセラレーターオシレーターの値を取得したいバーの位置を指定します。
    アクセラレーターオシレーターの値を取得したいバーが現在のバーであれば「」、1本前のバーであれば「」、2本前のバーであれば「」……と記述します。

戻り値

 アクセラレーターオシレーターの値が返されます。

具体例

 2本前のバーのアクセラレーターオシレーターの値が「0」以下で、かつ1本前のバーのアクセラレーターオシレーターの値が「正」であれば、買いエントリーしたい場合は、以下のように記述します。


double AC_1 = iAC(NULL,0,1);
double AC_2 = iAC(NULL,0,2);

if(AC_2 <= 0 && AC_1 > 0)
  {
    int Ticket
    = OrderSend(Symbol(),OP_BUY,0.1,Ask,10,0,0,
                NULL,1479,0,clrMagenta);
  }

関連EA

AC_Scal_USDJPY
Accelerator Oscillatorと移動平均を利用したスキャルピングEA
Accelerator Oscillatorと移動平均を利用したスキャルピングEA?|?fx-on.com

GogoJungleで購入する

 Accelerator Oscillatorと移動平均を利用したスキャルピングEAです。

概 要

  • Accelerator Oscillatorと移動平均を用いてトレンドを判断し、独自ロジックに基づいて取引のタイミングを図ります。
  • USD/JPY専用です。

特 徴

 1回の取引について、

  • 利益確定幅は「20」pips程度(内部ロジックによって、早めに決済する場合もあります。)
  • 損切り幅は「40」pips程度(内部ロジックによって、早めに決済する場合もあります。)

なので、以下のような要望に応えた設計になっています。

  • ある程度利益が出たタイミングで、利益を確定したい。
  • 1回の取引で大きな損失を出したくない