Simulation et recherche
Paper, Shadow et backtesting : comparer les entrées avant le résultat
Comprendre ce que teste chaque simulation Citrine, comment les frais et le funding (financement des contrats à terme) affectent les comparaisons, et pourquoi les résultats hypothétiques diffèrent de l'exécution réelle.
Dans cet article
Trois simulations, trois questions
Une session Paper, une session Shadow et un backtest historique peuvent tous afficher un résultat en dollars. Cette unité commune ne rend pas les expériences équivalentes. Le point de départ utile est la question que chacun peut vous aider à investiguer.
- Paper : comment une session simulée se comporte‑t‑elle avec un solde et une allocation que vous choisissez tout en suivant les données de marché actuelles ? Elle utilise des frais de simulation standard et ne nécessite pas de clé API ni d'abonnement.
- Shadow : comment se comporte une session simulée consciente du compte ? Elle démarre à partir d'entrées de compte authentifiées, y compris les fonds basés sur le compte et le contexte de frais en pourcentage, puis exécute sa propre simulation. Ce n'est pas un miroir de compte en direct qui passe des ordres.
- Backtesting : ce qui s'est passé sous des données et des hypothèses historiques spécifiées ? Il rejoue des périodes archivées éligibles plutôt que d'attendre la prochaine session en temps réel. Il rejoue l'histoire, plutôt que de gérer un compte en direct.
Aucun de ceux‑ci n'envoie d'ordres réels. Le comparaison des modes publiée explique leurs exigences ; méthodologie du backtesting décrit ce que la simulation historique inclut et omet. Une simulation peut révéler des différences qui valent la peine d'être étudiées sans prouver les exécutions qu'un compte réel aurait reçues.

Créez une feuille de calcul de comparaison
Avant de comparer deux soldes finaux, notez les entrées de l'expérience. Utilisez la même feuille de calcul pour un backtest enregistré et pour une session simulée en avant :
- Produit et période : contrat, direction, heure de début et de fin, et fuseau horaire. Une date calendaire sans fuseau horaire peut masquer une frontière différente.
- Fonds et allocation : solde initial et budget de marge partagé. Plus de fonds de départ peut modifier les quantités ; ce n’est pas seulement un dénominateur plus grand pour les mêmes trades.
- Exécution et coûts : quantités, heures et prix d’entrée/sortie, source des frais, frais par contrat et hypothèses de slippage.
- Financement : crédits ou débits inclus, si les valeurs sont enregistrées ou estimées, et les lacunes de couverture.
- Comptabilité : trades clôturés versus exposition ouverte, et si le résultat affiché inclut déjà certains coûts.
Conserver les exports et notes d’origine. Si une divergence disparaît seulement après avoir modifié plusieurs entrées, il devient impossible d’affirmer quel changement l’explique. Corriger une dimension de comparaison à la fois.
Comptez chaque coût une seule fois.
Les simulations historiques de Citrine modélisent les frais d’entrée et de sortie, les frais configurés par contrat et la slippage. Elles utilisent par défaut des frais standard ; un instantané en cache des pourcentages de frais d’un compte éligible peut être utilisé quand disponible. Un instantané en cache ne reconstitue pas chaque prélèvement qu’un compte a payé à chaque date historique.
Considérez cet exemple arithmétique inventé, pas un résultat de performance Citrine ni une formule d’écran universelle :
- Gain brut des trades clôturés
- +$18
- Frais de trading déjà inclus dans le résultat net
- -$5
- Résultat net des trades clôturés
- +$13
- Débit de financement inclus séparément
- -$2
- Effet combiné dans cet exemple
- +$11
Partir du résultat net de $13 et retrancher à nouveau les $5 de frais donnerait $6 après financement, ce qui compte la même commission deux fois. À l’inverse, ignorer le débit de financement rapporterait $13 pour un effet qui vaut $11 dans cet exemple. Établir d’abord la base du résultat ; puis rapprocher les composants séparés.
La notice discussion sur la réconciliation des coûts fait la même distinction : le financement peut être un composant comptable séparé, et un changement de solde n’égalera pas forcément le total des trades clôturés d’une session. Un relevé d’échange, une exportation de simulation et l’écran de compte répondent à des questions comptables différentes.
Vérifiez la couverture avant d'interpréter un zéro.
Un montant de financement vérifié à zéro et des données de financement indisponibles ne sont pas interchangeables. Les exécutions historiques utilisent les financements enregistrés éligibles quand disponibles et peuvent utiliser des estimations qualifiées captées à partir d’observations en direct, identifiées comme estimations. L’absence de données de financement n’empêche pas un backtest ; un run achevé n’est donc pas la preuve d’une couverture complète du financement.
De même, des observations éligibles antérieures de marge overnight peuvent être reportées pour le même produit ; une information datée ultérieurement n’est pas utilisée pour remplir une date antérieure. Vérifier la couverture et les hypothèses du run avant de traiter une différence comme l’effet d’une stratégie. Ne pas déduire un financement exact à partir de la différence entre des soldes arrondis.
Les trades enregistrés et le contexte du meilleur bid/ask en une seconde offrent plus de détails que seuls les prix de clôture des chandeliers. Ils ne reproduisent toutefois pas entièrement la position dans la file d’ordre, le comportement de liquidation ou les interruptions d’échange. Un meilleur contexte ne transforme pas une exécution hypothétique en un reçu historique.
Vérifiez quels drawdowns (baisses du pic au creux) sont échantillonnés.
Supposons qu’un solde échantillonné hypothétique passe de $500 à $530, puis tombe à $515. Le déclin depuis le pic précédent est $15 même si le solde final reste $15 au-dessus du départ. Ni le gain net ni le pire trade individuel ne décrivent seul ce chemin.
L’explication publiée du backtesting de Citrine mesure le drawdown maximal aux sorties de trades enregistrées et à la fin du run. Cet échantillonnage peut manquer un plus bas intra-trade. Ce n’est pas une limite de perte marquée en continu, pas une perte live garantie au pire cas, ni la preuve qu’un stop se serait exécuté à un prix particulier.
Utilisez le désaccord comme question de recherche
Lorsque deux runs diffèrent, comparer d’abord quantités et horodatages avant de débattre du rendement annoncé. Une différence de quantité peut expliquer une grande partie du résultat ; une différence de frontière peut introduire une entrée, sortie ou un événement de financement supplémentaire. Examiner ensuite les prix d’exécution, les coûts, le financement et toute exposition encore ouverte.
Inclure des périodes moins favorables dans la comparaison et garder les choix d’entrée cohérents. Une seule période attractive ne valide pas une approche de trading, et ni une bonne session Paper ni un résultat historique n’établissent la performance future. L’issue utile est un compte d’hypothèses plus clair, pas une promesse.
Sources et lectures complémentaires
Faits sur le produit : méthodologie de backtesting de Citrine et comparaison des modes. Manuel public : Lire les backtests, frais et financement, revu le 29 septembre 2026. Tous les exemples numériques de cet article sont des arithmétiques nouvellement inventées, pas des données clients ni des rendements mesurés.
Pour un résultat déroutant, utiliser assistance protégée avec le mode, les dates, le fuseau horaire et une description concise. Ne pas publier un export complet de compte.