Comparação de engines · v0.8.0 · benchmark de 100 estratégias

PineForge vs PyneCore. Reproduzível, não retórico.

Cada número desta página é gerado por bash benchmarks/run_all.sh no repo open-source pineforge-engine, contra o mesmo feed Binance ETH/USDT de 15 minutos com 53.930 barras. Reproduza em ~5 minutos a partir de um clone limpo, zero chamadas a APIs externas.
Lado a lado

O que cada engine entrega de verdade.

CapacidadePineForgeTradingViewPyneCore
Backtests reproduzíveis byte a byte
Runtime nativo compilado
251/252 paridade estrita TV
Vender estratégias como binários compilados
Licenças de vendedor com prazo
Licenças de vendedor presas à máquina
Runtime open-source que dá pra auditar
Roda nos seus dados, na sua máquina
Reprodutibilidade nível auditoria pra compliance
Integrações nativas com brokers live
Grau de match em 100 estratégias

Quantas das 100 estratégias atingem o tier excelente contra o 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
Excelente100Forte0Moderado0Fraco0
Python (PyneSys cloud-compiled)
PyneCore
85 / 100
median_ms1,100throughput38k bars/ssample99 strategies
Excelente85Forte2Moderado10Fraco3
TypeScript (LuxAlgo)
PineTS
só indicadores
canonical_ms486throughput85k bars/sscope10 indicators
Backtester de estratégia-Indicadores barra a barra10/10 indicadoresmatch

Os tiers seguem a sweep canônica de paridade do PineForge: excelente = todas as quatro dimensões (delta de count, p90 de entry, p90 de exit, p90 de P&L) dentro dos thresholds estritos e ≥95% dos trades batendo; forte dentro de 5× o estrito; moderado / fraco / mínimo caem a partir daí. Estratégias que usam trail_* do TradingView usam o perfil de threshold de produção (tolerâncias de exit + P&L mais frouxas).

O delta das 3 estratégias

Três estratégias respondem por toda a diferença.

Em 85 das 100 estratégias de referência, PineForge e PyneCore atingem excelente. O gap de 15 não é aleatório — toda divergência cai na mesma categoria: bracket exits, trailing stops ou fechamentos parciais de posição. O broker emulator do PyneCore diverge do TV aqui; o PineForge espelha o TV trade a trade.

06-liquidity-sweep
bracket exit
PineForge
excelente (88 / 88)
PyneCore
moderado (91)
93 trades do TV na janela. PineForge bate 88 dentro das tolerâncias estritas. PyneCore gera 91 trades — drift de +3 no count, mais drift de preço de saída em exits via bracket.
07-scalping-strategy
trailing stop (thresholds de produção)
PineForge
excelente (412 / 429)
PyneCore
moderado (412)
429 trades do TV na janela. PineForge: 412 batem, todas as quatro dimensões dentro do threshold de produção. PyneCore: mesmo count batendo, mas p90 de preço de saída fora do threshold — a aritmética de trail_offset do broker emulator diverge do TV.
49-partial-exit-qty-percent
fechamento parcial (qty_percent)
PineForge
excelente (683 / 725)
PyneCore
fraco (2.671)
A divergência mais clara do corpus. 725 trades do TV, PineForge bate 683 em paridade estrita. PyneCore gera 2.671 trades — 3,7× a contagem correta. Causa raiz: strategy.close(qty_percent=…) no PyneCore divide cada entrada em sub-saídas por percentual em vez de um único partial close. Issue upstream aberta nesse commit.
Onde cada engine ganha

A gente não esconde nossos gaps. Eles também não deveriam.

ESCOLHA PINEFORGE QUANDO

Você precisa de determinismo byte a byte (gates de CI, audit trails, claims de paridade pagos pra clientes).
Você precisa de semântica fiel ao TV em bracket exits, trailing stops ou partial closes. As três estratégias acima são inequívocas nisso.
Você precisa de velocidade de C++ nativo pra parameter sweeps (Optuna em milhares de combinações de parâmetros sobre feeds de 50k barras).
Você quer um Studio hospedado depois — abas Code · Backtest · Optimize · Compare · Reports chegam no Q4 2026.
Você eventualmente quer vender estratégias compiladas pra outros traders. O design de distribuição criptografada + servidor de licença está no repo público do engine.

ESCOLHA PYNECORE QUANDO

Você precisa de forward-test ou execução live em broker hoje. PineForge entrega isso entre Q3 e Q4 2026; PyneCore já tem.
Você precisa de um caminho de execução totalmente em Python (integração mais profunda com tooling de backtest em NumPy/Pandas, iteração nativa em Jupyter).
Você fica tranquilo com as ressalvas de bracket/trail/partial-exit (85/100 estratégias ainda atingem excelente mesmo assim).
Open-source OSI de ponta a ponta importa mais pra você do que source-available. O PyneCore é licenciado em OSI de cabo a rabo; o engine do PineForge é Apache-2.0, mas o codegen é source-available (PolyForm Noncommercial, grátis pra uso pessoal de trading) — não é aprovado pela OSI.
Você é contribuidor pesado e quer um projeto onde seus PRs caem direto no caminho de execução de estratégia.

Não confie na tabela. Reproduza .

Cada número desta página é gerado pela suíte pública de benchmark. Sem config escondida, sem API keys, sem truques de snapshot commitado. ~5 minutos a partir de um clone limpo.

# 1. Clona o engine open-source + a suíte de benchmark
git clone https://github.com/pineforge-4pass/pineforge-engine
cd pineforge-engine

# 2. Puxa o OHLCV trackeado em LFS (2,3 MB)
git lfs install && git lfs pull

# 3. Roda a sweep completa nos três engines (~5 min)
bash benchmarks/run_all.sh

# 4. Lê os resultados — mesma tabela que está nesta página
cat benchmarks/results/summary.md