ライブフィード¶
import briskapi
feed = briskapi.connect(site="demo", codes=["7203", "6758"]) # 初期状態を受信してから戻る
toyota = briskapi.Ticker("7203")
toyota.quote() # 現在の気配(フレームが届くたびに更新)
toyota.auction() # 予想約定価格・数量と成行注文の売買差
feed.on_quote(lambda q: print(q["code"], q["indicative_price"]), codes="6758")
for q in feed.quotes("7203"): # 更新ごとに1件。セッションが終わると終了
if q["last_price"]:
print("寄付:", q["last_price"], q["time"])
break
briskapi.Market().imbalances(top=10).to_pandas()
feed.wait() # または feed.close()。`with briskapi.connect(...) as feed:` も使えます
briskapi.connect() は、brisk live --site と同じく、サイトを1つ取ります。
site="demo": 公開の BRiSK Next デモ。ライブの接続ではありません。デモサイトは2021年9月27日の記録をファイル(BRiSK のデコーダー、マスター、スナップショット、ストリーム)として配信しており、それをダウンロードし、固定したハッシュと照合して、記録されたペースで再生します(speed:1で実時間、0で最速。limit_framesで途中で止める)。cache=DIRを指定すると、以前ダウンロードした同じファイルのコピーから再生します。site="sbi"、"e-shiten"、"matsui"、"monex"、"smbcnikko": お使いの証券会社のライブの BRiSK(下記)。
そのほかのオプション: codes(銘柄コード)、history=True(Ticker.history() のために更新を保持)、
upload、output、on_day、gateway。コールバックとイテレーターは、まず各銘柄の現在の気配を受け取り、その後すべての更新を順番どおりに受け取ります。受け取る側の処理が遅い場合、更新を捨てずにフィードのほうが待ちます。