auto_trade_sys/analyze_zro.py
薇薇安 922a8f3820 1
2026-02-04 13:45:30 +08:00

46 lines
1.5 KiB
Python

from backend.database.connection import db
import json
from datetime import datetime
import time
def analyze_zro_trades():
print("Querying ZROUSDT trades...")
# Get all columns
query = "SELECT * FROM trades WHERE symbol='ZROUSDT' ORDER BY id DESC LIMIT 5"
trades = db.execute_query(query)
if not trades:
print("No ZROUSDT trades found.")
return
# Print first trade keys to understand schema
print("Schema keys:", list(trades[0].keys()))
for trade in trades:
print("-" * 50)
ts = trade.get('created_at')
dt = datetime.fromtimestamp(ts) if ts else "N/A"
print(f"ID: {trade.get('id')}")
print(f"Time: {dt} ({ts})")
print(f"Symbol: {trade.get('symbol')}")
print(f"Side: {trade.get('side')}")
print(f"Entry: {trade.get('entry_price')}")
print(f"Exit: {trade.get('exit_price')}")
print(f"Qty: {trade.get('quantity')}")
print(f"Leverage: {trade.get('leverage')}") # Guessing key
print(f"Realized PnL: {trade.get('realized_pnl')}")
print(f"PnL % (DB): {trade.get('pnl_percent')}")
# Calculate approximate ROE if leverage is known
leverage = trade.get('leverage', 1)
if leverage is None: leverage = 1
pnl_pct = trade.get('pnl_percent')
if pnl_pct:
roe = float(pnl_pct) * float(leverage)
print(f"Calc ROE (est): {roe:.2f}% (assuming leverage {leverage})")
if __name__ == "__main__":
analyze_zro_trades()