練習で代表的なインジケータでバックテストをします。※この記事は1月中に完成予定です。
1.RSIの式
最初にRSIは買われすぎ売られすぎを表すオシレーター系の指標で式は
$$RSI =\frac{A}{A+B}*100$$
A:n日間の値上がり幅の平均
B:n日間の値下がり幅の平均
2.RSIインジケータの実装
2018年の日足データを使います。ここではdf2018として呼び出しておきます。pandasのdiffメソッドを使います。これはひとつ前のデータとの差分を見れます。終値の差分をとりこれを0以上か0以下で分けてrollingメソッドで14日間の値上がり/値下がりの平均を求めます。
diff = df['Close'].diff()
P=diff.clip(lower=0)
N=diff.clip(upper=0)
P_mean=P.rolling(14).mean()
N_mean=N.rolling(14).mean()
RSI=P_mean/(P_mean-N_mean)*100
これでRSIが作れましたのでグラフに表示しておきます。
コメント