If
Sur cette page
[[if]] permet de créer un branchement dans la stratégie selon le résultat de condition. Quand l’expression est vraie, l’exécution passe au bloc indiqué par then_block_id. Quand l’expression est fausse ou qu’elle vaut NaN, l’exécution passe au bloc indiqué par else_block_id. Dans les deux cas, l’enchaînement se fait immédiatement, sans attendre la bougie suivante.
[[if]] ne peut pas être utilisé dans la clé condition_ids d’un bloc [[and]] ou [[or]]. Pour combiner plusieurs conditions avant de choisir une branche, utilisez d’abord [[and]] ou [[or]], puis enchaînez vers [[if]].
Déclaration du bloc
Une stratégie peut contenir plusieurs blocs [[if]].
Exemples
Choisir entre deux branches
Cet exemple utilise [[if]] parce que les deux cas sont définis : la stratégie enchaîne vers enter_long lorsque la condition est vraie, sinon vers enter_short.
[[if]]
id = "trend_switch"
condition = "rsi_fast > rsi_slow"
then_block_id = "enter_long"
else_block_id = "enter_short"Une seule branche avec condition
Cet exemple utilise [[condition]] parce qu’il n’y a pas de branche à exécuter lorsque la condition est fausse. Tant que close > resistance est faux, la stratégie passe à la bougie suivante et réévalue la condition. Dès que l’expression devient vraie, elle enchaîne vers enter_breakout.
[[condition]]
id = "breakout_guard"
condition = "close > resistance"
next_block_id = "enter_breakout"Paramètres du bloc
| Paramètre | Description |
|---|---|
idTexte Obligatoire | Identifiant unique du bloc. |
conditionExpression Obligatoire | Expression de condition évaluée sur chaque bougie. 0.0 et NaN sont considérés comme faux ; toute autre valeur non nulle est considérée comme vraie. |
then_block_idTexte Obligatoire | Identifiant du bloc exécuté lorsque la condition est vraie. |
else_block_idTexte Obligatoire | Identifiant du bloc exécuté lorsque la condition est fausse. |