0 beğenilme 0 beğenilmeme
135 kez görüntülendi
Merhaba,
Kodlaması aşağıdaki gibi çalışan çift yönlü işlem yapan bir stratejide robot duraklatılıp tekrar çalıştığında kaldığı yerden devam eder mi yoksa lastorderside gibi koşullar eklenmeli mi? Parabloic sar hazır stratejisinden esinlenerek bu sistemi oluşturdum ve güzel çalışıyor sadece bundan emin olmak istedim.
 

SendOrderSequential(false);

WorkWithPermanentSignal(true);

if (Position == 0)

{

SendMarketOrder(Symbol, OrderQuantity, OrderSide.Sell, includeAfterSession:false);

TrailingStopLoss(Symbol, SyntheticOrderPriceType.Percent, ShortStopLevel);

Debug("Short pozisyon açıldı.");

Position = -1;

}

 

else if (Position == 1)

{

SendMarketOrder(Symbol, 2 * OrderQuantity, OrderSide.Sell, includeAfterSession:false);

TrailingStopLoss(Symbol, SyntheticOrderPriceType.Percent, ShortStopLevel);

Debug("Long pozisyondan Short pozisyona geçildi.");

Position = -1;

}
Algoritmik Trading kategorisinde (22 puan) tarafından | 135 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhabalar,
SendOrderSequential(true); Sistem duraklatılıp devam ettirildiğinde son işlem yönünü devreye alıp sıralı şekilde alım satıma devam eder. Sizin gönderdiğiniz örnekte ise "false" olduğundan sırasız emir gönderir ve son işlem yönünü hafızada tutmaz. 

Bu durumda ancak değişkenler ile if koşulu içerisinde kontrol etmeniz gerekir. Duraklattığınızda ise sistemdeki değişkenler varsayılan değerlerine geri döner.
Buna önlem almak adına "RestoreLastValueOnResumeAttribute" özelliğini kullanabilirsiniz.
https://iqyardim.matriksdata.com/docs/matriksiq-kullanim-kilavuzu/algotrader/degisken-ve-parametre-tanimlama/ 

İyi çalışmalar dileriz.

(4,665 puan) tarafından
0 0
Aslında bu sistemi sizin hazır stratejinizden aldım. Kodlama hiç bilmiyordum ve çok korkuyordum ama öğrendim yetecek kadar. Değişken değerler nelerdir? "Position" evet bir değişken ama başka hangi tür değişkenlere bunu atamak gerekir?
9,295 soru
9,251 cevap
5,064 yorum
31,786 kullanıcı