SIN
SIN dans ProBuilder renvoie le sinus d'un angle donné en radians, une valeur comprise entre -1 et 1. Syntaxe, l'exigence des radians, pièges et exemples détaillés.
Syntaxe
SIN(a)Paramètres
| Nom | Type | Description |
|---|---|---|
a | nombre | L'angle en radians. Les degrés doivent être convertis en radians avant l'appel. |
Formule
SIN(a) = sine of angle a, with a in radians, result in [-1, 1]SIN(0) renvoie 0, SIN(PI/2) renvoie 1, et SIN(PI) renvoie 0. La fonction est périodique de période 2*PI.
Comment ça marche
SIN traite son argument comme un angle mesuré en radians. Passer directement une valeur en degrés donne un résultat dénué de sens, il faut donc convertir d'abord avec a * PI / 180. La sortie reste dans [-1, 1], ce qui fait du sinus une brique naturelle pour des séries cycliques lisses et des oscillateurs.
Comme le résultat ne quitte jamais [-1, 1], c'est une entrée sûre pour ASIN, son inverse, sans bornage.
Exemples
Exemple 1, Sinus d'un angle en degrés (Indicateur)
// Convert 90 degrees to radians, then take the sine
angleInDegrees = 90
angleInRadians = angleInDegrees * 3.14159265 / 180
result = SIN(angleInRadians)
RETURN result AS "SIN(90 deg)"La conversion a son importance. SIN(90) traiterait 90 comme des radians ; le code ci-dessus renvoie 1, le sinus de 90 degrés.
Exemple 2, Onde cyclique sur l'indice de bar (ProScreener)
// A smooth sine wave cycling every 20 bars
phase = BarIndex * 2 * 3.14159265 / 20
wave = SIN(phase)
SCREENER[wave > 0.9](wave AS "Sine wave")Convertir l'index de bar en radians produit un sinus répétitif qui atteint son sommet une fois par cycle.
Exemple 3, Filtre d'entrée pondéré par le sinus (ProOrder)
// Allow entries only during the rising half of a slow sine cycle
phase = BarIndex * 2 * 3.14159265 / 50
weight = SIN(phase)
IF NOT LongOnMarket AND close CROSSES OVER Average[20](close) AND weight > 0 THEN
BUY 1 CONTRACT AT MARKET
ENDIFLe terme sinus limite les entrées à la moitié positive de son cycle, orientant les trades vers une phase de l'onde.
Erreurs et pièges courants
- L'angle doit être en radians.
SINattend des radians. Pour utiliser des degrés, multipliez parPI / 180d'abord, sinon le résultat n'a aucun sens. - La sortie est bornée à [-1, 1]. Le sinus ne renvoie jamais de valeur en dehors de cette plage ; une lecture au-delà signale donc une erreur de code en amont.
- Périodique, donc de nombreuses entrées donnent la même sortie.
SIN(a)etSIN(a + 2*PI)sont égaux, la fonction seule ne peut donc pas dire à quel cycle appartient un angle.