Rejoignez-nous
Mathématiques/probuilder · probacktest · proorder · proscreener

ACOS

ACOS en ProBuilder renvoie l'arc cosinus d'une valeur, l'angle en radians dont le cosinus est égal à l'entrée. Plage d'entrée, syntaxe, paramètres et exemples.

Syntaxe

probuilder
ACOS(value)

Paramètres

NomTypeDescription
valuenombreUne valeur comprise entre -1 et 1 inclus. Les entrées hors de cette plage sont invalides car aucun angle réel n'a un cosinus au-delà de ces bornes.

Formule

code
ACOS(x) = angle in radians such that COS(angle) = x,   -1 <= x <= 1

L'angle renvoyé est compris entre 0 et PI radians (0 à 180 degrés). Pour convertir le résultat en degrés, multipliez par 180 / PI.

Comment ça marche

ACOS inverse la relation du cosinus : à partir d'un rapport, elle renvoie l'angle qui l'a produit. Comme le cosinus ne varie jamais qu'entre -1 et 1, l'entrée doit rester dans cet intervalle. ACOS(1) renvoie 0, ACOS(0) renvoie environ 1.5708 (PI/2), et ACOS(-1) renvoie PI.

La sortie est en radians, en cohérence avec COS, SIN et TAN, qui attendent toutes une entrée en radians. Si un calcul en aval travaille en degrés, appliquez la conversion 180 / PI après l'appel.

Exemples

Exemple 1, Angle à partir d'un ratio normalisé (Indicateur)

probuilder
// Recover an angle in degrees from a cosine ratio
ratio = 0.5
angleRad = ACOS(ratio)
angleDeg = angleRad * 180 / 3.14159265
RETURN angleDeg AS "Angle (deg)"

ACOS(0.5) renvoie environ 1.047 radians, que la conversion transforme en 60 degrés.

Exemple 2, Protéger la plage d'entrée (ProScreener)

probuilder
// Only compute the angle where the ratio is a valid cosine
x = (close - Lowest[20](low)) / (Highest[20](high) - Lowest[20](low))
valid = x >= -1 AND x <= 1
angle = ACOS(MIN(1, MAX(-1, x)))
SCREENER[valid](angle AS "ACOS")

Borner x avec MIN et MAX maintient l'entrée dans [-1, 1] afin que ACOS ne voie jamais une valeur hors plage.

Exemple 3, Filtre basé sur l'angle (ProOrder)

probuilder
// Convert a bounded oscillator reading into an angle and gate entries by it
osc = (close - Average[20](close)) / (2 * STD[20](close))
osc = MIN(1, MAX(-1, osc))
theta = ACOS(osc)
IF NOT LongOnMarket AND theta < 1 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

Le bornage garantit une entrée valide, et ACOS convertit la lecture bornée en un angle utilisé comme seuil.

Erreurs et pièges courants

  • L'entrée doit rester dans [-1, 1]. Un argument inférieur à -1 ou supérieur à 1 n'est pas un cosinus valide et provoque une erreur. Bornez-le avec MIN(1, MAX(-1, x)) lorsque la valeur peut sortir de la plage.
  • Le résultat est en radians. La sortie va de 0 à PI. Multipliez par 180 / PI s'il vous faut des degrés.
  • Inverse de COS, pas 1 / COS. ACOS annule le cosinus. Ce n'est pas l'inverse de COS.
  • ASIN, arc sinus, l'inverse de SIN.
  • ATAN, arc tangente, l'inverse de TAN.
  • COS, cosinus d'un angle en radians, la fonction ACOS s'inverse.
  • SIN, sinus d'un angle en radians.
  • TAN, tangente d'un angle en radians.
  • ABS, valeur absolue, utile pour préparer les entrées.
  • SQRT, racine carrée, courante aux côtés des rapports trigonométriques.