ACOS
ACOS i ProBuilder returnerar arcus cosinus av ett värde, vinkeln i radianer vars cosinus är lika med indata. Indataintervall, syntax, parametrar och exempel.
Syntax
ACOS(value)Parametrar
| Namn | Typ | Beskrivning |
|---|---|---|
value | tal | Ett värde mellan -1 och 1 inklusive. Indata utanför detta intervall är ogiltiga eftersom ingen reell vinkel har ett cosinusvärde utanför dessa gränser. |
Formel
ACOS(x) = angle in radians such that COS(angle) = x, -1 <= x <= 1Den returnerade vinkeln ligger mellan 0 och PI radianer (0 till 180 grader). För att konvertera resultatet till grader, multiplicera med 180 / PI.
Så fungerar det
ACOS vänder cosinussambandet: givet ett förhållande returnerar den vinkeln som gav det. Eftersom cosinus bara varierar mellan -1 och 1 måste indata hålla sig inom det intervallet. ACOS(1) returnerar 0, ACOS(0) returnerar ungefär 1.5708 (PI/2), och ACOS(-1) returnerar PI.
Utdatan är i radianer, i linje med COS, SIN och TAN, som alla förväntar sig indata i radianer. Om en efterföljande beräkning arbetar i grader, tillämpa omvandlingen 180 / PI efter anropet.
Exempel
Exempel 1, Vinkel från ett normaliserat förhållande (Indicator)
// 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) returnerar ungefär 1.047 radianer, som omvandlingen gör till 60 grader.
Exempel 2, Skydda indataintervallet (ProScreener)
// 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")Att begränsa x med MIN och MAX håller indatan inom [-1, 1] så att ACOS aldrig ser ett värde utanför intervallet.
Exempel 3, Vinkelbaserat filter (ProOrder)
// 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
ENDIFBegränsningen garanterar ett tillåtet indatavärde, och ACOS mappar det begränsade värdet till en vinkel som används som tröskel.
Vanliga fel och fallgropar
- Indata måste hålla sig inom [-1, 1]. Ett argument under -1 eller över 1 är inte ett giltigt cosinusvärde och ger ett fel. Begränsa med
MIN(1, MAX(-1, x))när värdet kan hamna utanför intervallet. - Resultatet är i radianer. Utdata sträcker sig från 0 till PI. Multiplicera med 180 / PI om du behöver grader.
- Invers av COS, inte 1 / COS.
ACOSupphäver cosinus. Den är inte reciprokvärdet avCOS.
Relaterade instruktioner
ASIN, arcus sinus, inversen avSIN.ATAN, arcus tangens, inversen avTAN.COS, cosinus för en vinkel i radianer, funktionenACOSvänder.SIN, sinus för en vinkel i radianer.TAN, tangens för en vinkel i radianer.ABS, absolutvärde, användbart när indata förbereds.SQRT, kvadratrot, vanlig tillsammans med trigonometriska kvoter.