iMAOnArray()関数

iMAOnArray()関数は、配列に格納された価格データから移動平均を算出し、その値を返します。
配列内の価格データを使用するため、通貨ペア名、時間枠、適用価格の指定は必要としません。
価格データは事前に用意しておく必要があります。
移動平均は左から右に(古い価格データから新しい価格データに向かって)計算されます。右から左に(新しい価格データから古い価格データに向かって)計算するためには、ArraySetAsSeries()関数を使用します。

iMAOnArray()関数について

iMAOnArray()関数の()括弧内は次のように指定します。

iMAOnArray(データ配列, 配列要素数, 計算期間, インジケータシフト数, 計算方法, シフト数)

データ配列
価格データが格納されている配列を指定します。

配列要素数
配列の要素数を指定します。0(ゼロ)は全要素を指定したことになります。

計算期間
移動平均を計算する期間(ローソク足の本数)を整数で指定します。

インジケータシフト数
移動平均の表示をシフトする(ずらす)ローソク足の本数を整数で指定します。

計算方法
移動平均の計算方法を整数または定数で指定します。

単純移動平均 0 MODE_SMA
指数移動平均 1 MODE_EMA
平滑移動平均 2 MODE_SMMA
加重移動平均 3 MODE_LWMA

シフト数
ローソク足何本分前かを指定します。

サンプルコード

// スクリプトファイルのコード
void OnStart()
{
   result = iMAOnArray(user_array, 0, 25, 0, MODE_SMA, 0);
   
   Print("SMA25: ", result);   
}

上記のサンプルコードは、ユーザー配列内の価格データより算出したSMA25(期間25の単純移動平均)の値を出力するスクリプトです。