#!/usr/bin/env python3
"""Verifica posizioni aperte e closed recenti su Bybit account 2."""
import sys
import os
import json

sys.path.insert(0, '/opt/charter-live/live_deploy_v2')
os.chdir('/opt/charter-live/live_deploy_v2')

from bybit_demo_client import BybitDemoClient

c = BybitDemoClient()

# Positions
r = c._request('GET', '/v5/position/list', {'category': 'linear', 'settleCoin': 'USDT'}, signed=True)
positions = r.get('result', {}).get('list', [])
open_pos = [p for p in positions if float(p.get('size', 0)) > 0]
print(f'POSIZIONI APERTE: {len(open_pos)}')
for p in open_pos:
    print(f"  {p['symbol']:12} side={p['side']:5} size={p['size']:>14} entry={p['avgPrice']:>14} mark={p['markPrice']:>14} lev={p['leverage']:>4} uPnL={p.get('unrealisedPnl', '0')}")

# Closed PnL last 24h
r2 = c._request('GET', '/v5/position/closed-pnl', {'category': 'linear', 'settleCoin': 'USDT', 'limit': '20'}, signed=True)
closed = r2.get('result', {}).get('list', [])
print(f'\nCLOSED PNL (ultimi 20):')
for c2 in closed[:15]:
    print(f"  {c2['symbol']:12} side={c2['side']:5} qty={c2['qty']:>14} entry={c2['avgEntryPrice']:>14} exit={c2['avgExitPrice']:>14} pnl={c2['closedPnl']:>10} fee={c2.get('totalFee', '0'):>8} ts={c2.get('updatedTime', '0')}")

# Cerca ARUSDT chiusure recenti
print('\n--- ARUSDT in closed-pnl ---')
for c2 in closed:
    if c2['symbol'] == 'ARUSDT':
        print(f"  {c2['side']:5} qty={c2['qty']:>14} entry={c2['avgEntryPrice']:>14} exit={c2['avgExitPrice']:>14} pnl={c2['closedPnl']:>10} fee={c2.get('totalFee', '0'):>8} ts={c2.get('updatedTime', '0')}")
