Une condition est toujours interprétée comme étant vraie ou fausse. Une condition est vraie lorsque la valeur qu'elle retourne est elle-même vraie, c'est à dire différente de 0.
Retourner la valeur d'une condition
Le retour de la valeur d'une condition se fait comme avec un indicateur, en utilisant le mot-clé "return", suivi de la valeur. Par exemple la condition suivante sera toujours fausse :
1 |
return 0 |
Comparer des indicateurs
Une condition peut marquer la comparaison de deux indicateurs, ou d'un indicateur et d'une valeur. Par exemple, la condition suivante est vraie lorsque la moyenne mobile sur 12 périodes est plus haute que la moyenne mobile sur 21 périodes :
1 |
return SMA(12)[0] > SMA(21)[0] |
Signaler le croisement d'indicateurs
Les fonction "crossOver" et "crossBelow" permettent de signaler le croisement entre deux indicateurs, ou entre un indicateur et une valeur. Par exemple, la condition suivante est vraie lorsque l'indicateur MACD croise la valeur 0 à la hausse :
1 |
return crossOver(MACD, 0) |
Opérateurs booléens
Il est bien sûr possible d'associer plusieurs comparaisons et croisements en utilisant les opérateurs booléens "and" et "or". La condition suivante est vraie lorsque la moyenne mobile 12 est supérieure à la moyenne mobile 21, et que l'indicateur MACD vient de croiser 0 à la hausse :
1 |
return SMA(12)[0] > SMA(21)[0] and crossOver(MACD, 0) |