backtester
Modos de sizing
Cómo se determina el tamaño de posición en backtests — fijo, porcentaje de equity, basado en ATR.
El backtester ofrece tres modos de sizing. Elige uno en el panel
Strategy; los scripts pueden override por llamada vía buy(qty: ...).
Fijo
qty = constant // p. ej. buy(qty: 100)
El más simple. Útil cuando estás probando lógica de entry/exit sin preocuparte del tamaño.
Porcentaje de equity
qty = floor(equity × pct / price)
Compounded ganancias y pérdidas. Úsalo para medir cómo se comporta una
estrategia con dinámica realista de curva de equity. Default
pct = 5%.
Basado en ATR (risk-equivalente)
qty = floor(risk_pct × equity / (atr(14) × atr_multiplier))
Dimensiona cada posición para que el riesgo en dólares hasta tu stop sea constante. El modo de cabecera para sistemas trend-following donde ATR escala con volatilidad.
let size = atr_position(risk_pct: 1.0, atr: atr(14))
buy(qty: size)
Restricciones máximas
Los tres respetan:
- Posición máxima (Perfil → Backtester → Max position).
- Posiciones concurrentes máximas (default 5).
- Equity disponible — las órdenes que excederían buying power se
rechazan (o llenan parcial si
partial_fill_on_margin = true).
Scale in / out
buy(qty: size, scale: 0.5) // añade la mitad a la posición existente
sell(qty: size * 0.5) // vende la mitad
Los scale-ins compounded al entry promedio de la posición. Los scale-outs realizan P&L proporcionalmente.