【Python Program】ボラティリティをチェック
ボラティリティをチェックするPythonプログラム
銘柄選び(その1)の「条件2:ボラティリティーが大きい銘柄」で、
【具体的指標】直近1か月で15%以上株価が上下している銘柄
ただし、大きくても100%(2倍)以下のもの
を選別するためのプログラムです。
#ボラティリティ(倍数)をチェック
def Volatil(s_code):
import pandas as pd
url = "https://stocks.finance.yahoo.co.jp/stocks/history/?code=" + s_code + ".T"
dfs = pd.read_html(url, match = '出来高')
dfs[0].columns = ['日付', '始値', '高値', '安値', '終値', '出来高', '調整後終値']
lastv = []
r_num = 0
last = dfs[0].iloc[-1,0]
while r_num < 21:
if dfs[0].iloc[r_num,0] == last:
break
if isinstance(dfs[0].iloc[r_num,6], str):
if dfs[0].iloc[r_num,6][:2] == "分割":
r_num = r_num + 1
continue
lastv.append(int(dfs[0].iloc[r_num,6]))
else:
lastv.append(dfs[0].iloc[r_num,6])
r_num = r_num + 1
d_max = 0
d_min = 100000000
for data in lastv:
if data > d_max:
d_max = data
if data < d_min:
d_min = data
return (round(d_max / d_min, 2))
引数「s_code」に証券コードを渡すと、
直近一ヶ月の終値の変動が倍数で返されます。
#終値をチェック
def l_value(s_code):
import pandas as pd
url = "https://stocks.finance.yahoo.co.jp/stocks/history/?code=" + s_code + ".T"
dfs = pd.read_html(url, match = '出来高')
dfs[0].columns = ['日付', '始値', '高値', '安値', '終値', '出来高', '調整後終値']
return (dfs[0].iloc[0,6])
引数「s_code」に証券コードを渡すと、直近の終値が返されます。
上記二つのコードを「volatil_chk.py」というファイル名で保存しておきます。
最近のコメント