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の単純移動平均)の値を出力するスクリプトです。