Preview v0.6.0 リリース
Pre-release🎉 New Features
✨ GMOコインのDataStoreをサポートしました (Contributed by @supermomonga 💖)
pybottersでは初の国内取引所DataStoreをサポートしました!
pybotters.GMOCoinDataStore
から、GMOコインのWebSokcetによるリアルタイムデータを利用することができます。
さらに本DataStoreは初の試みとして データの型付け をサポートしています。
symbol
はstr型、price
などはDecimal型、timestamp
はdatetime型など、データの意味通りの型でDataStoreに保管されます。
従来のDataStoreは数値や時刻データが文字列型でもそのまま(元の型のまま)保管していましたが、これにより演算やさらなる処理が容易になります。
GMOCoinDataStoreのインターフェースはリファレンスをご覧ください。
✨ CoincheckのAPI認証をサポートしました
国内取引所 Coincheck のAPI認証をサポートしました!
オーダー発注や残高の取得などのプライベートAPIが利用できます。 ※DataStoreは未対応です
✨ waitメソッドから受信データを取得できるようになりました (Contributed by @kaznak 💖)
DataStore.wait
メソッドの返り値は従来はNoneでしたが、** 待機した結果取得したデータ ** を返すようになりました。
これにより ** PostOnlyオプションにより即時キャンセルされてしまったオーダー ** などのDataStoreに残らないオーダー(※)を取得できます。 ※各種DataStoreのオーダーはアクティブオーダーのみ管理する仕様なので約定orキャンセル済みは削除される
注意: 親クラスの DataStoreManager.wait
メソッドの方にはこの機能はありません。
async def main():
async with pybotters.Client(base_url='https://ftx.com/api, apis=apis) as client:
store = pybotters.FTXDataStore()
ws = await client.ws_connect(
'wss://ftx.com/ws',
send_json={'op': 'subscribe', 'channel': 'orders'},
hdlr_json=store.onmessage,
)
asyncio.create_task(client.post('/orders', data=...)) # Send an order that will be canceled immediately
result = await store.orders.wait()
print(result)
# {'id': ..., 'status': 'closed', ...: ...}
print(store.orders.find())
# []
📖 Documentation
✨ Sphinxによるドキュメント自動生成を導入しました (Contributed by @drillan 💖)
Read The Docsにドキュメントを生成できるSphinxを導入しました!
GitHub WikiからRead The Docsにドキュメントを移行する予定です。
https://pybotters.readthedocs.io/ja/latest/
Other
- pybottersのリリース状況についての表記をBETAから Preview の名称に変更しました
- DataStoreを管理する抽象クラスの名称をDataStoreInterfaceからDataStoreManagerに変更しました
- DataStoreに隠しメソッド _pop, _find_and_delete を追加しました
詳細については以下をご覧ください。
Issues
✅ 対応取引所の追加(Phemex、Coincheck) #52
✅ GMO コインの DataStore を実装する #60
✅ リリース表記をPreview版にする #73
✅ FTXDataStore の orders チャネルにおける close されたオーダーの取り扱いについて #75
✅ DataStoreInterfaceのクラス名を変更する #79
Pull requests
✅ GMO コイン用の DataStore を一部実装する #74
✅ DataStore のレコード削除メソッドのサンプル実装 #76
✅ DataStore の wait メソッドが変更されたデータを返す実装 #77
✅ Sphinxのドキュメントを追加 #78