目的
今回は、Pythonによる株価分析を行います。
『mplfinance』を使用することにより簡単にチャートを作成することができます。
まずは、基礎的な下記の3つのチャートを作成したいと思います。
・キャンドル(ローソク)チャート
・ボリューム(出来高)
・移動平均
実行結果
ソースコード
下記のソースコードをコピーすることで簡単にチャートを作成することができます。
準備&株価の取得
ライブラリインストール
インストールするライブラリは、下記の3つです。
pip install pandas
pip install pandas_datareade
pip install mplfinance
ライブラリインポート
各種ライブラリをインポートします。
#データ構造を作成するライブラリ
import pandas as pd
#日付を指定するライブラリ
import datetime as dt
#経済データや金融商品の価格データを取得できるライブラリ
import pandas_datareader.data as web
#グラフを作成するライブラリ
import mplfinance as mpf
株価の取得方法
関数の作成
下記の関数を使用することで、株価の取得を行います。
設定するのは下記の2つです。
・株式銘柄名
・取得期間(〜最新日)
def df_stock(stock_name,day):
end = dt.date.today()
start = end - dt.timedelta(days=day)
stock = web.DataReader(stock_name,'stooq',start,end)
df_stock = stock.sort_index(ascending=True)
return df_stock
"""
最新の日付から設定日数までの株価を表示する関数
stock_name :株式銘柄 day:表示日数
"""
株式銘柄の変更方法
株式銘柄は、ティッカー(米国株) または コード(日本株)を使用します。
下記のサイトを参考にしてください。
例えば、
Googleの場合、『GOOGL』になります。
トヨタ自動車の場合、『7203.JP』となります。日本株の場合『.JP』が末尾に必要です。
ティッカー(米国株)参考サイト
コード(日本株)参考サイト
具体的な関数の使用方法
実際に関数を使用していきます。
Googleの株価を最新日から150日間のデータを取得します。
文字列での入力のため、’銘柄名’または”銘柄名”とします。
df_stock_data = df_stock('GOOGL',150)
株価テクニカル分析
キャンドルチャート
チャートの基本となるのが、キャンドルチャートです。
キャンドル(日本語ではローソク)は、一本一本が一定の値動きを表しています。
日足(ひあし):1日の値動き
週足(しゅうあし):1週間の値動き
mpf.plot(df_stock_data, type='candle')
ボリューム・出来高
どの程度の取引量があったかを示す「ボリューム」も重要です。
特に、ボリュームが大きかった日に何が起きていたのかを知ることは、
トレンドを読むうえでも非常に重要です。
mpf.plot(df_stock_data, type='candle', volume=True)
移動平均
移動平均とは、ある一定の期間の平均価格であり、これを繋いだ線を移動平均線と言います。
例えば、100日平均であれば、過去100日の平均価格を繋いでラインが描かれています。
mpf.plot(df_stock_data, type='candle', mav=(5, 25, 75))
一般的な分析方法
デットクロス
短期の移動平均線(5日移動平均線)が、長期の移動平均線(25日移動平均線)を
下に突き抜けている場合、ここから下落のトレンドが始まるサインだと考えられています。
特に75日移動平均線も突き抜けれていれば、よりトレンドの傾向は強いと考えられています。
ゴールデンクロス
5日移動線平均線と25日移動平均線がいずれも上昇しており、
5日移動線平均線が、25日移動平均線を上に突き抜ける場合、
上昇のトレンドが始まるサインだと考えられています。
75日移動平均線も突き抜けれていれば、よりトレンドの傾向は強いということです。
グラフスタイルの変更
下記のように、「style=’yahoo’」を追加することで、グラフのスタイルを変更可能です。
mpf.plot(df_stock_data, type='candle', style='yahoo', mav=(5, 25, 75))
参考にした本
株価に対するテクニカル分析の方法だけでなく、
投資について、わかりやすく書かれているので、大変参考になると思います。
電子書籍の方が半額で購入できるので、そちらをオススメします。