BaşlayınÜcretsiz Başlayın

Sinyalleri birleştirme - II

Önceki egzersizde, iki başka sinyalin değerini karşılaştırarak bir sigFormula sinyalini yaklaşık olarak oluşturmuştun. Bu son egzersizde, bunu bir adım ileri götürüp sigFormula() fonksiyonunu kullanarak bir sigFormula sinyali üreteceksin.

Bu egzersizin hedefi basit. Hem longfilter hem de longthreshold aynı anda true olduğunda bir pozisyona girmek istiyorsun. Fikir şu: Koşullar true kaldığı sürece sürekli pozisyona girmek istemiyorsun, ama yükseliş trendindeki bir ortamda geri çekilme olduğunda pozisyonu tutmak istiyorsun.

Bir sigFormula fonksiyonu yazmak, base R'de formula() fonksiyonunun içine bir "if deyimi"nin argümanını yazmak kadar kolaydır. Bu durumda, longfilter ve longthreshold aynı anda true olacak şekilde üstten kesiştiğinde true olan, longentry etiketli bir sinyal oluşturmak istiyorsun.

Bu egzersizi tamamladığında, quantstrat'ta sinyallerin nasıl çalıştığına dair tam bir genel bakışa sahip olacaksın!

Bu egzersiz

R ile Finansal Alım Satım

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • add.signal() kullanarak, hem longfilter hem de longthreshold true olduğunda true olan bir sigFormula sinyali oluştur.
  • cross değerini TRUE olarak ayarla.
  • Bu yeni sinyali longentry olarak etiketle.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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 = "___")
Kodu Düzenle ve Çalıştır