2010/12/27
Regularized EMA
Regularized EMAはChris Satchwellによって開発された指数移動平均の一種で
小さい遅延でより滑らかな移動平均が計算できるように調整されています。
使用する関数
Regularized EMAの計算はそれほど難しくありませんが、ほんのちょっと式を変形します。
元の式は
H3セルはNを決めるセルとします。
H4セルはfを決めるセルとします。
G列でREMAを計算します。 計算式は赤枠内
はじめの行の
最初の行(図では5行目)と其の次の行(6行目)にあたります。
これらの行では終値をREMAとしなければならないので 該当セルの行番号とデータが入っている行の一つ上の行番号(図では4行目)の差を計算して 3より小さい場合は終値を代入するということをIF文を使って行っています。 それが赤枠内の1行目の意味です。
2行目の
G5セルをG6以下のセルにコピー&ペーストすればRegularized EMAが計算できます。
Excelファイルがダウンロードできない場合はリンクを右クリックして「対象をファイルに保存」を選択して保存すればダウンロードできます。
小さい遅延でより滑らかな移動平均が計算できるように調整されています。
計算式
1日目REMA = 終値
2日目REMA = 終値
3日目以降は
REMA = {前日REMA + 2÷(N + 1)×(終値 - 前日REMA) + f×(前日REMA + (前日REMA - 2日前REMA))}÷(1 + f)
Nは任意、fは小さい数が望ましい。Chris Satchwellはf=0.5を推奨している。
f=0にすると指数移動平均と同じ式になります。
2日目REMA = 終値
3日目以降は
REMA = {前日REMA + 2÷(N + 1)×(終値 - 前日REMA) + f×(前日REMA + (前日REMA - 2日前REMA))}÷(1 + f)
Nは任意、fは小さい数が望ましい。Chris Satchwellはf=0.5を推奨している。
f=0にすると指数移動平均と同じ式になります。
![]() |
日経平均終値とRegularized EMAの図
Excelを使ってRegularized EMAを計算する
Excelを使ってRegularized EMAを計算する手順を説明します。使用する関数
IF(条件式,真の場合,偽の場合)
条件式を満たす場合は真の場合の値、満たさない場合は偽の場合の値を返します。ROW(セル)
セルの行番号を返します。何も指定しない場合はROWが書かれたセルの行番号を返します。![]() |
元の式は
REMA={前日REMA+2÷(N+1)×(終値-前日REMA)+f×(前日REMA+(前日REMA-2日前REMA))}÷(1+f)
なんですがこの式の後半部分
f×(前日REMA+(前日REMA-2日前REMA))
は
f×(2×前日REMA-2日前REMA)
と変形できるのでこのように変形して
REMA={前日REMA+2÷(N+1)×(終値-前日REMA)+f×(2×前日REMA-2日前REMA)}÷(1+f)
を式として入力することにします。H3セルはNを決めるセルとします。
H4セルはfを決めるセルとします。
G列でREMAを計算します。 計算式は赤枠内
=IF(ROW()-ROW($G$4)<3,E5,
(G4+2/($H$3+1)*(E5-G4)+$H$4*(2*G4-G3))/(1+$H$4))
です。(G4+2/($H$3+1)*(E5-G4)+$H$4*(2*G4-G3))/(1+$H$4))
はじめの行の
=IF(ROW()-ROW($G$4)<3,E5,
は1日目と2日目の処理を式にしたものです。
1日目と2日目というのはデータでいうとデータが入っている最初の行(図では5行目)と其の次の行(6行目)にあたります。
これらの行では終値をREMAとしなければならないので 該当セルの行番号とデータが入っている行の一つ上の行番号(図では4行目)の差を計算して 3より小さい場合は終値を代入するということをIF文を使って行っています。 それが赤枠内の1行目の意味です。
2行目の
(G4+2/($H$3+1)*(E5-G4)+$H$4*(2*G4-G3))/(1+$H$4))
は先ほど変形した式を入力したものです。これが3日目以降のREMAの式になります。G5セルをG6以下のセルにコピー&ペーストすればRegularized EMAが計算できます。
Excelファイルがダウンロードできない場合はリンクを右クリックして「対象をファイルに保存」を選択して保存すればダウンロードできます。
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
↑ TOP PAGE