Эх сурвалжийг харах

Refactor get_markets method in HyperliquidClient to be asynchronous, improving compatibility with async workflows. Updated MarketCommands to await the get_markets call, ensuring proper market data retrieval in an asynchronous context.

Carles Sentis 4 өдөр өмнө
parent
commit
0d413183d8

+ 2 - 2
src/clients/hyperliquid_client.py

@@ -433,14 +433,14 @@ class HyperliquidClient:
             logger.error(f"❌ Error fetching trading fee for {symbol}: {error_message} (Full exception: {e})")
             return None
     
-    def get_markets(self) -> Optional[Dict[str, Any]]:
+    async def get_markets(self) -> Optional[Dict[str, Any]]:
         """Get available markets/symbols."""
         try:
             if not self.sync_client:
                 logger.error("❌ Client not initialized")
                 return None
             
-            markets = self.sync_client.load_markets()
+            markets = await self.sync_client.load_markets()
             logger.info(f"✅ Successfully loaded {len(markets)} markets")
             return markets
         except Exception as e:

+ 1 - 1
src/commands/info/market.py

@@ -35,7 +35,7 @@ class MarketCommands(InfoCommandsBase):
                 return
             
             # Get all markets to find leverage info
-            all_markets = self.trading_engine.client.get_markets()
+            all_markets = await self.trading_engine.client.get_markets()
             market_info = all_markets.get(symbol) if all_markets else None
             
             # Format the message

+ 1 - 1
trading_bot.py

@@ -14,7 +14,7 @@ from datetime import datetime
 from pathlib import Path
 
 # Bot version
-BOT_VERSION = "2.4.221"
+BOT_VERSION = "2.4.222"
 
 # Add src directory to Python path
 sys.path.insert(0, str(Path(__file__).parent / "src"))