MCPcopy Index your code
hub / github.com/danpaquin/coinbasepro-python / process_message

Method process_message

cbpro/order_book.py:47–74  ·  view source on GitHub ↗
(self, message)

Source from the content-addressed store, hash-verified

45 self._sequence = res['sequence']
46
47 def process_message(self, message):
48 if message.get('product_id') == self.product_id:
49 if self._log_to:
50 pickle.dump(message, self._log_to)
51
52 sequence = message.get('sequence', -1)
53 if self._sequence == -1:
54 self.reset_book()
55 return
56 if sequence <= self._sequence:
57 # ignore older messages (e.g. before order book initialization from getProductOrderBook)
58 return
59 elif sequence > self._sequence + 1:
60 self.on_sequence_gap(self._sequence, sequence)
61 return
62
63 msg_type = message['type']
64 if msg_type == 'open':
65 self.add(message)
66 elif msg_type == 'done' and 'price' in message:
67 self.remove(message)
68 elif msg_type == 'match':
69 self.match(message)
70 self._current_ticker = message
71 elif msg_type == 'change':
72 self.change(message)
73
74 self._sequence = sequence
75
76 def on_sequence_gap(self, gap_start, gap_end):
77 self.reset_book()

Callers 2

process_messageMethod · 0.45
on_messageMethod · 0.45

Calls 6

reset_bookMethod · 0.95
on_sequence_gapMethod · 0.95
addMethod · 0.95
removeMethod · 0.95
matchMethod · 0.95
changeMethod · 0.95

Tested by

no test coverage detected