Confronto engine · v0.8.0 · benchmark su 100 strategie

PineForge vs PyneCore. Riproducibile, non retorico.

Ogni numero in questa pagina è generato da bash benchmarks/run_all.sh nella repo open-source pineforge-engine, sullo stesso feed Binance ETH/USDT 15 minuti da 53.930 barre. Riproducibile in ~5 minuti da un clone pulito, zero chiamate ad API esterne.
Fianco a fianco

Cosa ti dà davvero ogni engine.

CapacitàPineForgeTradingViewPyneCore
Backtest riproducibili bit per bit
Runtime compilato nativo
251/252 parità stretta con TV
Vendere strategie come binari compilati
Licenze seller a scadenza
Licenze seller vincolate alla macchina
Runtime open-source auditabile
Eseguire sui tuoi dati, sulla tua macchina
Riproducibilità da audit per la compliance
Integrazioni broker live native
Grado di match su 100 strategie

Quante delle 100 strategie raggiungono il tier eccellente contro TradingView.

benchmark receipt
162xmedian
PF / PC
speed.md
2026-06-11
PF/PC set
99 strategies
PF/vbt set
65 strategies
hot loop
41,307 bars
vbt scope
replicas
sample
N=20
PineForge
C++ / GBench
median_ms
6.35 ms
throughput
6.5M bars/s
sweep
1K trials ~6.4s
6.35 ms
PyneCore
Python / subprocess
median_ms
1,100 ms
throughput
38k bars/s
sweep
1K trials ~18m
1,100 ms
vectorbt
Pandas / Numba replicas
median_ms
71.2 ms
throughput
580k bars/s
sweep
1K trials ~71s
71.2 ms
PineTS
Node / indicators
median_ms
486 ms
throughput
85k bars/s
sweep
strategy: -
486 ms
C++ static lib
PineForge
100 / 100
median_ms6.35throughput6.5M bars/svs PyneCore162xvs vectorbt10.5x
Eccellente100Forte0Moderato0Debole0
Python (PyneSys cloud-compiled)
PyneCore
85 / 100
median_ms1,100throughput38k bars/ssample99 strategies
Eccellente85Forte2Moderato10Debole3
TypeScript (LuxAlgo)
PineTS
solo indicatori
canonical_ms486throughput85k bars/sscope10 indicators
Backtester di strategia-Indicatori per-bar10/10 indicatorimatch

I tier seguono la canonica parity sweep di PineForge: eccellente = tutte e quattro le dimensioni (delta del numero di trade, p90 di entry, p90 di exit, p90 di P&L) sotto soglia stretta e ≥95% di trade matchati; forte entro 5× la soglia stretta; moderato / debole / minimo a scendere. Le strategie che usano gli exit trail_* di TradingView ricevono il profilo soglia di produzione (tolleranze più ampie su exit + P&L).

Il delta di 3 strategie

Tre strategie spiegano tutta la differenza.

Su 85 delle 100 strategie di riferimento, PineForge e PyneCore raggiungono entrambi l'eccellenza. Il gap di 15 non è casuale — ogni divergenza cade nella stessa categoria: bracket exit, trailing stop o chiusure parziali di posizione. Il broker emulator di PyneCore diverge da TV qui; PineForge replica TV trade per trade.

06-liquidity-sweep
bracket exit
PineForge
eccellente (88 / 88)
PyneCore
moderato (91)
93 trade TV nella finestra. PineForge ne matcha 88 entro le tolleranze strette. PyneCore ne genera 91 — drift di +3 sul conteggio, più drift sul prezzo di uscita per gli exit fermati dal bracket.
07-scalping-strategy
trailing stop (soglie di produzione)
PineForge
eccellente (412 / 429)
PyneCore
moderato (412)
429 trade TV nella finestra. PineForge: 412 matchati, tutte e quattro le dimensioni di parità entro le soglie di produzione. PyneCore: stesso numero matchato, ma p90 sul prezzo di uscita fuori soglia — l'aritmetica trail_offset del broker emulator diverge da TV.
49-partial-exit-qty-percent
chiusura parziale (qty_percent)
PineForge
eccellente (683 / 725)
PyneCore
debole (2.671)
La divergenza più netta del corpus. 725 trade TV, PineForge ne matcha 683 in parità stretta. PyneCore genera 2.671 trade — 3,7× il numero corretto. Causa radice: strategy.close(qty_percent=…) in PyneCore divide ogni entry in sub-exit per percentuale invece di una singola chiusura parziale. Issue upstream aperta a questo commit.
Dove vince ciascun engine

Non nascondiamo i nostri buchi. Nemmeno loro dovrebbero.

SCEGLI PINEFORGE QUANDO

Ti serve determinismo riproducibile bit per bit (gate in CI, audit trail, claim di parità verso clienti paganti).
Ti serve semantica fedele a TV su bracket exit, trailing stop o chiusure parziali. Le tre strategie sopra non lasciano spazio a interpretazioni.
Ti serve la velocità di un compilato nativo per i parameter sweep (Optuna su migliaia di combinazioni di parametri su feed da 50k barre).
Più avanti vuoi una UI Studio hosted — i tab Code · Backtest · Optimize · Compare · Reports arrivano in Q4 2026.
Prima o poi vuoi vendere strategie compilate ad altri trader. L'architettura distribuzione cifrata + license server è pubblica nella repo dell'engine.

SCEGLI PYNECORE QUANDO

Ti serve forward-test o esecuzione live oggi. PineForge li rilascia Q3-Q4 2026; PyneCore ce li ha adesso.
Vuoi un percorso di esecuzione strategia interamente in Python (integrazione più profonda con NumPy/Pandas, iterazione Jupyter-native).
Sei tranquillo sui caveat di bracket/trail/partial-exit (85/100 strategie raggiungono comunque l'eccellenza).
L'open-source OSI puro end-to-end ti pesa più del source-available. PyneCore è OSI-licensed dall'inizio alla fine; l'engine di PineForge è Apache-2.0 ma il codegen è source-available (PolyForm Noncommercial, gratis per il trading personale) — non approvato OSI.
Sei un contributor pesante e vuoi un progetto dove le tue PR atterrano direttamente sul percorso di esecuzione strategia.

Non fidarti della tabella. Riproducila .

Ogni numero in questa pagina è generato dalla benchmark suite pubblica. Niente config nascosta, niente API key, niente trucchi con snapshot committati. ~5 minuti da un clone pulito.

# 1. Clona engine open-source + benchmark suite
git clone https://github.com/pineforge-4pass/pineforge-engine
cd pineforge-engine

# 2. Scarica gli OHLCV tracciati con LFS (2,3 MB)
git lfs install && git lfs pull

# 3. Lancia lo sweep completo a tre engine (~5 min)
bash benchmarks/run_all.sh

# 4. Leggi i risultati — la stessa tabella di questa pagina
cat benchmarks/results/summary.md