株のシステムトレードをしよう - 1から始める株自動取引システムの作り方

株式をコンピュータに売買させる仕組みを少しずつ作っていきます。できあがってから公開ではなく、書いたら途中でも記事として即掲載して、後から固定ページにして体裁を整える方式で進めていきます。

kabu STATION API のPUSH APIは、土日には一切情報が流れてこない

訂正記事有り:

how-to-make-stock-trading-system.dogwood008.com

kabu STATION API を使ってPUSH APIのメッセージを見てみようと思い、下記のようなスクリプトを組んだ。しかし、結果としては、一切のメッセージが流れてこず、動作確認はできなかった。

土日や、市場が開いていない時は、ハートビートすら流れてこない仕様かもしれない。なかなか開発しづらい…

使用したスクリプト

import kabusapi
import os
import pprint
pp = pprint.PrettyPrinter()
api = kabusapi.Context('localhost', os.environ.get('KABU_S_PORT'), os.environ.get('KABU_S_PASSWORD'))


def register_stock():
  # 銘柄登録
  data = {
      "Symbols": [
          {"Symbol": 7974, "Exchange": 1, },
      ]
  }
  response = api.register(**data)
  pp.pprint(response)
register_stock()

# ---


@api.websocket
def recieve(msg):
    # ここで処理を行う msgはdict形式である。
    print("{} / {} {} {}".format(
        msg,
        msg['Symbol'],
        msg['SymbolName'],
        msg['CurrentPrice'],
    ))

# 受信開始
api.websocket.run()

実行結果

$ pipenv run python kabusapi_test.py
{'RegistList': [{'Exchange': 1, 'Symbol': '7974'}]}

(以下、何も表示されない)

(C) 2020 dogwood008 禁無断転載 不許複製 Reprinting, reproducing are prohibited.