Bli medlem idag
Matematik/probuilder · probacktest · proorder · proscreener

COS

COS i ProBuilder returnerar cosinus av en vinkel angiven i radianer, ett värde mellan -1 och 1. Syntax, kravet på radianer, fallgropar och genomarbetade exempel.

Syntax

probuilder
COS(a)

Parametrar

NamnTypBeskrivning
atalVinkeln i radianer. Grader måste konverteras till radianer före anropet.

Formel

kod
COS(a) = cosine of angle a,   with a in radians,   result in [-1, 1]

COS(0) returnerar 1, COS(PI/2) returnerar 0, och COS(PI) returnerar -1. Funktionen är periodisk med perioden 2*PI.

Så fungerar det

COS behandlar sitt argument som en vinkel mätt i radianer, inte grader. Det är den allra vanligaste fallgropen: att mata in ett gradvärde ger ett meningslöst tal. Konvertera med a * PI / 180 först. Resultatet är begränsat till [-1, 1], vilket gör cosinus användbar för att bygga mjuka cykliska serier och oscillatorer.

Eftersom utdata aldrig lämnar [-1, 1] är det ett säkert indata till ACOS, den inversa funktionen, utan begränsning.

Exempel

Exempel 1, Cosinus av en vinkel i grader (Indikator)

probuilder
// Convert 60 degrees to radians, then take the cosine
angleInDegrees = 60
angleInRadians = angleInDegrees * 3.14159265 / 180
cosineValue = COS(angleInRadians)
RETURN cosineValue AS "COS(60 deg)"

Omvandlingen är nödvändig. COS(60) skulle tolka 60 som radianer och returnera fel värde; koden ovan returnerar 0.5, cosinus för 60 grader.

Exempel 2, Cyklisk våg över barindexet (ProScreener)

probuilder
// A smooth cosine wave cycling every 20 bars
phase = BarIndex * 2 * 3.14159265 / 20
wave = COS(phase)
SCREENER[wave > 0.9](wave AS "Cosine wave")

Att skala barindexet till radianer ger en repeterande cosinus som toppar en gång per cykel.

Exempel 3, Cosinusviktad entryspärr (ProOrder)

probuilder
// Weight a signal by a slow cosine cycle
phase = BarIndex * 2 * 3.14159265 / 50
weight = COS(phase)
IF NOT LongOnMarket AND close CROSSES OVER Average[20](close) AND weight > 0 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

Cosinustermen tillåter endast entries under den positiva halvan av sin cykel, vilket snedvrider affärerna mot en fas av vågen.

Vanliga fel och fallgropar

  • Vinkeln måste vara i radianer. COS förväntar sig radianer. För att använda grader, multiplicera med PI / 180 först, annars blir resultatet meningslöst.
  • Utdata är begränsad till [-1, 1]. Cosinus returnerar aldrig ett värde utanför det här intervallet, så ett värde utanför det signalerar ett kodningsfel längre upp.
  • Periodisk, så många indata ger samma utdata. COS(a) och COS(a + 2*PI) är lika. Funktionen i sig kan inte säga vilken cykel en vinkel kom från.
  • SIN, sinus av en vinkel i radianer, cosinus motsvarighet.
  • TAN, tangens för en vinkel i radianer.
  • ACOS, arcus cosinus, inversen av COS.
  • ASIN, arcus sinus.
  • ATAN, arcus tangens.
  • ABS, absolutvärde, användbart för symmetriska cosinustester.
  • SQRT, kvadratrot, vanlig i trigonometriska identiteter.