ボリンジャーバンドを表示してみよう!

Python

あと一週間くらいで学校が始まります。

夏休みで生活リズムが崩れてしまったのでちゃんと朝起きれるか心配になってきました。

勉強も大変ですね。

そして、今回はボリンジャーバンドについて書いていきたいと思います。

最後までよろしくお願いします。

ボリンジャーバンドとは?

ボリンジャーバンドとはボリンジャーさんが発表したテクニカル指標の一つです。

とても人気があるらしく初心者の人からプロの人まで幅広く使われているそうです。

統計学を学んだ人はわかると思いますが、正規分布を利用したものになります。

言葉で説明するのが難しいので下の写真を見てください。

μは平均値を表しており、σは標準偏差を表しています。6に見えますが6ではありません。(字が汚くてすみません)

μ-σ~μ+σの範囲で68.26%

μ-2σ~μ+2σの範囲で95.44%

μ-3σ~μ+3σの範囲で99.73%

という性質を使ったテクニカル指標です。

ボリンジャーバンドの表示

簡単にですがボリンジャーバンドの説明をしたので表示して見ましょう。

今回はμは過去20日間の終値の平均値とします。

import pandas as pd
import pandas_datareader.data as pdr
import matplotlib.dates as mdates
import matplotlib.pyplot as plt
import mpl_finance
from datetime import datetime

google = pdr.DataReader('GOOGL', 'yahoo', '2015/1/1', '2016/1/1')

g=pd.DataFrame(google,columns=['Open','High','Low','Close'],index=google.index).fillna(method='ffill')

g.index = mdates.date2num(g.index)
data = g.reset_index().values

close=google['Close']
mean=google['Close'].fillna(method='ffill').rolling(window=20,center=False).mean()
std=google['Close'].fillna(method='ffill').rolling(window=20,center=False).std()

upper=mean+2.3*std
lower=mean-2.3*std

fig = plt.figure(figsize=(12, 6))
ax = fig.add_subplot(1, 1, 1)

mpl_finance.candlestick_ohlc(ax,data,width=1, alpha=0.5, colorup='r', colordown='b')

ax.plot(mean,label='mean',color='g')
ax.plot(upper,label='upperband',color='g')
ax.plot(lower,label='lowerband',color='g')
ax.set_title('Bollinger Band')
ax.legend()

plt.show()

実行結果は、、、、、、

上の写真は

μ-2.3σ~μ+2.3σ の時のです。

ほとんどの終値がこの価格帯に存在していることがわかると思います。

なので終値が上のボリンジャーバンドに触れたあたりに売りのサインで、

下のボリンジャーバンドに触れたあたりに買いのサインということですね。

以上で今回は終了となります。

ではまた。

コメント

タイトルとURLをコピーしました