|
- def generate_orders(data):
- volume = data['volume']
- number_of_orders = data['number']
- amount_difference = data['amountDif']
- side = data['side']
- price_min = data['priceMin']
- price_max = data['priceMax']
-
- orders = []
- for i in range(number_of_orders):
- order_size = int((volume * random() + 1) // 100)
- if side == 'PRODAIT':
- currency = 'USDT'
- exchange_rate = 100.0
- price = round(random() * 100.0 + price_min / 100.0, 4)
- fee = round(order_size * 0.001 * 100, 4)
- amount = round(order_size - fee, 8)
- total_fee = round(amount * 100.0 + fee, 4)
-
-
- btc_amount = amount // exchange_rate
-
-
- orders.append({
- 'id': f"ORDER_{i}",
- 'symbol': f"{currency}_BTC",
- 'isMarketOrder': True,
- 'type': 'LIMIT',
- 'timeInForce': None,
- 'quantityQty': btc_amount,
- 'price': str(round(price, 6)),
- 'totalFeesCurrency': str(amount),
- 'baseAssetAmount': str(btc_amount),
- 'settleTimestamp': None,
- 'timestamp': time(),
- 'fills': [],
- 'status': 'PENDING',
- 'ordertype': 'LIMIT',
- 'limitPrice': str(price),
- 'stopLimit': False,
- 'icebergQuantity': 0,
- 'parentId': '',
- 'quoteAssetAmount': amount
- })
|