Lascia l'email. Ti rispondiamo con la tua API key gratuita per il codegen e con la quickstart da 2 minuti qui sopra. Una mail al lancio e qualche aggiornamento sporadico — niente di più.
Studio hosted in arrivo Q4 2026. Da oggi puoi self-hostare con la CLI open-source.
Lascia la tua email nella waitlist qui sotto. La key arriva in pochi secondi, pronta per chiamare l'API di codegen.
curl -X POST https://codegen.pineforge.dev/transpile \ -H "Authorization: Bearer $PINEFORGE_KEY" \ --data-binary @strategy.pine > strategy.cpp
docker run --rm \ -v $(pwd)/strategy.cpp:/in/strategy.cpp \ -v $(pwd)/ohlcv.csv:/in/ohlcv.csv \ ghcr.io/fullpass-4pass/pineforge-engine:latest > report.json
//@version=6 strategy("EMA Cross", overlay=true, initial_capital=10000) length = input.int(14, "Length") sig = ta.ema(close, length) if ta.crossover(sig, sig[1]) strategy.entry("long", strategy.long) if ta.crossunder(sig, sig[1]) strategy.close("long")
class GeneratedStrategy : public BacktestEngine { ta::EMA _ta_ema_1{14}; Series<double> _s_sig{500}; void on_bar(const Bar& bar) override { int length = get_input_int("Length", 14); double sig = _ta_ema_1.compute(bar.close); _s_sig.push(sig); if (sig > _s_sig[1] && _s_sig[1] <= _s_sig[2]) strategy_entry("long", true); if (sig < _s_sig[1] && _s_sig[1] >= _s_sig[2]) strategy_close("long"); } };
Stai costruendo un marketplace di strategie? Pitch per i seller →
Gestisci un desk o un piccolo fondo? Pitch istituzionale →
Il nostro server Model Context Protocol fa da ponte tra il tuo agente AI, l'API di codegen e il tuo Docker locale. Parla alla tua strategia in linguaggio naturale. Il backtest resta locale — solo il sorgente Pine attraversa la rete.
npx -y @pineforge/codegen-mcp
Cinque assi che contano per chi vuole spedire una strategia come prodotto. PineForge è costruito attorno a tutti e cinque.
Assi scelti per testare la tesi di PineForge. Punteggi da doc pubblici e benchmark. Metodologia →
| Engine | Velocità nativa | Privacy del sorgente | Controllo licenze | Audit OSS | Libertà sui dati |
|---|---|---|---|---|---|
| PineForge | 5/5 | 4/5 | 5/5 | 3/5 | 5/5 |
| TradingView | 2/5 | 2/5 | 1/5 | 0/5 | 2/5 |
| MQL5 Market | 4/5 | 5/5 | 3/5 | 0/5 | 3/5 |
| QuantConnect | 3/5 | 1/5 | 1/5 | 3/5 | 4/5 |
| Backtrader | 1/5 | 0/5 | 0/5 | 5/5 | 5/5 |
def objective(report): return 0.6 * report.sharpe - 0.3 * report.max_dd + 0.1 * report.profit_factor
Primitive di disegno, alert e semantica live-tick sono fuori scope per scelta — PineForge gira offline. Tutto ciò che determina un trade è dentro.
Copertura completa funzione per funzione| ta.* — 59 funzioni + 8 series + helper pivot (67 classi) | 68/68 | 100% |
| math.* — deterministico + rolling | core | supportato |
| str.* — format · split · regex · tostring | core | supportato |
| strategy.* — ordini · accessor · risk gate | completo | 100% |
| array⟨T⟩ · map⟨K,V⟩ · UDT | via codegen | supportato |
| matrix⟨T⟩ — basato su Eigen | 50+ ops | supportato |
| request.security — ratio · calendar · lower-TF | core | supportato |
| disegno e alert | — | fuori scope |
Ogni release è validata trade per trade contro gli export CSV di TradingView — 167 strategie di riferimento, corpus completo open-source.
06-liquidity-sweep, 07-scalping-strategy, 49-partial-exit-qty-percent) cade sempre sulla semantica di bracket / trail / partial-exit, dove il broker emulator di PyneCore diverge da TV. Vedi il dettaglio per strategia →feed_bar() in streaming. Robustezza scoring multi-finestra.È legale? Come si confronta con PyneCore? E se PineForge chiude? Otto risposte brevi.
Una mail al lancio. Qualche nota di progresso. Niente maratona di upsell.