pythonでJ-Quants

J-Quants はJPX(日本証券取引所)の提供するAPI

無料プランの場合、3か月遅れの情報までしか取得できない

pypi


import json
import requests
import pandas as pd


# POSTするデータを作る。
email  = "xxxxxxxxxxxxx"
password = "xxxxxxxxxx"
account_data = json.dumps({
        "mailaddress": email,
        "password": password,
    })

auth_user_url = "https://api.jquants.com/v1/token/auth_user"

auth_result = requests.post(auth_user_url, data=account_data)
refresh_token = auth_result.json()["refreshToken"]

auth_refresh_url=f"https://api.jquants.com/v1/token/auth_refresh?refreshtoken={refresh_token}"

refresh_result = requests.post(auth_refresh_url)
id_token = refresh_result.json()["idToken"]

code = "7203" # 4桁のコードでも5桁のコード72030でもよい。
from_ = "2023-03-01"
to_ = "2023-03-01"

daily_quotes_url = f"https://api.jquants.com/v1/prices/daily_quotes?code={code}&from={from_}&to={to_}"
target_url= f"https://api.jquants.com/v1/fins/statements?code={code}"

# idトークンはヘッダーにセットする
headers = {"Authorization": f"Bearer {id_token}"}
result = requests.get(target_url, headers=headers)
print(result.json())