|
@@ -151,20 +151,29 @@ class PositionTracker:
|
|
|
positions = self.hl_client.get_positions()
|
|
|
|
|
|
if not positions:
|
|
|
- logger.debug("📊 No positions returned from exchange")
|
|
|
+ logger.warning("📊 No positions returned from exchange - this might be wrong if you have open positions!")
|
|
|
self.current_positions = {}
|
|
|
return
|
|
|
|
|
|
- logger.debug(f"📊 Processing {len(positions)} positions from exchange...")
|
|
|
+ logger.info(f"📊 Raw positions data from exchange: {len(positions)} positions")
|
|
|
+
|
|
|
+ if positions:
|
|
|
+ logger.info(f"📊 Sample position structure: {positions[0]}")
|
|
|
|
|
|
+ logger.debug(f"📊 Processing {len(positions)} positions from exchange...")
|
|
|
+
|
|
|
new_positions = {}
|
|
|
- for position in positions:
|
|
|
+ for i, position in enumerate(positions):
|
|
|
+ logger.debug(f"📊 Processing position {i+1}: {position}")
|
|
|
+
|
|
|
|
|
|
position_data = position.get('info', {}).get('position', {})
|
|
|
if not position_data:
|
|
|
+ logger.warning(f"📊 Position {i+1} has no info.position data: {position}")
|
|
|
continue
|
|
|
|
|
|
size = float(position_data.get('szi', '0'))
|
|
|
+ logger.debug(f"📊 Position {i+1} size: {size}")
|
|
|
if size != 0:
|
|
|
symbol = position_data.get('coin', '')
|
|
|
if symbol:
|