Skip to content

BETA v0.4.1 リリース

Pre-release
Pre-release
Compare
Choose a tag to compare
@MtkN1 MtkN1 released this 21 Jun 16:16
· 295 commits to main since this release
6244c5f

✅Binanceのイベント仕様に従ってDataStoreを更新する #58
✅Bybit DataStoreのKline(ローソク足)のキーが足りていない #62
✅DataStoreにおいてWebSocketエラーメッセージのWarningを表示する #63

✅Python 3.7以外のテストが通っていない #51
✅Linter, Formatter を導入したい #59

🎉 New Features

✨ BinanceのDataStoreでREST API経由の板情報の更新に対応しました

BinanceのAPIドキュメント(How to manage a local order book correctly)のロジックに準拠して板情報を更新できるようになりました。
これによりBinanceの板情報のDataStoreのREST API経由の初期化が可能になり、より正確かつ1000行以上のなデータが補完できるようになります。

🎈 板情報をREST APIで初期化し、WebSocketのイベントごとに最良気配値5行を表示するサンプル
※REST APIでの初期化(initialize)はAPIドキュメント通り、WebSocket接続後に行います

async def main():
    async with pybotters.Client(base_url='https://fapi.binance.com') as client:
        store = pybotters.BinanceDataStore()

        streams = '/'.join([
            'btcusdt@depth@100ms',
        ])
        wstask = await client.ws_connect(
            f'wss://fstream.binance.com/stream?streams={streams}',
            hdlr_json=store.onmessage,
        )
        await store.initialize(
            client.get('/fapi/v1/depth?symbol=BTCUSDT&limit=1000'),
        )

        while not store.orderbook.initialized:
            await store.wait()

        while True:
            book = store.orderbook.sorted()
            pybotters.print({'a': book['a'][:5], 'b': book['b'][:5]})
            await store.orderbook.wait()

✔ Improvements

✨ WebSocketのsubscribeのメッセージを間違えた場合にもDataStoreがWarnningを表示するようになりました

🐛 Bugfix

BybitのDataStoreでKlineにおいて複数時間足が正しく反映されないバグを修正しました。

♻ CI/CD

テストコードの改善や、Linter・Formatterを導入しました。