fix: reserver balance algo
This commit is contained in:
		
							
								
								
									
										12
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								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,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user