diff --git a/bfxapi/examples/ws/send_order.py b/bfxapi/examples/ws/send_order.py index 2a2bb5a..b7a6fce 100644 --- a/bfxapi/examples/ws/send_order.py +++ b/bfxapi/examples/ws/send_order.py @@ -18,10 +18,9 @@ async def close_all(data): await bfx.ws.close_all_orders() @bfx.ws.on('order_confirmed') -async def trade_completed(order, trade): +async def trade_completed(order): print ("Order confirmed.") print (order) - print (trade) ## close the order # await order.close() # or diff --git a/bfxapi/examples/ws/update_order.py b/bfxapi/examples/ws/update_order.py index d2cff40..59abee5 100644 --- a/bfxapi/examples/ws/update_order.py +++ b/bfxapi/examples/ws/update_order.py @@ -14,21 +14,19 @@ bfx = Client( ) @bfx.ws.on('order_update') -def order_updated(order, trade): +def order_updated(order): print ("Order updated.") print (order) - print (trade) @bfx.ws.once('order_update') -async def order_once_updated(order, trade): +async def order_once_updated(order): # update a second time using the object function await order.update(price=80, amount=0.02, flags="2nd update") @bfx.ws.once('order_confirmed') -async def trade_completed(order, trade): +async def trade_completed(order): print ("Order confirmed.") print (order) - print (trade) await bfx.ws.update_order(order.id, price=100, amount=0.01) @bfx.ws.on('error') diff --git a/bfxapi/websockets/OrderManager.py b/bfxapi/websockets/OrderManager.py index 52df201..51c2e07 100644 --- a/bfxapi/websockets/OrderManager.py +++ b/bfxapi/websockets/OrderManager.py @@ -2,7 +2,7 @@ import time import asyncio from ..utils.CustomLogger import CustomLogger -from ..models import Order, Trade +from ..models import Order class OrderManager: @@ -23,7 +23,7 @@ class OrderManager: def get_pending_orders(self): return list(self.pending_orders.values()) - async def _confirm_order(self, order, trade): + async def _confirm_order(self, order): ''' Called once when we first recieve infomation back from the bitfinex api that the order has been accepted. @@ -31,12 +31,12 @@ class OrderManager: if order.cId in self.pending_orders: if self.pending_callbacks[order.cId][0]: # call onComplete callback - await self.pending_callbacks[order.cId][0](order, trade) + await self.pending_callbacks[order.cId][0](order) order.set_confirmed() # remove from pending orders list del self.pending_orders[order.cId] del self.pending_callbacks[order.cId] - self.bfxapi._emit('order_confirmed', order, trade) + self.bfxapi._emit('order_confirmed', order) async def confirm_order_closed(self, raw_ws_data): # order created and executed @@ -45,13 +45,12 @@ class OrderManager: # @ 18909.0(0.06700003)",null,null,18909,18913.2899961,0,0,null,null,null,0,0,null,null,null, # "API>BFX",null,null,null]] order = Order(self.bfxapi, raw_ws_data[2]) - trade = Trade(order) order.set_open_state(False) if order.id in self.open_orders: del self.open_orders[order.id] - await self._confirm_order(order, trade) + await self._confirm_order(order) self.logger.info("Order closed: {} {}".format(order.symbol, order.status)) - self.bfxapi._emit('order_closed', order, trade) + self.bfxapi._emit('order_closed', order) async def build_from_order_snapshot(self, raw_ws_data): ''' @@ -61,10 +60,8 @@ class OrderManager: self.open_orders = {} for raw_order in osData: order = Order(self.bfxapi, raw_order) - trade = Trade(order) order.set_open_state(True) self.open_orders[order.id] = order - # await self._confirm_order(order, trade) self.bfxapi._emit('order_snapshot', self.get_open_orders()) async def confirm_order_update(self, raw_ws_data): @@ -75,11 +72,10 @@ class OrderManager: # None, None, None]] order = Order(self.bfxapi, raw_ws_data[2]) order.set_open_state(True) - trade = Trade(order) self.open_orders[order.id] = order - await self._confirm_order(order, trade) - self.logger.info("Order update: {} {}".format(order, trade)) - self.bfxapi._emit('order_update', order, trade) + await self._confirm_order(order) + self.logger.info("Order update: {}".format(order)) + self.bfxapi._emit('order_update', order) async def confirm_order_new(self, raw_ws_data): # order created but not executed / created but partially filled @@ -89,11 +85,10 @@ class OrderManager: # None, None, None]] order = Order(self.bfxapi, raw_ws_data[2]) order.set_open_state(True) - trade = Trade(order) self.open_orders[order.id] = order - await self._confirm_order(order, trade) - self.logger.info("Order new: {} {}".format(order, trade)) - self.bfxapi._emit('order_new', order, trade) + await self._confirm_order(order) + self.logger.info("Order new: {}".format(order)) + self.bfxapi._emit('order_new', order) def _gen_unqiue_cid(self): return int(round(time.time() * 1000))