BEQI: toolkit open source per l’audit dell’esecuzione dei broker Forex Maggio 4, 2026 – Posted in: Arbitrage Software
BEQI: un toolkit open source per verificare la qualità di esecuzione di qualsiasi broker Forex
I broker Forex retail non pubblicano dati sulla qualità di esecuzione. Non esiste un benchmark pubblico per latenza di matching, asimmetria dello slippage, allargamento dello spread o tempo di attesa last-look. Noi lo stiamo cambiando. BEQI — il Broker Execution Quality Index — è una metodologia aperta, un toolkit Python aperto e un foglio di calcolo pubblico a cui chiunque può contribuire. Misura il tuo broker in 30 minuti; i dati si accumulano in un benchmark.
Perché prima non esisteva un audit pubblico dei broker
L’esecuzione nel Forex retail è il livello più opaco dell’intero stack di trading. Gli spread sono pubblicizzati. Le commissioni sono pubblicate. Tutto ciò che accade tra l’invio dell’ordine e il fill confermato — latenza di matching, simmetria dello slippage, attesa last-look, frequenza dei requote, allargamento dello spread nei momenti del segnale — è invisibile al trader e non viene pubblicato dal broker. I backtest delle strategie presuppongono fill a latenza zero (un problema che abbiamo documentato in dettaglio in Perché i backtest di arbitraggio di latenza non sopravvivono in produzione). Le recensioni dei broker valutano UX e prelievi. Nessuno misura le variabili che decidono davvero se una strategia sopravvive in produzione.
BEQI risolve un problema specifico: non esistono una metodologia pubblica, un toolkit condiviso né un dataset di benchmark per la qualità di esecuzione nel Forex retail. In BJF Trading Group misuriamo questi aspetti internamente da anni per integrare il supporto ai diversi “dialetti” dei broker in SharpTrader Pro e SharpTrader Optimizer. Ora rendiamo open source la metodologia e il codice.
L’obiettivo non è pubblicare una classifica con i nomi dei broker (sarebbe un campo minato legale e comprometterebbe l’integrità dei dati). L’obiettivo è dare a ogni trader, quant e ricercatore di tecnologie per broker lo stesso metodo standardizzato di misura, gli stessi script Python da eseguire e un luogo pubblico dove depositare risultati anonimizzati. Nel corso dei mesi il foglio di calcolo diventa un benchmark. Chiunque può replicare la metodologia, contestarla o ampliarla.
La tesi di BEQI in una frase
Se 10.000 trader misurano la qualità di esecuzione del proprio broker con la stessa metodologia aperta, il risultato è un benchmark pubblico che nessun singolo broker può negare, nessun sito di recensioni può falsificare e che ogni sviluppatore di strategie può usare per allocare capitale con cognizione di causa.
Le cinque dimensioni BEQI
La qualità di esecuzione non è un singolo numero. BEQI la scompone in cinque dimensioni ortogonali, ciascuna misurabile in modo indipendente da un estratto conto di trading (e, per due di esse, da un flusso di tick abbinato all’estratto conto):
| Dimensione BEQI | Cosa misura | Unità | Fonte | Meglio se… |
|---|---|---|---|---|
| 1. Latenza di matching | Tempo mediano dall’invio dell’ordine al fill confermato | millisecondi | Timestamp dell’estratto conto + log dei tempi di invio | Più bassa |
| 2. Asimmetria dello slippage | Rapporto tra fill con slippage negativo e fill con slippage positivo | rapporto (1.0 = simmetrico, >1.0 = a sfavore del trader) | Estratto conto: prezzo richiesto vs prezzo eseguito | Più vicino a 1.0 |
| 3. Fattore di allargamento dello spread | Espansione dello spread nei momenti del segnale rispetto alla baseline | moltiplicatore (1.0 = nessun allargamento, 3.0 = allargamento 3x) | Flusso di tick attorno ai timestamp degli ordini | Più vicino a 1.0 |
| 4. Tempo di attesa last-look | Ritardo mediano tra timestamp di matching e conferma | millisecondi | Log FIX o estratto conto esteso | Più basso / zero |
| 5. Tasso di requote | Requote ogni 100 ordini | numero ogni 100 | Eventi di requote nell’estratto conto | Più basso / zero |
Ogni dimensione ha un significato autonomo. Un broker può avere una bassa latenza di matching ma un’elevata asimmetria dello slippage, o viceversa — le combinazioni raccontano storie diverse su come si comporta realmente il broker. Il toolkit riporta ogni dimensione separatamente e, alla fine, un punteggio BEQI composito (ponderato).
Come eseguire l’audit sul tuo broker (30 minuti)
Ti servono tre cose: (a) un estratto conto di trading con almeno 200 fill che copra almeno una settimana di trading, (b) Python 3.10+ su qualsiasi macchina, (c) 30 minuti. Al resto pensa il toolkit.
Passo 1 — Esporta il tuo estratto conto
Il toolkit accetta tre formati di input:
- Estratto conto HTML di un terminale comune (salvato con la funzione “salva come report” della tua piattaforma di trading retail) — la maggior parte dei trader retail userà questo
- Log FIX (dump di messaggi FIX 4.4) — per i trader che operano tramite un bridge FIX o una connessione istituzionale
- CSV con le colonne
order_id, send_time, fill_time, requested_price, filled_price, side, volume— per tutti gli altri, inclusi i log personalizzati
Se la tua piattaforma non espone il tempo di invio (il momento in cui la tua strategia ha deciso di inviare l’ordine), puoi comunque misurare le dimensioni 2 e 5 (asimmetria dello slippage e tasso di requote) da un estratto conto di base. Le dimensioni 1, 3 e 4 richiedono un log più dettagliato.
Passo 2 — Installa ed esegui
$ cd forex-broker-audit-toolkit
$ pip install -r requirements.txt
$ python beqi.py –input my_statement.html –tick-data eurusd_ticks.csv –output report.json
Il toolkit rileva automaticamente il formato di input. beqi.py smista i dati agli analizzatori per ciascuna dimensione, stampa un riepilogo e scrive un report JSON che puoi inviare al foglio di calcolo pubblico.
Passo 3 — Esamina il report
Il report include i punteggi delle cinque dimensioni, il BEQI composito, la diagnostica sulla dimensione del campione (N più basso = confidenza più bassa) e una classificazione in tier (da 1 a 4, vedi sotto). Eseguilo su più dati per restringere gli intervalli di confidenza.
Anonimato per impostazione predefinita
Il toolkit non vede mai il numero del tuo conto, il saldo, il P&L o le dimensioni delle posizioni. Utilizza solo timestamp, prezzi, differenze tra prezzo richiesto ed eseguito e tipi di evento. Il JSON di output contiene i punteggi BEQI, la dimensione del campione, le coppie di valute coperte e il periodo di tempo — nulla di identificativo. Puoi inviarlo al foglio di calcolo pubblico in forma anonima.
Come leggere i risultati: i quattro tier BEQI
Sulla base di misurazioni interne sui broker supportati da SharpTrader Pro, ecco i tier empirici. Sono baseline di partenza — il foglio di calcolo pubblico le affinerà nel tempo.
Tier 1 · ECN istituzionale
BEQI 85–100
- Latenza di matching: 5–15 ms
- Asimmetria dello slippage: 1.0–1.05
- Allargamento dello spread: 1.0–1.3x
- Last-look: 0–5 ms
- Tasso di requote: <0.5 / 100
Tier 2 · Retail veloce / bridge veloce
BEQI 65–85
- Latenza di matching: 30–80 ms
- Asimmetria dello slippage: 1.05–1.20
- Allargamento dello spread: 1.3–2.0x
- Last-look: 50–150 ms
- Tasso di requote: 0.5–2 / 100
Tier 3 · Retail standard
BEQI 40–65
- Latenza di matching: 80–200 ms
- Asimmetria dello slippage: 1.20–1.50
- Allargamento dello spread: 2.0–3.5x
- Last-look: 200–500 ms
- Tasso di requote: 2–5 / 100
Tier 4 · Problematico
BEQI 0–40
- Latenza di matching: 200+ ms
- Asimmetria dello slippage: 1.50+
- Allargamento dello spread: 3.5x+
- Last-look: 500+ ms
- Tasso di requote: 5+ / 100
La classificazione in tier è importante perché la stessa strategia di trading produrrà risultati live molto diversi da un tier all’altro. Una strategia di arbitraggio di latenza redditizia su un broker Tier 1 crolla su un Tier 3. Una strategia trend-following che mantiene le posizioni per ore è più o meno indifferente tra Tier 1 e Tier 3, ma soffre visibilmente su un Tier 4. Conoscere il tier del tuo broker prima di impegnare capitale è tutto ciò che conta.
Il foglio di calcolo pubblico BEQI
Il foglio di calcolo è l’asset a lungo termine. Chiunque può contribuire con una riga per ogni audit. Ogni riga contiene i punteggi delle cinque dimensioni, il composito, la dimensione del campione, le coppie di valute coperte, il periodo di tempo e (facoltativamente, su base volontaria) il nome del broker. Ci aspettiamo — e accogliamo con favore — invii anonimi in cui il broker è lasciato vuoto; nel tempo, anche questi producono utili distribuzioni aggregate della qualità di esecuzione nel settore Forex retail.
Apri in una nuova scheda →
Per inviare: esegui il toolkit, copia l’output JSON e incollalo nel modulo di invio (link all’interno del foglio). Le nuove righe vengono verificate per plausibilità e accettate entro 24 ore. Non modifichiamo i punteggi inviati; potremmo contrassegnare come a bassa confidenza le righe con un campione di <100 fill.
Dettagli della metodologia (per revisori e chi vuole replicarla)
La specifica matematica completa si trova in METHODOLOGY.md nel repository, ma le decisioni portanti sono:
1. Latenza di matching
Mediana (non media) di fill_time − send_time. Usiamo la mediana perché le distribuzioni della latenza di matching sono asimmetriche a destra a causa di occasionali outlier di 1–5 secondi (reinstradamento di rete, pause di GC del broker) che non rappresentano l’esecuzione tipica. Riportiamo separatamente mediana, p90 e p99 affinché il lettore possa vedere la coda.
2. Asimmetria dello slippage
Per ogni fill, lo slippage ha un segno: positivo significa che il trader ha ottenuto un prezzo migliore di quello richiesto, negativo significa peggiore. Asimmetria = (numero di eventi di slippage negativo) / (numero di eventi di slippage positivo). Un broker simmetrico e neutrale ottiene ~1.0. Sopra 1.2 indica che il matching del broker è sbilanciato a sfavore del trader — per regole di instradamento, last-look selettivo o un motore di slippage asimmetrico.
3. Fattore di allargamento dello spread
Per ogni timestamp di ordine misuriamo lo spread in una finestra di 50 ms centrata sull’ordine rispetto allo spread nella finestra baseline di 5 minuti centrata sulla stessa ora del giorno nella settimana precedente. Il rapporto è il fattore di allargamento. Questo richiede un flusso di tick che copra il periodo dell’audit; il toolkit accetta i CSV di BJF Feed e il formato standard di storico tick delle piattaforme comuni.
4. Tempo di attesa last-look
Misurabile solo da un log FIX o da un estratto conto esteso che esponga sia lo stato “matched ma in sospeso” sia lo stato confermato. Gli estratti conto HTML retail standard di solito non lo espongono; in tal caso il toolkit riporta null per questa dimensione e il BEQI composito viene calcolato dalle restanti quattro. Il last-look è una delle varie tecniche di interferenza sull’esecuzione lato broker — consulta il nostro approfondimento su i sette plugin anti-arbitraggio dei broker per la categoria più ampia.
5. Tasso di requote
Calcolato dagli eventi di requote espliciti nell’estratto conto. Se l’estratto conto non segnala i requote (alcuni terminali non lo fanno), il toolkit li deduce rilevando triplette invio/annullamento/reinvio entro una finestra di 200 ms.
BEQI composito
Ogni dimensione viene mappata su un sotto-punteggio 0–100 usando le definizioni dei tier sopra riportate. Il composito è una media geometrica ponderata: BEQI = (L^0.30 × A^0.25 × W^0.20 × H^0.15 × R^0.10) dove L, A, W, H, R sono i cinque sotto-punteggi. Usiamo la media geometrica anziché quella aritmetica affinché un punteggio catastrofico su una singola dimensione (ad es. last-look = 1500ms) non possa essere nascosto da buoni punteggi sulle altre. I pesi sono discutibili e vengono pubblicati esplicitamente, così i revisori possono ricalcolare con pesi diversi a partire dai sotto-punteggi grezzi.
Limitazioni e avvertenze
- Dipendenza dalla dimensione del campione. Un audit su 50 fill è un’impressione; un audit su 500 fill è una misurazione; un audit su 5.000 fill è un benchmark. Il toolkit riporta gli intervalli di confidenza legati alla dimensione del campione; i lettori dovrebbero pesare di conseguenza gli invii con N basso.
- Variabilità in base all’orario. Lo stesso broker può registrare risultati da Tier 2 durante l’apertura di Londra e da Tier 3 durante il rollover asiatico. Gli audit dovrebbero specificare la finestra temporale.
- Differenze a livello di conto. I broker possono applicare logiche di instradamento diverse per singolo conto in base a profilo, saldo e schema di trading. L’audit di un trader potrebbe non essere generalizzabile a quello di un altro sullo stesso broker nominale. Per indicazioni sulla scelta del broker indipendenti dall’audit di esecuzione, consulta la nostra guida ai broker per l’arbitraggio Forex.
- L’asimmetria non prova la malafede. Un’asimmetria di 1.4 è statisticamente evidente, ma la causa potrebbe essere l’instradamento attraverso pool di LP asimmetrici anziché una manipolazione attiva. Il toolkit misura il comportamento, non l’intenzione.
- La metodologia sbaglierà su qualcosa. Per questo è open source. Apri issue, invia PR, proponi pesi alternativi, replica i test su un broker che non abbiamo coperto. La metodologia v2 incorporerà le critiche più solide.
Roadmap
| Versione | Cosa viene rilasciato | Tempistica |
|---|---|---|
| v1.0 | Metodologia + toolkit Python + foglio di calcolo pubblico (sei qui) | Q2 2026 |
| v1.1 | Miglioramenti del parser per log FIX; rilevamento del last-look da schemi euristici in assenza di timestamp espliciti | Q3 2026 |
| v1.2 | Dimensione di segnalazione di pattern AI (sesta dimensione): criteri di rilevamento per comportamenti di throttling adattivo | Q3 2026 |
| v2.0 | Dashboard pubblica live su beqi.bjftradinggroup.com; distribuzioni aggregate degli invii; aggiornamento della metodologia basato sul feedback della community |
Q4 2026 |
Domande frequenti
No. BEQI è una metodologia aperta e un dataset pubblico di audit anonimizzati. Scegliamo deliberatamente di non pubblicare classifiche dei broker basate su questo dataset perché (a) comprometterebbe l’integrità dei dati — i broker si ottimizzerebbero per il segnale dell’audit anziché per la qualità di esecuzione, e (b) è un campo minato legale. Chiunque voglia pubblicare una classifica è libero di farlo usando i dati aperti; noi pubblichiamo lo strumento, la metodologia e le misurazioni.
La maggior parte dei siti di recensioni valuta UX, velocità dei prelievi, assistenza clienti e spread pubblicizzati — variabili di superficie. Nessuno di essi misura latenza di matching, asimmetria dello slippage o attesa last-look. BEQI colma proprio questa lacuna: è una misurazione della qualità di esecuzione, non una recensione generica del broker.
Il toolkit gestisce questa situazione senza problemi. Le dimensioni che non possono essere misurate dal tuo input vengono riportate come null anziché zero, e il BEQI composito viene calcolato dalle dimensioni che SONO misurabili, con pesi rinormalizzati. Il JSON di output indica esplicitamente quali dimensioni sono state saltate e perché, così il risultato è onesto sulla propria copertura.
Gli audit su demo sono utili ma non equivalenti. Molti broker instradano i conti demo attraverso il motore di matching istituzionale (niente last-look, niente allargamento dello spread, latenza bassa) mentre i conti live passano dal motore retail. Esegui sempre l’audit su un conto live con volumi reali (piccoli) per misurare il comportamento reale. Il toolkit accetta dati demo e contrassegna il risultato come “demo” nell’output JSON.
200 fill sono il minimo pratico per un segnale utilizzabile. Con 500–1.000 fill gli intervalli di confidenza si restringono abbastanza da poter assegnare il tier con sicurezza. Oltre i 5.000 fill, l’audit diventa una misurazione di livello scientifico. Puoi raggiungere 200 fill in una settimana eseguendo 30–40 piccoli ordini a mercato al giorno (non serve farlo con un capitale significativo).
Nella sua forma attuale la metodologia è specifica per il Forex — l’allargamento dello spread e il last-look sono concetti del Forex, non degli exchange. Un indice equivalente per le cripto richiederebbe dimensioni diverse (ad es. profondità dell’order book al prezzo di esecuzione, slippage da impatto di mercato, latenza dei prelievi). Potremmo pubblicare in futuro un indice crypto-CEQI. Per ora, consulta la nostra metodologia di arbitraggio cripto — metriche diverse, stessa filosofia di dati aperti. Il toolkit Forex non produrrà risultati significativi sui dati cripto.
Strettamente. SharpTrader Optimizer esegue il backtest delle strategie con tempo di esecuzione configurabile e slippage risolto a livello di tick — in altre parole, le variabili che BEQI misura sul tuo broker live. Se il tuo broker ottiene un punteggio da Tier 3 (latenza di matching 80–200 ms), dovresti configurare l’Optimizer con tempo di esecuzione = 100–200 ms prima di decidere che la strategia è valida. BEQI misura il broker; l’Optimizer simula la strategia nelle condizioni reali di quel broker. Insieme ti dicono se fare trading. La stessa logica vale se operi più in generale con strategie di arbitraggio Forex — misura prima il broker, poi dimensiona la strategia in base al suo profilo di esecuzione effettivo.
Domanda legittima. Abbiamo un interesse commerciale a che l’arbitraggio e il backtesting attento all’esecuzione vengano presi sul serio, e BEQI ovviamente serve a questo. Non abbiamo un interesse commerciale a che un particolare broker ottenga punteggi buoni o cattivi — SharpTrader Pro supporta broker di tutti e quattro i tier e i nostri clienti scelgono autonomamente la sede di esecuzione. Pubblichiamo la metodologia in open source proprio perché tu non debba fidarti sulla parola: il codice è verificabile, le misurazioni sono riproducibili e qualsiasi ricercatore può replicare o contraddire i nostri numeri interni.
In cinque modi: (1) esegui il toolkit sul tuo broker e invia il JSON al foglio di calcolo pubblico; (2) apri issue sul repository GitHub quando il parser non funziona con il formato del tuo estratto conto; (3) invia pull request con nuovi parser per formati di estratto conto; (4) proponi affinamenti della metodologia tramite le discussioni; (5) scrivi una tua analisi usando il dataset aperto e inserisci un link a noi — metteremo in evidenza i contributi esterni più validi nella nostra newsletter.
Gli invii al foglio di calcolo pubblico sono anonimi per impostazione predefinita — il broker è facoltativo, l’ID del conto non viene mai raccolto e l’output JSON non contiene informazioni identificative. Non abbiamo notizia di broker che si siano vendicati per una misurazione della qualità di esecuzione (sarebbe difficile farlo senza ammettere che l’audit era accurato), ma l’opzione di anonimato esiste proprio per eliminare questo rischio.
Verifica il tuo broker oggi
30 minuti. Codice open source. Metodologia pubblica. Invio anonimo. Il benchmark esiste solo se i trader contribuiscono — inizia dal tuo.