#!/usr/bin/env python
"""Patch 2: aggiunge epsilon a check pre-trailing per gestire float rounding."""
import sys

FILE = "/opt/charter-live/live_deploy_v2/sltp_engine.py"

OLD = '''    if pnl_pct < 0.01:
        # Pre-trailing NON ancora attivo. NON muovere SL.
        return {
            "action": "hold",'''

NEW = '''    # Epsilon per evitare float rounding: PnL esattamente = 1.0% potrebbe essere 0.00999...
    if pnl_pct < 0.01 - 1e-9:
        # Pre-trailing NON ancora attivo. NON muovere SL.
        return {
            "action": "hold",'''

def main():
    with open(FILE, encoding='utf-8') as f:
        content = f.read()
    if NEW in content:
        print("PATCH 2: gia' applicata, skip")
        return
    if OLD not in content:
        print("ERRORE: pattern non trovato")
        sys.exit(1)
    content = content.replace(OLD, NEW)
    with open(FILE, 'w', encoding='utf-8') as f:
        f.write(content)
    print("PATCH 2: epsilon aggiunto")

if __name__ == "__main__":
    main()
