https://s3-us-west-2.amazonaws.com/secure.notion-static.com/0f2ade94-7497-4d7f-aba2-7af862e13186/EURUSD_iM30.png

価格に対して一定期間の平均をとって、値動きを平滑化する指標です。

関数書式

double  iMA(
   string              [symbol](<https://toyolab-fx.notion.site/7010417f6ffc4d43aaca4a8b77bafcfd>),           // 銘柄
   ENUM_TIMEFRAMES     [timeframe](<https://toyolab-fx.notion.site/7010417f6ffc4d43aaca4a8b77bafcfd>),        // 時間軸
   int                 ma_period,        // 計算する期間
   int                 ma_shift,         // 移動平均のシフト
   ENUM_MA_METHOD      [ma_method](<https://toyolab-fx.notion.site/7010417f6ffc4d43aaca4a8b77bafcfd>),        // 移動平均の種類
   ENUM_APPLIED_PRICE  [applied_price](<https://toyolab-fx.notion.site/7010417f6ffc4d43aaca4a8b77bafcfd>),    // 価格の種類
   int                 [shift](<https://toyolab-fx.notion.site/7010417f6ffc4d43aaca4a8b77bafcfd>)             // 計算するバーの位置
   );

移動平均のパラメータは、計算する期間ma_periodです。ただし、移動平均の種類ma_methodによって計算方法は異なります。

移動平均線を時間方向にシフトしたい場合、ma_shiftに0以外の値を代入します。プラスの値で右方向に、マイナスの値で左方向にシフトします。

使用例

2本の移動平均線の交差

移動平均線とシフトした移動平均線の交差

2本の移動平均線の交差による手仕舞い

計算方法

SMA

Simple Moving Average(単純移動平均)の略で、過去の一定期間の価格を単純に平均したものです。それぞれの価格に対する重みが一定なので、価格変化の反応は他の移動平均に比べて遅くなります。

SMA[0] = Sum(Price[i], N) / N

Sum(Price[i], N)Price[0]+Price[1]+・・・+Price[N-1]

Price[0]applied_priceで指定した現在の価格

Nma_period

EMA

Exponential Moving Average(指数移動平均)の略で、現在の価格と1本前のEMAの平均をとったものです。それぞれの価格に対する重みが直近になるにつれ指数関数的に大きくなります。そのため、価格変化の反応はSMAやLWMAに比べて速くなります。

EMA[0] = α*Price[0] + (1-α)*EMA[1]