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

Method match

cbpro/order_book.py:120–143  ·  view source on GitHub ↗
(self, order)

Source from the content-addressed store, hash-verified

118 self.remove_asks(price)
119
120 def match(self, order):
121 size = Decimal(order['size'])
122 price = Decimal(order['price'])
123
124 if order['side'] == 'buy':
125 bids = self.get_bids(price)
126 if not bids:
127 return
128 assert bids[0]['id'] == order['maker_order_id']
129 if bids[0]['size'] == size:
130 self.set_bids(price, bids[1:])
131 else:
132 bids[0]['size'] -= size
133 self.set_bids(price, bids)
134 else:
135 asks = self.get_asks(price)
136 if not asks:
137 return
138 assert asks[0]['id'] == order['maker_order_id']
139 if asks[0]['size'] == size:
140 self.set_asks(price, asks[1:])
141 else:
142 asks[0]['size'] -= size
143 self.set_asks(price, asks)
144
145 def change(self, order):
146 try:

Callers 1

process_messageMethod · 0.95

Calls 4

get_bidsMethod · 0.95
set_bidsMethod · 0.95
get_asksMethod · 0.95
set_asksMethod · 0.95

Tested by

no test coverage detected