From f2e5db86e1ff61d2d58a7d23a2d9b9d3a4ad1c84 Mon Sep 17 00:00:00 2001 From: Zichao Lin Date: Sun, 20 Jul 2025 23:23:56 +0800 Subject: [PATCH] fix: reserver balance algo --- main.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index 42f9bcb..052e26c 100644 --- a/main.py +++ b/main.py @@ -301,7 +301,7 @@ class GridTradingBot: # 下单买1 if ( - quote_balance - self.order_amount * buy_price > self.reserve_quote + quote_balance - self.order_amount * buy_price >= self.reserve_quote and self.is_order_value_valid(buy_price) ): if order_id := self.api_place_order(buy_price, "BUY"): @@ -316,7 +316,7 @@ class GridTradingBot: # 下单卖1 if ( - base_balance - self.order_amount > self.reserve_base + base_balance - self.order_amount >= self.reserve_base and self.is_order_value_valid(sell_price) ): if order_id := self.api_place_order(sell_price, "SELL"): @@ -354,7 +354,7 @@ class GridTradingBot: new_buy_price = self.calculate_grid_price(lowest_buy, 1, "BUY") required_quote = new_buy_price * self.order_amount - if quote_balance - required_quote > self.reserve_quote: + if quote_balance - required_quote >= self.reserve_quote: if self.is_order_value_valid(new_buy_price): if order_id := self.api_place_order(new_buy_price, "BUY"): self.active_orders[order_id] = Order( @@ -391,7 +391,7 @@ class GridTradingBot: lowest_buy, self.grid_count, "SELL" ) new_sell_price = self.calculate_grid_price(highest_sell, 1, "SELL") - if base_balance - self.order_amount > self.reserve_base: + if base_balance - self.order_amount >= self.reserve_base: if self.is_order_value_valid(new_sell_price): if order_id := self.api_place_order(new_sell_price, "SELL"): self.active_orders[order_id] = Order( @@ -562,8 +562,8 @@ if __name__ == "__main__": "symbol": "BTCUSDC", "csv_symbol": "BTCUSDT", "csv_file": "output/mexc_spot_grid_trades.csv", - "grid_percentage": 0.0002, - "grid_count": 4, + "grid_percentage": 0.0005, + "grid_count": 5, "order_amount": 0.00001, "min_order_value": 1, "reserve_base": 0,