Guida completa all'utilizzo

RiskFlow
Trading Tool

Piattaforma avanzata per la gestione del rischio, il piazzamento ordini e il monitoraggio delle posizioni su futures perpetui USDT-M. Supporta Bitget, Bybit, Bybit Demo, Weex e BingX con chart interattiva live, linee draggabili, calcolo size automatico con fee integrata, DCA ladder, SL Shield, Daily Loss Limit e PnL realtime.

5
Exchange
3
Order Types
3
TP Levels
4
Ladder Levels
00

Come funziona

RiskFlow è un'applicazione che gira interamente nel browser, senza richiedere installazioni. Tutta la logica di calcolo — size, rischio, R:R, ladder, PnL, fee — viene eseguita localmente sul tuo dispositivo. Le uniche comunicazioni esterne riguardano l'autenticazione utente, il salvataggio cifrato delle credenziali API, e il collegamento sicuro agli exchange tramite un proxy intermedio che si occupa di firmare le richieste.

Diagramma architettura sistema
BROWSER — CLIENT Chart Canvas + drag overlay Calcoli locali Risk / Size / Fee / Ladder Risk Tools SL Shield · DLL Auth + API Keys Cifrate & protette Stato locale · Impostazioni · Posizioni · Fee HTTPS Proxy sicuro Firma richieste 5 exchange EXCHANGES Bitget Bybit Live Bybit Demo Weex BingX Candele / Prezzi (API pubbliche)
🖥️
Tutto nel browser
Tutta la logica di calcolo — size, rischio, R:R, ladder, PnL — viene eseguita localmente nel tuo browser. Nessun dato sensibile viene elaborato su server applicativi esterni.
🔐
Credenziali protette
Il tuo account è protetto da autenticazione email/password. Le API key vengono cifrate con crittografia avanzata prima di essere salvate, e sono accessibili solo dal tuo account. Non vengono mai trasmesse in chiaro.
🔀
Proxy sicuro
Tutte le richieste agli exchange passano attraverso un proxy intermedio che firma ogni chiamata in modo sicuro lato server. La tua secret key non viene mai esposta nel browser.
01

Exchange Supportati

RiskFlow si connette alle API ufficiali di Bitget, Bybit Live, Bybit Demo, Weex e BingX. Ogni exchange è configurato in modo completamente indipendente: le API key sono salvate separatamente per exchange, e switchare da uno all'altro ricarica automaticamente la chart e tutti i dati di account. Ogni exchange ha un proxy dedicato per gestire la firma delle richieste.

Bitget
Live
  • USDT-M Futures perpetui
  • Market, Limit & Ladder
  • SL / TP preset su ordine
  • Modifica SL/TP su posizioni
  • Key + Secret + Passphrase
  • Dati di mercato pubblici
Bybit
Live
  • Linear Perpetual (USDT)
  • Market, Limit & Ladder
  • SL / TP separati
  • Modifica SL/TP live
  • Key + Secret (no passphrase)
  • One-Way e Hedge mode
Bybit Demo
Demo
  • Ambiente di test ufficiale
  • Stesse funzionalità Bybit Live
  • Fondi virtuali illimitati
  • Endpoint separati dal live
  • Chiavi scadono ogni 3 mesi
  • Key dedicati Demo
Weex
Live
  • USDT Futures perpetui
  • Market, Limit & Ladder
  • SL / TP integrati
  • Key + Secret + Passphrase
  • Proxy dedicato Weex
  • Pair caricati dinamicamente
BingX
Live
  • Swap Perpetual (USDT)
  • Market, Limit & Ladder
  • Simboli formato BTC-USDT
  • Key + Secret (no passphrase)
  • Proxy dedicato BingX
  • Pair caricati dinamicamente
I dati di candele e prezzi per la chart vengono scaricati tramite le API pubbliche di ciascun exchange, dal proxy corrispondente all'exchange attivo. Questo garantisce dati sempre disponibili anche senza API key configurate. Solo le operazioni di account (ordini, posizioni, balance) usano le credenziali dell'exchange attivo.
ExchangeAPI KeySecretPassphrase
Bitget✓ Richiesta✓ Richiesta✓ Richiesta
Bybit✓ Richiesta✓ Richiesta— Non necessaria
Bybit Demo✓ Richiesta✓ Richiesta— Non necessaria
Weex✓ Richiesta✓ Richiesta✓ Richiesta
BingX✓ Richiesta✓ Richiesta— Non necessaria
02

Autenticazione

RiskFlow usa un sistema di autenticazione email/password. La schermata di login copre l'intera applicazione e viene rimossa solo dopo l'accesso avvenuto con successo. Una volta autenticato, la sessione viene mantenuta automaticamente: non è necessario rifare il login ad ogni visita.

Schermata di autenticazione
RiskFlow Position sizing & risk management Accedi Registrati Password Username il tuo username Password •••••••• Accedi Password dimenticata? Accesso sicuro · Email / Password 🔒
Flusso di accesso
1
Login con username + password
Inserisci il tuo username e la password. RiskFlow recupera automaticamente l'email associata all'account e autentica la sessione in modo sicuro.
2
Sessione persistente
La sessione rimane attiva anche dopo aver ricaricato la pagina. Non è necessario rifare il login ad ogni accesso: l'applicazione riconosce automaticamente l'utente autenticato.
3
Caricamento API key
Al login, RiskFlow carica le API key dal localStorage del browser. Se è il primo accesso su questo dispositivo, le key non saranno presenti — configurale nel pannello API oppure importale da un file JSON precedentemente esportato.
4
Caricamento dell'interfaccia
Una volta autenticato, vengono avviati il caricamento della chart per il pair di default (BTCUSDT / 15m), la lista dei pair disponibili e il balance dell'account se le API key sono presenti.
Registrazione

La registrazione richiede username, email, password (minimo 6 caratteri) e l'accettazione della Privacy Policy (obbligatoria). Lo username viene verificato come unico al momento della registrazione. Una volta creato l'account, puoi accedere subito con le tue credenziali.

Il recupero password avviene tramite l'email associata all'account, non tramite username. Riceverai un link di reset direttamente all'indirizzo email registrato.
03

Configurazione API

Il pannello API si apre cliccando il pulsante 🔑 API nella topbar in alto a destra. Qui puoi configurare le credenziali per tutti e cinque gli exchange, verificare lo stato della connessione in tempo reale e sincronizzare balance e posizioni.

Storage locale: le API key sono salvate nel localStorage del browser — rimangono sul tuo dispositivo e non vengono mai trasmesse a server esterni. Se cambi browser o dispositivo, usa la funzione Esporta JSON per trasferire le tue chiavi.
Modal configurazione API keys
🔑 Connetti Exchange Bitget Live Bybit Live Bybit Demo Weex Live BingX Live ✓ API keys salvate — Connesso BALANCE $4,250.00 UNREALIZED PNL +$124.50 Posizioni aperte: 3 Sync 14:32:07 API Key la tua API key Secret Key •••••••••••••••• Passphrase (Bitget / Weex) •••••••• Salva & Connetti ⟳ Sync Elimina ✕ Chiudi
1
Apri il pannello API
Clicca su 🔑 API nella topbar. Il pannello si apre con i tab per i tre exchange. L'exchange attivo è evidenziato con il bordo viola. Se ci sono già key salvate, i campi mostreranno caratteri mascherati (••••••••).
2
Seleziona l'exchange
Clicca sul tab dell'exchange che vuoi configurare. Per Bitget, compaiono tre campi (Key, Secret, Passphrase). Per Bybit e Bybit Demo, il campo Passphrase è nascosto perché non necessario.
3
Inserisci le credenziali
Incolla API Key, Secret e (solo Bitget) la Passphrase nei rispettivi campi. Se i campi mostrano ••••••••, significa che ci sono già chiavi salvate — puoi lasciarli così per mantenere quelle esistenti, oppure sovrascriverle con nuove credenziali.
4
Salva e connetti
Clicca Salva & Connetti. Le chiavi vengono salvate nel localStorage del browser. Dopo pochi istanti viene eseguito un test di connessione che recupera balance e posizioni dall'exchange.
5
Verifica balance e posizioni
Il pannello API mostra in tempo reale il Balance totale (equity), l'Unrealized PnL aggregato e il numero di posizioni aperte. Il timestamp di ultima sincronizzazione è visibile in basso a destra. Usa ⟳ Sync per forzare un aggiornamento manuale.
6
Esporta le chiavi (backup)
Clicca ⬇ Esporta JSON per scaricare un file riskflow-api-keys.json con tutte le chiavi configurate per tutti gli exchange. Conserva questo file in un posto sicuro — ti permette di ripristinare la configurazione su un altro browser o dispositivo. In alternativa usa la hotkey Alt+S.
7
Importa le chiavi
Clicca ⬆ Importa JSON e seleziona un file precedentemente esportato. Le chiavi vengono caricate per tutti gli exchange presenti nel file. L'exchange attivo viene ripristinato a quello salvato al momento dell'esportazione. In alternativa usa la hotkey Alt+L.
Guida — Bitget
B
Bitget — Creazione API Key
Richiede: API Key · Secret · Passphrase
1
Accedi a Bitget
Vai su bitget.com → clicca sulla tua foto profilo in alto a destra → API Management.
2
Crea nuova API Key
Clicca Create API Key. Scegli un nome (es. "RiskFlow"). Imposta una Passphrase personalizzata — annotala subito, non sarà più visibile dopo la creazione.
3
Imposta i permessi
Abilita Read e Trade. Non abilitare mai Withdraw per sicurezza. Puoi lasciare vuoto il campo IP o whitelistare l'IP del proxy RiskFlow.
4
Copia le credenziali
Bitget mostra API Key e Secret una sola volta subito dopo la creazione. Copiati immediatamente entrambi insieme alla Passphrase. Se perdi la Secret, devi rigenerare la key.
5
Inserisci in RiskFlow
Pannello API → tab Bitget → incolla tutti e tre i valori → Salva & Connetti.
La Passphrase di Bitget è un secondo livello di sicurezza specifico di questo exchange. Senza di essa le chiamate autenticate verranno rifiutate con un errore di autenticazione.
Guida — Bybit Live
Bybit Live — Creazione API Key
Richiede: API Key · Secret (no Passphrase)
1
Accedi a Bybit
Vai su bybit.com → foto profilo → API, oppure direttamente alla sezione API Management del tuo account.
2
Crea nuova key
Clicca Create New Key. Seleziona le chiavi di sistema (HMAC). Dai un nome alla chiave, ad esempio "RiskFlow".
3
Imposta permessi
In API Key Usage seleziona Unified Trading. Abilita Read-Write e spunta Contract (Derivatives/Futures). Non abilitare Assets/Withdraw.
4
Copia API Key e Secret
La Secret Key viene mostrata una sola volta. Bybit non richiede Passphrase.
5
Inserisci in RiskFlow
Pannello API → tab Bybit → incolla Key e Secret → Salva. Il campo Passphrase non compare — è normale.
Assicurati che il tuo account Bybit abbia il Unified Trading Account attivo. RiskFlow usa esclusivamente i contratti Linear Perpetual (USDT-margined).
Guida — Bybit Demo
L'ambiente Demo di Bybit è completamente separato dal live. Le API key del Demo non funzionano sul live e viceversa. Devi creare chiavi apposite dall'interfaccia Demo. Vai su Bybit → foto profilo → Demo TradingTry Demo Trading per attivarlo → poi crea le API key dalla sezione API Management dell'account Demo.
Guida — Weex
W
Weex — Creazione API Key
Richiede: API Key · Secret · Passphrase
1
Accedi a Weex
Vai su weex.com → icona profilo in alto a destra → API Management.
2
Crea nuova API Key
Clicca Create API. Scegli un nome e imposta una Passphrase (obbligatoria come per Bitget) — annotala subito.
3
Imposta i permessi
Abilita Read e Trade per i contratti futures. Non abilitare Withdraw.
4
Inserisci in RiskFlow
Pannello API → tab Weex → incolla Key, Secret e Passphrase → Salva & Connetti.
Weex richiede Passphrase, esattamente come Bitget. Il campo compare automaticamente quando è selezionato il tab Weex nel pannello API.
Guida — BingX
BX
BingX — Creazione API Key
Richiede: API Key · Secret (no Passphrase)
1
Accedi a BingX
Vai su bingx.com → avatar profilo → API Management.
2
Crea nuova key
Clicca Create API Key. Scegli un nome, es. "RiskFlow". BingX non richiede Passphrase.
3
Imposta i permessi
Abilita Perpetual Futures Trading in lettura e scrittura. Non abilitare Wallet/Withdraw.
4
Nota sui simboli
BingX usa simboli nel formato BTC-USDT (con trattino). RiskFlow gestisce la conversione automaticamente — tu selezioni il pair normalmente come sugli altri exchange.
5
Inserisci in RiskFlow
Pannello API → tab BingX → incolla Key e Secret → Salva & Connetti. Il campo Passphrase non compare.
04

Sicurezza API Keys

Le API key in RiskFlow sono salvate nel localStorage del browser, sul tuo dispositivo. Non vengono mai trasmesse a server esterni né salvate su cloud. Il proxy lato server firma le chiamate agli exchange senza che la secret key venga mai esposta nel JavaScript del browser.

💾
Storage locale
Le API key sono salvate nel localStorage del browser — restano sul tuo dispositivo e non vengono mai trasmesse a server RiskFlow. Solo il browser che le ha salvate può leggerle.
📦
Export / Import JSON
Puoi esportare tutte le chiavi in un file JSON cifrato per fare backup o trasferirle su un altro browser. Il file di export va conservato in un posto sicuro — contiene le credenziali in chiaro.
🛡️
Proxy lato server
Le richieste autenticate agli exchange vengono firmate lato server dal proxy. La secret key non è mai esposta nel JavaScript del browser durante le chiamate API.
Regola fondamentale: crea sempre le API key con solo i permessi Read e Trade. Non abilitare mai il permesso Withdraw. In caso di compromissione delle chiavi, senza il permesso di prelievo i tuoi fondi non possono essere trasferiti. RiskFlow non ha mai bisogno del permesso Withdraw per operare.
Il file di export contiene le chiavi in chiaro. Non condividerlo e non caricarlo su servizi cloud non fidati. Se perdi il file e cancelli il localStorage, dovrai reinserire le chiavi manualmente dal pannello API.
Layer di protezioneCosa protegge
localStorage browserLe API key restano sul dispositivo — nessuna trasmissione a server RiskFlow
Export JSONBackup portatile per trasferire le chiavi tra browser o dispositivi
Proxy lato serverLa secret key non viene mai usata per firmare direttamente nel browser
Campi mascheratiSe ci sono key già salvate, i campi nel pannello mostrano caratteri • invece del valore reale
05

Topbar — Barra superiore

La topbar è fissa in cima all'interfaccia e contiene tutte le informazioni di contesto e i controlli di navigazione principali. Da sinistra a destra mostra: logo, selettore pair, timeframe, prezzo live con variazione 24h, toggle SL Shield, e a destra balance, PnL e controlli utente.

Topbar completa — layout annotato
RiskFlow ▼ BTCUSDT 1m 5m 15m 1h 4h 1D $84,320 +1.24% 🛡 SL SHIELD ON BALANCE $4,250 PNL +$124 trader99 Logout 🔑 API
ElementoFunzione
Logo RiskFlowLink al sito ufficiale, apre in una nuova tab
Pair SelectorMostra il pair correntemente selezionato. Un click apre il modal di selezione pair con ricerca e categorie
TimeframePulsanti 1m / 5m / 15m / 1h / 4h / 1D — cambiano il timeframe della chart e ricaricano le candele
Prezzo liveLast price del pair attivo, aggiornato ogni pochi secondi in tempo reale
Variazione 24hVariazione percentuale rispetto all'apertura delle 24 ore. Verde per positiva, rosso per negativa
🛡 SL ShieldToggle che impedisce di allargare lo SL su posizioni aperte. Arancione quando attivo, si blocca automaticamente con posizioni aperte. → Dettagli
⌨️ HotkeysApre il pannello di configurazione hotkeys. Permette di visualizzare e personalizzare tutti i tasti rapidi dell'applicazione. → Dettagli
Live dotPuntino verde lampeggiante — indica che il feed prezzi è attivo e funzionante
BalanceEquity totale dell'account sull'exchange attivo, aggiornato automaticamente
PnLUnrealized PnL aggregato di tutte le posizioni aperte, aggiornato ogni mezzo secondo
UsernameUsername dell'utente loggato. Il puntino viola indica sessione autenticata attiva
06

Chart Interattiva

La chart occupa la porzione principale dell'interfaccia a sinistra del pannello di trading ed è di tipo candlestick. I dati vengono scaricati automaticamente con paginazione: il sistema carica l'intera storia disponibile del pair selezionato sul timeframe scelto, fino a diverse centinaia di migliaia di candele.

Chart con linee di trading — Entry, SL, TP con badge informativi
+$340 8.2% R:R 1:3.4 TP2 +$200 4.8% R:R 1:2.0 TP1 $6,024 USDT 0.0713 BTC ENTRY 2.3% -$100 RISK SL

La chart supporta zoom (scroll del mouse), pan (click + drag), e si aggiorna in tempo reale con le candele live del pair selezionato. Il pulsante ⊙ live in alto a destra riporta la visualizzazione al prezzo corrente se hai scrollato nel passato.

Cambiando il timeframe dalla topbar, la chart ricarica automaticamente le candele per il periodo selezionato. Tutti i livelli impostati (Entry, SL, TP) vengono mantenuti — non vengono azzerati al cambio timeframe.
07

Linee Draggabili

Sopra la chart è presente un layer overlay trasparente che gestisce il rendering di tutte le linee interattive (Entry, SL, TP1/2/3, livelli Ladder) e le overlay delle posizioni aperte. Le linee sono sempre visibili e interagibili senza interferire con il normale utilizzo della chart sottostante.

🖱️
Drag to set
Avvicina il cursore a una linea impostata: appare la maniglia ⇅ e il cursore cambia forma. Tieni premuto e trascina verticalmente per aggiornare il prezzo in tempo reale — sia sulla chart che nel campo input del pannello. Il calcolo della size si riesegue ad ogni aggiornamento.
Rimuovi linea
Sopra ogni maniglia di drag appare un cerchietto . Cliccandolo si rimuove la linea dalla chart e si svuota il campo input corrispondente nel pannello.
Badge informativi sulle linee

Ogni linea viene disegnata con badge contestuali calcolati in tempo reale. I badge si aggiornano durante il drag, mostrando immediatamente il risultato dello spostamento.

LineaBadge sinistroBadge destro
ENTRYSize della posizione in USDT (es. $6,024 USDT)Quantità in coin (es. 0.0713 BTC)
SLDistanza percentuale dall'entry (es. 2.3%)Rischio in USDT (es. –$100 RISK)
TP1Guadagno stimato (es. +$200) + distanza %Rapporto Risk:Reward (es. R:R 1:2.0)
TP2Guadagno stimato + distanza %R:R calcolato
TP3Guadagno stimato + distanza %R:R calcolato
L1–L4Peso % del livello ladder (es. 30%)Size USDT del livello (es. $1,500)
Context menu (tasto destro)

Un click destro su un qualsiasi punto della chart apre un menu contestuale con le voci per impostare Entry, SL, TP1/2/3 al prezzo del punto cliccato. In modalità Market, la voce "Set Entry" è nascosta poiché l'entry segue sempre il prezzo live. In modalità Ladder, le voci TP vengono sostituite da "Set L1/L2/L3/L4".

Le linee Entry, SL e TP non vengono resettate al cambio timeframe — i prezzi impostati rimangono invariati. Se dopo un cambio di TF le linee sembrano scomparse, è solo perché il range visibile dell'asse Y è cambiato. Usa ⊙ live per tornare al prezzo corrente e le linee torneranno visibili.
08

Selezione Pair

Il modal di selezione pair si apre cliccando sul selettore pair nella topbar. All'avvio dell'applicazione, RiskFlow scarica automaticamente la lista di tutti i contratti USDT-M disponibili e li organizza in categorie. La selezione di un nuovo pair ricarica immediatamente la chart con le candele del simbolo scelto.

🔍
Ricerca live
Il campo di ricerca filtra i pair in tempo reale durante la digitazione. La ricerca è case-insensitive. Esempi: "BTC" mostra tutti i pair BTC, "PEPE" mostra tutti i PEPE, "sol" mostra SOLUSDT.
🏷️
Categorie
I pair sono organizzati in categorie: Major (BTC, ETH, SOL...), Meme (PEPE, WIF, BONK...), DeFi (AAVE, UNI...), L1/L2, AI (FET, RENDER...), Gaming, Exchange, Altcoin. I tab categoria filtrano immediatamente la lista.
Se il caricamento della lista pair non è disponibile (es. connessione temporaneamente assente), viene usata una lista di fallback con i pair principali. Al cambio pair, tutti i livelli impostati (Entry, SL, TP) vengono resettati per evitare inconsistenze tra i prezzi del vecchio e del nuovo simbolo.
09

Hotkeys Nuovo

RiskFlow supporta un sistema di hotkeys completamente personalizzabile. Ogni azione ha un tasto di default, ma puoi riassegnarle liberamente tramite il pannello ⌨️ nella topbar. Le preferenze vengono salvate in localStorage e persistono tra le sessioni.

Le hotkeys non si attivano quando il cursore è su un campo di input, per evitare conflitti durante la digitazione. Le combo Alt+S e Alt+L sono fisse e funzionano sempre, anche con focus su un input.
Come personalizzare un tasto
1
Apri il pannello hotkeys
Clicca il bottone ⌨️ nella topbar. Si apre il modal con la lista completa di tutte le azioni raggruppate per categoria.
2
Clicca sul tasto da modificare
Clicca il badge del tasto accanto all'azione che vuoi riassegnare. Il badge si illumina e appare l'overlay di cattura.
3
Premi il nuovo tasto
Premi il tasto che vuoi assegnare. Sono supportati tasti singoli (lettere, numeri, F1–F12, Enter, Space, frecce...) e combo come Shift+A. Se il tasto è già assegnato a un'altra azione, quella precedente viene liberata automaticamente.
4
Premi Esc per annullare
Se vuoi annullare la cattura senza modificare nulla, premi Esc. Il tasto precedente rimane invariato.
Tasti di default
CategoriaAzioneTasto defaultNote
TradingOpen TradeEnterApre il modal di conferma ordine
TradingClear allCResetta tutti i campi del pannello
TradingToggle TPTAttiva / disattiva i Take Profits
ChartGoto live priceGRicentra la chart sul prezzo attuale
ChartSet EntryEAttiva modalità click-to-set per l'Entry
ChartSet Stop LossSAttiva modalità click-to-set per lo SL
ChartSet TP1F1Attiva modalità click-to-set per il TP1
ChartSet TP2F2Attiva modalità click-to-set per il TP2
ChartSet TP3F3Attiva modalità click-to-set per il TP3
Timeframe1m / 5m / 15m1 2 3Cambio rapido timeframe
Timeframe1h / 4h / 1D4 5 6Cambio rapido timeframe
NavigazioneApri pair selectorPApre il modal di selezione pair
NavigazioneOrder type MarketMImposta l'order type su Market
NavigazioneOrder type LimitLImposta l'order type su Limit
NavigazioneSync accountRForza un aggiornamento del balance
API KeysEsporta API keysAlt+SFisso — non personalizzabile
API KeysImporta API keysAlt+LFisso — non personalizzabile
Le hotkeys Set Entry (E) e Set SL/TP (S, F1–F3) attivano la modalità click-to-set: dopo aver premuto il tasto, il prossimo click sulla chart imposta il prezzo e disegna la linea. La linea viene visualizzata immediatamente, insieme ai badge informativi.
Reset e conflitti

Se assegni un tasto già in uso a una nuova azione, la vecchia associazione viene rimossa automaticamente — non ci possono essere due azioni sullo stesso tasto. Per tornare alla configurazione originale, usa il pulsante ↺ Ripristina default in fondo al modal hotkeys.

10

Calcolo Rischio & Size

Il cuore di RiskFlow è il motore di calcolo della position size. La logica è semplice: partendo dal rischio definito (in % o in USDT fisso), dalla distanza percentuale dello stop loss dall'entry e dal prezzo di entry, viene calcolata la size in USDT e poi convertita in numero di contratti. Il calcolo si aggiorna in tempo reale ad ogni variazione di un qualsiasi parametro di input — digitazione nel pannello, drag di una linea sulla chart, cambio modalità.

Parametri di input
ParametroTipoDescrizione
BalanceUSDTEquity totale del conto. Sincronizzato automaticamente dall'exchange, oppure inseribile manualmente per calcoli simulati.
Risk %%Percentuale del balance da rischiare. Si scala automaticamente al variare del balance.
Risk $USDTImporto fisso in USDT da rischiare, indipendente dal balance.
Leverage1x–125xLeva applicata alla posizione. Preset disponibili: 2x, 5x, 10x, 20x, 25x, 50x. Influenza il margine richiesto, NON la size calcolata né il rischio reale.
Margin ModeCrossed / IsolatedCrossed: l'intero balance serve da garanzia. Isolated: solo il margine allocato per questa posizione.
EntryUSDTIn modalità Market: prezzo live aggiornato in tempo reale. In modalità Limit: valore inserito manualmente o impostato dalla chart.
Stop LossUSDTObbligatorio per il calcolo. Imposta la distanza di rischio. Deve essere sotto l'entry per un Long, sopra per uno Short.
Formula di calcolo
rischio USDT = balance × (risk% / 100)// oppure importo fisso
distanza SL% = |entry − sl| / entry × 100// distanza percentuale
size USDT = rischio / (distanza SL% / 100)// posizione nominale
contratti = floor(size / entryPrice / step) × step// arrotondato allo step size dell'exchange
margine = size USDT / leverage// margine richiesto
Esempio pratico — BTCUSDT Long
Scenario: BTC Long a mercato — Balance $10,000 · Risk 1%
Input
Balance$10,000 USDT
Risk %1%
Entry (market)$84,500
Stop Loss$83,100
Leverage10x
Output calcolato
Risk $$100 USDT
Distanza SL1.657%
Size USDT$6,036 USDT
Contratti0.071 BTC
Margine req.$603 USDT
La leva non cambia il rischio
Concetto chiave: aumentare la leva NON aumenta il rischio reale definito. Con Risk 1% e leva 10x rischi comunque $100, ma il margine bloccato è $603 invece di $6,036. La leva amplifica il rendimento sul margine (ROE), ma il P&L assoluto dipende solo dalla size e dalla distanza tra prezzo e entry. Aumentare la leva aumenta però il rischio di liquidazione, poiché riduce il buffer tra il prezzo corrente e il prezzo di liquidazione.
11

Tipi di Ordine

RiskFlow supporta tre modalità di inserimento ordini, selezionabili dai tab Market / Limit / Ladder nella sezione Trade del pannello. Cambiando modalità vengono aggiornati la visualizzazione dei campi, il comportamento della linea Entry sulla chart e il ricalcolo automatico della size.

Market
L'ordine viene eseguito immediatamente al prezzo di mercato corrente. La linea Entry sulla chart segue il prezzo live aggiornato in tempo reale e non è modificabile manualmente. Il campo Entry nel pannello mostra il prezzo live con sfondo giallo ed è bloccato in sola lettura.

SL e TP vengono allegati direttamente all'ordine come ordini preset che diventano attivi al fill dell'ordine entry.
📌
Limit
L'ordine viene inserito nel book a un prezzo specifico e attende l'esecuzione quando il mercato raggiunge quel livello. Richiede la linea Entry impostata manualmente tramite il campo input nel pannello oppure tramite drag sulla chart.

Il prezzo viene arrotondato automaticamente al tick size corretto del simbolo.
🪜
Ladder DCA
DCA automatico su 2–4 livelli di prezzo. Ogni livello è un ordine Limit separato con la propria size calcolata in base al peso percentuale assegnato. SL e TP sono condivisi su tutti i livelli. L'entry media ponderata viene calcolata e mostrata automaticamente.
Flusso di esecuzione — Market e Limit
1
Recupero info contratto
Prima dell'invio, RiskFlow recupera automaticamente le informazioni del contratto: decimali del prezzo, step size dei contratti e size minima dell'exchange. Questi dati vengono memorizzati localmente per evitare chiamate ripetute sullo stesso simbolo.
2
Impostazione margin mode e leva
Prima dell'ordine principale, RiskFlow configura automaticamente il margin mode (crossed/isolated) e la leva selezionata nel pannello. Se l'exchange restituisce un errore su questi step (ad esempio leva già impostata), l'operazione continua comunque.
3
Invio ordine
Viene inviato l'ordine all'exchange con tutti i parametri: simbolo, size (arrotondata allo step size corretto), direzione, tipo, prezzo (solo Limit), SL e TP preset.
4
Aggiornamento account
Dopo circa 2 secondi, balance e posizioni vengono aggiornati automaticamente. I campi del pannello vengono resettati pronti per un nuovo trade.
12

Stop Loss & Take Profit

SL e TP possono essere impostati in tre modi: digitando direttamente il prezzo nel campo numerico del pannello, cliccando il pulsante accanto al campo e poi cliccando sulla chart al prezzo desiderato, oppure con un click destro sulla chart e selezionando la voce dal menu contestuale. RiskFlow valida sempre che il SL sia nella direzione corretta rispetto alla direzione del trade.

🛑
Stop Loss
Obbligatorio per il calcolo della size. Controlla la distanza di rischio e determina l'importo che verrà perso se l'operazione va contro. Viene allegato direttamente all'ordine come SL preset che diventa attivo al fill dell'ordine entry.

Per le posizioni già aperte, SL e TP possono essere modificati live tramite la sezione "Mod SL/TP" nel pannello posizioni, con drag sulla chart overlay, oppure cliccando il pulsante "Set SL".
🎯
Take Profit — fino a 3 livelli
Fino a 3 livelli TP abilitabili indipendentemente con checkbox. Ogni TP ha un campo % position che indica la percentuale della size da chiudere a quel livello.

Il guadagno stimato per ogni TP e il relativo R:R vengono calcolati e mostrati in tempo reale mentre si draggano le linee sulla chart.
Calcolo R:R e guadagno stimato

Per ogni TP attivo vengono calcolati in tempo reale: la distanza percentuale dall'entry, il guadagno stimato in USDT (considerando il rischio definito e la % position del TP), e il rapporto Risk:Reward.

distanza TP = |tpPrice − entry| / entry
R:R = distanza TP / distanza SL
guadagno stimato = rischio × R:R × (% position / 100)
Esempio R:R — SOLUSDT Long
SOLUSDT Long · Entry $142 · SL $138 · Risk $100
LivelloPrezzoDist. entryR:R% PositionGain (risk $100)
SL$138.00–2.82%100%–$100
TP1$150.00+5.63%1:2.025%+$50
TP2$158.00+11.27%1:4.050%+$200
TP3$168.00+18.31%1:6.525%+$162
Con R:R 1:2.0 al TP1 basta avere ragione meno del 34% delle volte per essere profittevole. Con 1:4 basta il 20%. RiskFlow mostra questi valori in tempo reale mentre sposti le linee — fondamentale per valutare la qualità del setup prima di piazzare l'ordine.
13

Ladder Orders — DCA automatico

La modalità Ladder permette di costruire un piano di DCA (Dollar Cost Averaging) automatico su 2, 3 o 4 livelli di prezzo. Ogni livello è un ordine Limit indipendente con la propria size calcolata in base al peso percentuale assegnato. Il sistema calcola automaticamente il prezzo medio di ingresso ponderato e distribuisce il rischio totale definito tra tutti i livelli attivi.

Pannello Ladder Orders con 4 livelli
LADDER ORDERS Livelli: 2 3 4 # PREZZO $ PESO SIZE USDT SL dist. 1 2,200 15% $750 18.2% 2 2,100 25% $1,153 14.3% 3 2,000 30% $1,500 10.0% 4 1,920 30% $1,667 6.3% Totale 100% $5,070 USDT Entry medio ponderato: ~$2,020
Distribuzione pesi — automatica e manuale
🤖
Distribuzione automatica
I pesi vengono distribuiti automaticamente in modo crescente verso lo SL: il livello L1 (più lontano dallo SL) ha peso minore, i livelli successivi più vicini allo SL hanno pesi progressivamente maggiori.

Logica: più un livello è vicino allo SL, più è probabile che venga riempito, quindi merita peso maggiore per abbassare il prezzo medio di ingresso.
✏️
Pesi manuali
Puoi sovrascrivere il peso di ogni livello digitando direttamente nel campo % accanto al prezzo. Il sistema verifica che la somma di tutti i pesi sia esattamente 100% prima di abilitare il pulsante di invio. Se la somma non è 100%, l'invio è bloccato con un avviso visibile.
Calcolo size per livello ladder
rischio livello = rischio totale × (peso% / 100)
distanza SL livello = |prezzoLivello − sl| / prezzoLivello × 100
size livello = rischio livello / (distanza SL% / 100)
entry medio = Σ(prezzo × peso) / Σ(pesi)// media ponderata
La somma dei pesi deve essere esattamente 100% prima dell'invio. Se un livello ha size inferiore al minimo richiesto dall'exchange, quell'ordine viene saltato con un avviso nella notifica — gli altri livelli vengono comunque inviati.
14

Modal di Conferma Ordine

Prima di inviare qualsiasi ordine, RiskFlow mostra un riepilogo completo del trade con tutti i dettagli. Cliccando OPEN LONG (o OPEN SHORT) nel pannello viene aperto il modal di conferma. L'esecuzione reale avviene solo al click del pulsante finale nel modal, evitando invii accidentali.

Modal di conferma ordine — Market Long
Confirm Order Symbol BTCUSDT Direction LONG Order type MARKET Entry $84,320 (live) Size $6,024 USDT Contracts 0.071 BTC Leverage 10x Margin $603 USDT Stop Loss $83,100 Risk $ $100 (1%) TP1 $87,000 Cancel Open Trade

Il modal mostra in modo chiaro tutti i dettagli del trade: simbolo, direzione (Long/Short), tipo di ordine, entry, size in USDT e in contratti, leva, margine richiesto, stop loss, rischio in USDT e percentuale, e i livelli TP attivi. Solo cliccando Open Trade l'ordine viene effettivamente inviato all'exchange.

15

Dashboard Posizioni

Il pannello posizioni si trova nella sezione inferiore del pannello laterale e mostra tutte le posizioni aperte sull'exchange attivo. I dati vengono sincronizzati automaticamente e aggiornati dopo ogni operazione. Le posizioni con size zero vengono filtrate e non vengono mostrate.

Pannello posizioni — vista compressa e espansa
POSIZIONI 2 Close all BTCUSDT 10x LONG · Entry $84,320 +$124.50 (+2.14%) 0.071 cont · $5,987 ETHUSDT 5x SHORT · Entry $2,840 -$45.20 (-0.89%) MARK $2,864.50 MARGIN $568.90 LIQ. $3,142.00 STOP LOSS $2,920.00 TAKE PROFIT $2,700.00 Mod SL es. 2950.00 $ Set SL BE Close 25% 25% 50% 75% 100% ⚡ Parziale ✕ Chiudi tutto 📸 Money Shot

Ogni posizione è cliccabile per espanderla e visualizzare tutti i dettagli. Nella vista espansa sono disponibili: dati completi di mark price, margine, prezzo di liquidazione, SL e TP attivi, il campo per modificare SL live, il pulsante Breakeven (BE), lo slider per la chiusura parziale e il pulsante Money Shot.

CampoDescrizione
Symbol + LevaSimbolo della posizione e leva applicata
Side (bordo colore)Bordo sinistro verde = LONG, rosso = SHORT
Entry $Prezzo medio di ingresso (media ponderata per posizioni DCA)
PnL liveUnrealized P&L aggiornato ogni mezzo secondo in tempo reale
ROE %Rendimento sul margine allocato (PnL / margine × 100)
Mark PricePrezzo mark corrente dalla cache prezzi live
MarginMargine allocato per la posizione
Liq. PricePrezzo di liquidazione stimato dall'exchange, mostrato in rosso
SL / TPStop loss e take profit attivi sulla posizione
16

Modifica SL/TP su posizioni aperte

Per ogni posizione aperta espansa, è possibile modificare SL e TP senza chiudere la posizione. Il sistema permette di aggiornare i prezzi sia tramite i campi input nel pannello, sia tramite drag diretto sulla chart overlay. La modifica viene inviata all'exchange solo dopo conferma esplicita.

1
Inserisci il nuovo prezzo nel campo Mod SL
Nella sezione espansa della posizione, digita il nuovo prezzo SL nel campo "Mod SL". La linea SL sulla chart overlay si aggiorna in tempo reale durante la digitazione, permettendoti di visualizzare la nuova posizione prima di confermare.
2
Oppure trascina la linea SL sulla chart
La linea SL della posizione aperta (tratteggiata rossa sulla chart overlay) è draggabile. Durante il drag, il campo input nel pannello si aggiorna in sincronizzazione. Al rilascio compare un invito a premere "Set SL" per confermare la modifica.
3
Premi "Set SL" per inviare all'exchange
Cliccando Set SL la modifica viene inviata all'exchange. Riceverai una notifica di conferma a operazione completata.
4
TP su posizioni aperte
Allo stesso modo si possono impostare fino a 3 livelli TP per ogni posizione aperta tramite i campi TP1/2/3 nella sezione espansa. I badge R:R vengono mostrati accanto a ogni campo per valutare il reward potenziale in tempo reale.
17

Breakeven (BE)

Il pulsante BE (Breakeven) sposta automaticamente lo Stop Loss al prezzo di entry della posizione, portando il rischio residuo a zero. Questa operazione è disponibile sia dal pannello posizioni (pulsante BE accanto al campo Mod SL) sia direttamente dalla chart overlay cliccando il badge BE giallo sulla linea SL della posizione.

🎯
Come funziona
Il pulsante BE legge il prezzo di entry della posizione, lo imposta come nuovo valore nel campo "Mod SL", aggiorna la linea SL sulla chart overlay e invia immediatamente la modifica all'exchange. Nessuna conferma aggiuntiva richiesta: un singolo click esegue tutta la sequenza.
📊
Quando usarlo
Il Breakeven è utile quando la posizione è in profitto e vuoi eliminare il rischio di perdita: anche se il prezzo torna al livello di entry, la posizione viene chiusa senza perdite. Tipicamente si usa dopo che il prezzo ha raggiunto il TP1 e si vuole proteggere la parte rimanente della posizione.
18

Chiusura Parziale

La chiusura parziale permette di ridurre la size di una posizione aperta senza chiuderla completamente. Puoi scegliere la percentuale da chiudere tramite lo slider (1%–100%) o i preset rapidi (25%, 50%, 75%, 100%). Il P&L e il numero di contratti corrispondenti alla percentuale scelta vengono mostrati in tempo reale.

1
Seleziona la percentuale da chiudere
Usa lo slider o i preset (25%, 50%, 75%, 100%). Il display aggiorna istantaneamente il P&L proporzionale e il numero di contratti corrispondenti. Ad esempio, con 50% su una posizione di 0.071 BTC chiudi 0.035 BTC.
2
Clicca "⚡ Parziale"
Viene aperto il modal di conferma con i dettagli della chiusura parziale: simbolo, percentuale scelta, P&L stimato e numero contratti. Il pulsante di conferma è giallo per distinguere la chiusura parziale da quella totale.
3
Conferma l'esecuzione
Cliccando Conferma, l'exchange chiude la percentuale richiesta al prezzo corrente di mercato. Il pannello posizioni si aggiorna automaticamente dopo pochi secondi mostrando la size ridotta.
Il pulsante ✕ Chiudi tutto chiude l'intera posizione con un singolo ordine a mercato. Nell'header del pannello posizioni è disponibile anche il pulsante Close all che chiude tutte le posizioni aperte simultaneamente.
19

PnL Realtime

Il sistema di PnL realtime si basa su una cache prezzi aggiornata da due fonti indipendenti: il feed live del pair attivo sulla chart (aggiornato ogni pochi secondi) e un fetcher in background per tutti gli altri pair con posizioni aperte. Il loop di aggiornamento PnL gira ogni 500ms e usa la cache per ricalcolare il P&L di ogni posizione senza fare continuamente nuove chiamate di rete.

💹
Cache prezzi live
Per ogni simbolo con posizioni aperte viene mantenuto il prezzo aggiornato in cache. Il pair attivo sulla chart aggiorna la propria voce ogni pochi secondi. Per i pair con posizioni su altri simboli, un processo in background recupera i prezzi ogni 2 secondi in modo asincrono senza bloccare l'interfaccia.
🔢
Formule PnL & ROE
Long: (mark price − entry) × size
Short: (entry − mark price) × size

Il valore nominale della posizione è size × mark price, il margine è il nominale diviso la leva, e il ROE percentuale è PnL diviso il margine.

Il PnL calcolato viene aggiornato in più punti dell'interfaccia simultaneamente: nel pannello di ogni posizione, nella topbar (PnL totale), e nel riepilogo account. La linea di entry sulla chart overlay mostra una pillola con il PnL corrente aggiornata in tempo reale.

20

Money Shot 📸

Il Money Shot genera un'immagine PNG condivisibile della posizione aperta, ottimizzata per la condivisione sui social (Twitter/X, Telegram). È accessibile dal pulsante 📸 Money Shot nella sezione espansa di ogni posizione. L'immagine viene generata con tutti i dati live: simbolo, side, entry, mark price corrente, PnL in USDT e ROE%.

Money Shot — anteprima immagine generata
RiskFlow
2026-04-10 11:18 UTC
🤑
BTC/USDT
▲ LONG · 10x
+ $2.53
+2.36% ROE
ENTRY
$71492.8
MARK
$71661.7
RiskFlow
Not financial advice
1
Apri una posizione nel pannello
Clicca su una posizione aperta per espanderla. In fondo alla sezione espansa compare il pulsante 📸 Money Shot.
2
Genera l'immagine
Un modal si apre con l'anteprima dell'immagine generata in tempo reale con i dati live della posizione: simbolo, direzione, entry, mark price corrente, PnL e ROE%.
3
Scarica e condividi
Cliccando ⬇ Salva immagine il PNG viene scaricato automaticamente sul tuo dispositivo, pronto per essere condiviso su Twitter/X, Telegram o qualsiasi altro canale.
21

SL Shield Nuovo

Lo SL Shield è un toggle di protezione nella topbar che, una volta attivato, impedisce di allargare lo stop loss su posizioni già aperte. Funziona come un vincolo disciplinare: puoi spostare lo SL in favore del trade (avvicinarlo all'entry per ridurre il rischio), ma non puoi mai portarlo più lontano dall'entry rispetto al punto in cui era al momento dell'apertura.

SL Shield — toggle nella topbar
🛡 SL SHIELD OFF OFF — inattivo 🛡 SL SHIELD ON ON — protezione attiva 🛡 SL SHIELD 🔒 LOCKED — posizioni aperte
Come funziona

Quando SL Shield è attivo, ogni tentativo di spostare lo stop loss viene validato contro il valore di riferimento (refSL) — il prezzo SL al momento dell'ultima conferma sull'exchange. La logica è asimmetrica per direzione:

DirezioneSpostamento consentitoSpostamento bloccato
LONG SL può salire (avvicinarsi all'entry) — riduce il rischio SL non può scendere sotto il refSL — allargherebbe il rischio
SHORT SL può scendere (avvicinarsi all'entry) — riduce il rischio SL non può salire sopra il refSL — allargherebbe il rischio

Il refSL si aggiorna automaticamente ogni volta che un Set SL viene confermato con successo sull'exchange — permettendo di fare trailing stop progressivo senza mai allargare il rischio originale.

🔒
Blocco automatico con posizioni aperte
Se hai posizioni aperte e SL Shield è ON, il toggle si blocca e non può essere disattivato. Questo impedisce di aggirare la protezione mentre un trade è attivo. Il cursore diventa not-allowed e un'icona 🔒 sostituisce "ON".
📈
Trailing stop compatibile
SL Shield non impedisce il trailing stop. Puoi spostare lo SL in direzione favorevole (verso l'entry e oltre, in zona profitto) quante volte vuoi. Il refSL avanza con ogni conferma sull'exchange, creando un "pavimento" mobile ma sempre in direzione sicura.
Lo stato ON/OFF dello SL Shield viene salvato in localStorage e persiste tra le sessioni. Se chiudi e riapri il browser con posizioni aperte, lo Shield torna nello stato precedente. Verifica sempre il toggle prima di operare.
22

Daily Loss Limit Nuovo

Il Daily Loss Limit è un circuit breaker giornaliero che blocca automaticamente l'apertura di nuove posizioni se il wallet scende di una percentuale configurabile in 24 ore. Progettato per proteggere il conto nelle giornate negative, una volta scattato non può essere disattivato manualmente fino alla scadenza del blocco.

Daily Loss Limit — pannello laterale
DAILY LOSS LIMIT ⓘ OFF DAILY LOSS LIMIT ⓘ ON Soglia perdita 2 % Blocco se wallet scende 🛑 Trading bloccato Hai superato il limite di perdita giornaliero Sblocco tra: 18:23:41
Ciclo di vita del Daily Loss Limit
1
Attivazione — snapshot del balance
Quando attivi il DLL, RiskFlow scatta uno snapshot del wallet balance in quel momento (saldo realizzato, senza unrealized PnL). Se il balance non è ancora disponibile, l'attivazione viene bloccata con una notifica: "Sincronizza il conto prima di attivare il Daily Loss Limit".
2
Monitoraggio continuo
Ad ogni aggiornamento del balance dall'exchange, RiskFlow calcola la perdita percentuale rispetto allo snapshot: (snapshot − balance) / snapshot × 100. Se questa percentuale supera la soglia configurata, il circuit breaker scatta.
3
Blocco attivo — conto alla rovescia 24h
Il blocco parte immediatamente con un conto alla rovescia visibile nel pannello ("Sblocco tra: HH:MM:SS"). Il toggle DLL diventa grigio e non cliccabile. Qualsiasi tentativo di aprire un ordine mostra la notifica di blocco con il tempo rimanente.
4
Reset automatico dopo 24h
Allo scadere del blocco, il sistema si resetta automaticamente: lo snapshot viene aggiornato al balance corrente e il trading viene ripristinato con una notifica verde. Il DLL rimane attivo per il giorno successivo con il nuovo snapshot.
Parametri
ParametroTipoDefaultDescrizione
Soglia perdita number 2% Percentuale di perdita sul wallet balance che scatena il blocco. Range consigliato: 1%–5%.
Durata blocco fixed 24 ore La durata del blocco è fissa a 24 ore dal momento del trigger. Non è modificabile.
Snapshot auto Preso al momento dell'attivazione del DLL o al reset automatico. Usa il wallet balance (saldo realizzato), mai l'unrealized PnL.
🛑
Una volta scattato, il blocco non può essere annullato manualmente. Questo è intenzionale: il DLL è uno strumento di disciplina, non un avviso ignorabile. L'unico modo per sbloccare prima delle 24 ore è disabilitare il DLL — ma questo non è possibile mentre il blocco è attivo.
Lo stato del DLL (enabled, soglia, timestamp trigger, snapshot) viene salvato in localStorage con le chiavi dll_enabled, dll_pct, dll_triggered_at, dll_balance_snapshot. Il blocco persiste anche dopo il refresh della pagina.
23

Fee Exchange Nuovo

RiskFlow include un sistema di calcolo fee integrato nel calcolo della size. Le fee vengono sottratte dal rischio accettabile prima di calcolare la posizione, così il rischio netto che arrivi al tuo stop loss corrisponde esattamente a quello che hai impostato — senza sorprese.

La sezione Fee Exchange nel pannello laterale permette di personalizzare i tassi di taker e maker fee per ciascun exchange. I valori vengono salvati separatamente per exchange e persistono tra le sessioni.

Default fee per exchange
ExchangeTaker fee defaultMaker fee default
Bitget0.060%0.020%
Bybit0.055%0.020%
Bybit Demo0.055%0.020%
Weex0.060%0.020%
BingX0.050%0.020%
Come viene applicata la fee

Il tipo di ordine determina quale combinazione di fee viene usata per il calcolo del round-trip (apertura + chiusura):

Market / Stop / Ladder
Entrambe le gambe del trade usano la taker fee (esecuzione immediata a market).

Fee round-trip = taker × 2
📋
Limit
L'apertura usa la maker fee (ordine limit in book), la chiusura (SL) è sempre market e usa la taker fee.

Fee round-trip = maker + taker
Formula con fee integrata
size = riskUsd ÷ ( slDist% + feeRoundTrip ) // fee riduce direttamente la size
feeRoundTrip = taker × 2 // per market/stop/ladder
feeRoundTrip = maker + taker // per limit

La fee stimata viene mostrata in tempo reale nel box di calcolo del pannello (Fee est.), calcolata come size USDT × feeRoundTrip. Questo valore è un'approssimazione: le fee effettive dipendono dall'esecuzione reale sull'exchange (slippage, partial fill, rebate VIP).

Se hai un account VIP con fee ridotte, inserisci i tuoi tassi personalizzati nella sezione Fee Exchange. Le modifiche si applicano immediatamente al calcolo size senza necessità di refresh. I valori sono salvati in localStorage separatamente per exchange (chiavi: rf_fee_taker_<exchange>, rf_fee_maker_<exchange>).
24

Formule & Calcoli — Reference

Calcolo size con fee integrata
size USDT = rischio / (distanza SL% / 100 + feeRoundTrip)// fee sottratta prima del calcolo
feeRoundTrip = taker × 2// market / stop / ladder
feeRoundTrip = maker + taker// limit
fee stimata = size USDT × feeRoundTrip
Calcolo size standard (senza fee)
rischio USDT = balance × (risk% / 100)// oppure importo fisso
distanza SL% = |entry − sl| / entry × 100
size USDT = rischio / (distanza SL% / 100)
contratti = floor(size / entryPrice / step) × step
margine = size USDT / leverage
PnL realtime posizioni
nominale = size × mark price
margine = nominale / leverage
PnL Long = (mark price − entry) × size
PnL Short = (entry − mark price) × size
ROE % = PnL / margine × 100
R:R su take profit
distanza SL = |entry − sl|
distanza TP = |tpPrice − entry|
R:R = distanza TP / distanza SL
guadagno stimato = rischio × R:R × (tp% position / 100)
Entry medio ponderato Ladder
rischio livello = rischio totale × (peso% / 100)
size livello = rischio livello / (distanza SL livello% / 100)
entry medio = Σ(prezzoLivello × peso) / Σ(pesi)// media ponderata
25

Troubleshooting

⚠️ PnL mostra 0 o non si aggiorna
Il PnL viene calcolato localmente usando la cache prezzi. Possibili cause:

Pair attivo diverso dalla posizione: il background fetcher per gli altri pair impiega fino a 2 secondi per aggiornarsi
Nessuna posizione caricata: il sistema di PnL realtime si avvia automaticamente quando le posizioni sono caricate — forza un Refresh dal pannello API
API Key senza permesso Read: le posizioni non vengono caricate e la cache rimane vuota
Soluzione rapida: premi ⟳ Sync nel modal API per forzare il reload completo
ℹ️ Il calcolo della size mostra "—"
Il calcolo richiede tutti e tre i valori: Risk, Entry e SL.

• In modalità Market: assicurati che il feed live sia attivo (puntino verde lampeggiante nella topbar). Se offline, il prezzo live è null e il calcolo non può avvenire
• In modalità Limit: devi inserire il prezzo di entry manualmente nel campo o trascinare la linea Entry sulla chart
• Verifica che il campo Risk non sia 0 o vuoto
• Verifica che lo SL sia nella direzione corretta (sotto entry per Long, sopra per Short)
🔐 Errore autenticazione API
• Verifica i permessi: le chiavi devono avere almeno Read + Trade
• Bitget e Weex: la Passphrase è obbligatoria — deve corrispondere esattamente a quella impostata alla creazione della key
• Se hai impostato un whitelist IP sull'exchange, assicurati che l'IP del proxy RiskFlow sia incluso
• Errore 40037: Passphrase Bitget/Weex errata o mancante
• Errore 401: API Key non valida o revocata — ricrea la key
• I campi mascherati (••••) nel form indicano che le credenziali sono già salvate — non sovrascriverle se non vuoi cambiarle
❌ Ordine rifiutato dall'exchange
Cause comuni:

Insufficient margin: il balance disponibile è inferiore al margine richiesto — riduci la leva o la size (avvicina lo SL)
Price too far from mark: su Bybit il prezzo limite deve essere entro una certa percentuale dal mark price — avvicina l'entry
Invalid qty / min size: la size calcolata è inferiore al minimo dell'exchange — aumenta il Risk%, avvicina lo SL, oppure usa un simbolo con contratti più piccoli
Position mode mismatch: Bybit richiede che la modalità One-Way vs Hedge sia configurata correttamente nelle impostazioni dell'exchange prima di piazzare ordini
Step size error: RiskFlow arrotonda automaticamente allo step size del simbolo — se ricevi questo errore, prova a fare un Refresh delle informazioni contratto
✓ La chart non mostra dati (modalità demo)
Se la fonte dei dati di mercato non è disponibile, RiskFlow cade automaticamente in modalità demo generando dati sintetici casuali per il pair selezionato. Una notifica mostrerà "dati offline — demo data".

In questa modalità: la chart funziona normalmente e il calcolo size funziona, ma non è possibile inviare ordini reali. Il feed live rimane disabilitato finché la fonte dati non torna disponibile.
⚠️ Bybit Demo — errore connessione
L'ambiente Demo di Bybit usa endpoint separati dal live:

• Verifica di aver creato le chiavi dalla sezione Demo Trading → API Management (non dal live account)
• Le chiavi Demo Bybit scadono ogni 3 mesi se non associate a un IP fisso — rinnova dalla pagina API Management dell'account Demo
• Se il balance mostra "—" anche dopo il salvataggio, premi ⟳ Sync per forzare il refetch
• Le chiavi Live di Bybit NON funzionano sull'ambiente Demo — devi creare set separati
ℹ️ Le linee sulla chart scompaiono al cambio TF
Le linee Entry, SL e TP non vengono resettate al cambio timeframe — i prezzi impostati rimangono identici. Se le linee sembrano sparite è perché il range visibile della chart (asse Y) è cambiato e le linee sono fuori dal viewport.

Usa il pulsante ⊙ live in alto a destra sulla chart per tornare alla vista del prezzo attuale — le linee torneranno visibili se i prezzi impostati sono vicini al prezzo corrente.
🛡 SL Shield blocca uno spostamento SL valido
Lo SL Shield confronta il nuovo SL con il refSL — il valore SL confermato sull'exchange al momento dell'attivazione della posizione. Se sposti lo SL via trascinamento sulla chart ma l'exchange non ha ancora confermato il valore precedente, il refSL potrebbe non essere aggiornato.

Soluzione: dopo ogni Set SL confermato con successo, il refSL si aggiorna automaticamente. Attendi la notifica di conferma prima di spostare di nuovo
• Se hai disabilitato e riabilitato SL Shield mentre avevi posizioni aperte, il refSL potrebbe non corrispondere — usa ⟳ Sync per ricaricare le posizioni e il loro SL attuale
• Puoi sempre disabilitare temporaneamente SL Shield dalla topbar se non hai posizioni aperte
🛑 Daily Loss Limit — non riesco ad attivarlo
Il DLL richiede che il wallet balance sia disponibile prima di poter essere attivato:

"Sincronizza il conto prima di attivare": le API key non sono configurate o non è ancora stato fatto un sync. Premi ⟳ Sync nel pannello account e aspetta che il balance appaia prima di attivare il DLL
DLL già scattato e locked: non puoi disattivarlo finché il conto alla rovescia non scade. Il blocco è intenzionale e non aggirabile — attendi le 24h
Il blocco persiste dopo refresh: è corretto — lo stato è salvato in localStorage. Il blocco rimane attivo indipendentemente da refresh, chiusura del browser o cambio di tab
🌐 Weex / BingX — connessione o ordini non funzionano
Problemi comuni per i nuovi exchange:

Weex — Passphrase mancante: Weex richiede la Passphrase esattamente come Bitget. Il campo compare nel tab Weex del pannello API — assicurati di averla inserita
BingX — simboli non trovati: BingX usa il formato BTC-USDT internamente. RiskFlow gestisce la conversione automaticamente. Se un pair non compare nella lista, prova a cercarlo nel pair modal con la sigla base (es. "BTC")
Balance mostra "—" su entrambi: dopo aver salvato le key, premi ⟳ Sync nel modal API per forzare il primo caricamento del balance
Proxy lento al primo accesso: i proxy su Render.com possono impiegare fino a 30 secondi per "svegliarsi" dopo un periodo di inattività. Se la prima richiesta è lenta, riprova dopo qualche secondo
💸 La fee stimata sembra troppo alta o troppo bassa
Le fee mostrate nel pannello sono stime basate sui valori configurati nella sezione Fee Exchange:

• Se hai un account VIP con fee ridotte, aggiorna i campi Taker/Maker nella sezione Fee Exchange — le modifiche si applicano immediatamente al calcolo size
• La fee stimata usa il round-trip (apertura + chiusura): Market/Ladder → taker×2, Limit → maker+taker
• Il valore mostrato come "Fee est." nel box di calcolo è approssimativo — le fee reali dipendono dall'esecuzione effettiva sull'exchange (slippage, partial fill, rebate VIP)
• Per azzerare le fee dal calcolo (ad es. per test), puoi impostare entrambi i valori a 0 nella sezione Fee Exchange