backtester
Modes de sizing
Comment la taille de position est déterminée dans les backtests — fixe, pourcentage d'equity, basé sur ATR.
Le backtester offre trois modes de sizing. Choisissez-en un dans le
panneau Strategy ; les scripts peuvent override par appel via
buy(qty: ...).
Fixe
qty = constant // p. ex. buy(qty: 100)
Le plus simple. Utile quand vous testez la logique d'entrée/sortie sans vous soucier du sizing.
Pourcentage d'equity
qty = floor(equity × pct / price)
Compounde gains et pertes. À utiliser pour mesurer comment une
stratégie se comporte avec une dynamique réaliste de courbe d'equity.
Défaut pct = 5%.
Basé sur ATR (équivalent en risque)
qty = floor(risk_pct × equity / (atr(14) × atr_multiplier))
Dimensionne chaque position pour que le risque en dollars jusqu'à votre stop soit constant. Le mode de référence pour les systèmes trend-following où l'ATR scale avec la volatilité.
let size = atr_position(risk_pct: 1.0, atr: atr(14))
buy(qty: size)
Contraintes maximales
Les trois respectent :
- Position maximale (Profil → Backtester → Max position).
- Positions concurrentes maximales (défaut 5).
- Equity disponible — les ordres qui dépasseraient le buying power
sont refusés (ou exécutés partiellement si
partial_fill_on_margin = true).
Scale in / out
buy(qty: size, scale: 0.5) // ajoute la moitié à la position existante
sell(qty: size * 0.5) // vend la moitié
Les scale-ins compoundent à l'entrée moyenne de la position. Les scale-outs réalisent le P&L proportionnellement.