ÎncepețiÎncepe gratuit

Combinarea semnalelor - II

În exercițiul anterior, ai aproximat un semnal sigFormula comparând valorile a două semnale. În acest exercițiu final, vei merge mai departe și vei folosi funcția sigFormula() pentru a genera un semnal sigFormula.

Scopul acestui exercițiu este simplu. Vrei să intri într-o poziție atunci când atât longfilter, cât și longthreshold devin adevărate în același timp. Ideea este următoarea: nu vrei să continui să intri în poziție atâta timp cât condițiile rămân adevărate, dar vrei să menții o poziție când apare o retragere într-un mediu cu tendință ascendentă.

Scrierea unei funcții sigFormula este la fel de simplă ca scrierea argumentului unei instrucțiuni „if" din R de bază în interiorul funcției formula(). În acest caz, vrei să creezi un semnal etichetat longentry, care este adevărat atunci când atât longfilter, cât și longthreshold trec la adevărat în același timp.

Odată ce finalizezi acest exercițiu, vei avea o imagine completă asupra modului în care funcționează semnalele în quantstrat!

Acest exercițiu face parte din cursul

Tranzacționare financiară în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosește add.signal() pentru a crea un semnal sigFormula care este adevărat atunci când atât longfilter, cât și longthreshold sunt adevărate.
  • Setează cross la valoarea TRUE.
  • Etichetează acest nou semnal ca longentry.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Add a sigFormula signal to your code specifying that both longfilter and longthreshold must be TRUE, label it longentry
add.signal(strategy.st, name = "___",
           
           # Specify that longfilter and longthreshold must be TRUE
           arguments = list(formula = "___ & ___", 
                            
                            # Specify that cross must be TRUE
                            cross = ___),
           
           # Label it longentry
           label = "___")
Editează și rulează codul