And

[[and]] évalue une liste de blocs conditionnels référencés dans condition_ids.

Chaque entrée doit correspondre à l’identifiant d’un bloc conditionnel existant. Pour que le bloc Logical AND soit validé, tous les blocs conditionnels listés dans condition_ids doivent être validés sur la même bougie. Si toutes les conditions sont validées, le bloc Logical AND lui-même est validé, et l’exécution de la stratégie se poursuit vers le bloc spécifié dans next_block_id. Si l’une des conditions référencées n’est pas validée, le bloc Logical AND n’est pas non plus validé, et ce chemin d’exécution est interrompu pour la bougie actuelle.

Déclaration du bloc

Une stratégie peut contenir plusieurs blocs [[and]].

Exemple

[[and]]
id            = "entry_filters"
condition_ids = ["ma_filter", "rsi_filter"]
next_block_id = "entry"

Imbrication logique et transition

Les blocs référencés dans la clé condition_ids sont des enfants logiques du bloc [[and]]. Ils sont évalués dans l’ordre indiqué. Dès qu’un enfant n’est pas validé, le bloc [[and]] s’arrête et n’est pas validé sur cette bougie.

Lorsqu’un bloc conditionnel est utilisé comme enfant de [[and]], il ne doit pas définir next_block_id. Cette règle s’applique à tous les enfants logiques, y compris [[wait]], [[or]] et un autre [[and]] lorsqu’ils sont imbriqués dans [[and]].

Si le bloc [[and]] est lui-même utilisé comme enfant d’un autre bloc logique, [[and]] ou [[or]], son propre next_block_id doit aussi être omis. S’il est utilisé comme enfant direct d’un bloc [[route]], il doit au contraire définir next_block_id, car [[route]] utilise la destination de l’enfant retenu.

Paramètres du bloc

ParamètreDescription
id
 Texte
 Obligatoire
Identifiant unique du bloc.
condition_ids
 Tableau
 Obligatoire
Identifiants des blocs conditionnels à évaluer. condition_ids est la clé à utiliser pour déclarer les enfants logiques du bloc.
next_block_id
 Texte
 Conditionnel
Identifiant du bloc suivant à exécuter une fois que toutes les conditions enfants sont validées sur la même bougie et que le bloc [[and]] est validé. Doit être omis lorsque ce bloc est lui-même utilisé comme enfant d’un bloc [[and]] ou [[or]]. Doit être défini lorsque ce bloc est utilisé comme enfant direct d’un bloc [[route]], car [[route]] suit le next_block_id de l’enfant retenu.

Ce bloc ne produit aucune variable ; il sert uniquement à contrôler le flux d’exécution lorsque toutes les conditions sont validées en même temps.