7974任天堂の四本値(始値、高値、安値、終値)を取得してみる。
歩み値はREST APIでは標準で取れないようである。もし取ろうとすると、立会時間中に何回もAPIでアクセスしてリアルタイムに記録していく必要がありそうだ(技術的にはできるが、負荷や規約的にどうかは知らない)。
別途 PUSH APIが用意されているので、それを使用するのが良さそうだが、50件迄しか取得できない。また後日試してみたい。
import kabusapi import os import pprint from typing import List pp = pprint.PrettyPrinter() url = "localhost" port = os.environ.get('PORT') # 検証用, 本番用は18080 password = os.environ.get('PASSWORD') TOUSHO = 1 # 初期設定・トークン取得 token = kabusapi.Context(url, port, password).token # print(token) # トークンを指定した初期設定 パスワードが不要 api = kabusapi.Context(url, port, token=token) def info(code: int, exchange: int=TOUSHO): # 銘柄情報 data = { "symbol": code, "exchange": exchange, } response = api.symbol(**data) return response def board(code: int): # 時価情報・板情報 data = { "symbol": code, "exchange": 1, } response = api.board(**data) o, h, l, crr = ( response['OpeningPrice'], response['HighPrice'], response['LowPrice'], response['CurrentPrice']) # 大引け後なら終値 return (o,h,l,crr) # info('9433') print('(o,h,l,c) = %s' % str(board('7974')))
$ python sample.py (o,h,l,c) = (67350.0, 69020.0, 67230.0, 68600.0)