def replace_order(bet_id): # replacing an order instruction = filters.replace_instruction(bet_id=bet_id, new_price=1.10) replace_order = trading.betting.replace_orders(market_id=market_id, instructions=[instruction]) print(replace_order.status) for order in replace_order.replace_instruction_reports: place_report = order.place_instruction_reports cancel_report = order.cancel_instruction_reports print("Status: %s, New BetId: %s, Average Price Matched: %s " % (order.status, place_report.bet_id, place_report.average_price_matched))
def order_update_to_betfair( command: UpdateOrder, venue_order_id: VenueOrderId, side: OrderSide, instrument: BettingInstrument, ): """ Convert an UpdateOrder command into the data required by betfairlightweight """ return { "market_id": instrument.market_id, "customer_ref": command.client_order_id.value, "instructions": [ replace_instruction( bet_id=venue_order_id.value, new_price=float( probability_to_price(probability=command.price, side=side)), ) ], }
def test_replace_instruction(self): response = replace_instruction("1.123", 12) assert response == {"betId": "1.123", "newPrice": 12}
def create_replace_instruction(self) -> dict: return filters.replace_instruction( bet_id=self.bet_id, new_price=self.update_data["new_price"])
def test_replace_instruction(self): response = replace_instruction('1.123', 12) assert response == {'betId': '1.123', 'newPrice': 12}