(self, message)
| 247 | self._ask_depth = None |
| 248 | |
| 249 | def process_message(self, message): |
| 250 | if message.get('product_id') == self.product_id: |
| 251 | super(OrderBookConsole, self).process_message(message) |
| 252 | |
| 253 | try: |
| 254 | # Calculate newest bid-ask spread |
| 255 | bid = self.get_bid() |
| 256 | bids = self.get_bids(bid) |
| 257 | bid_depth = sum([b['size'] for b in bids]) |
| 258 | ask = self.get_ask() |
| 259 | asks = self.get_asks(ask) |
| 260 | ask_depth = sum([a['size'] for a in asks]) |
| 261 | |
| 262 | if self._bid == bid and self._ask == ask and self._bid_depth == bid_depth and self._ask_depth == ask_depth: |
| 263 | # If there are no changes to the bid-ask spread since the last update, no need to print |
| 264 | pass |
| 265 | else: |
| 266 | # If there are differences, update the cache |
| 267 | self._bid = bid |
| 268 | self._ask = ask |
| 269 | self._bid_depth = bid_depth |
| 270 | self._ask_depth = ask_depth |
| 271 | print('{} {} bid: {:.3f} @ {:.2f}\task: {:.3f} @ {:.2f}'.format( |
| 272 | dt.datetime.now(), self.product_id, bid_depth, bid, ask_depth, ask)) |
| 273 | except Exception: |
| 274 | pass |
| 275 | |
| 276 | class WebsocketConsole(WebsocketClient): |
| 277 | def on_open(self): |
nothing calls this directly
no test coverage detected