0 beğenilme 0 beğenilmeme
937 kez görüntülendi

decimal en_yuksek = HighestHigh(bardata, OHLCType.Close, 10);

ile açık bar hariç, son 10 barın en yüksek kapanışını almaya çalışıyorum. backtestte sonuç doğru gelirken canlıda yanlış geliyor.

Ref(HighestHigh(bardata, OHLCType.Close, 10),0) şeklinde kullandığımda da hata veriyor. Ne yapabilirim?

Algoritmik Trading kategorisinde (228 puan) tarafından | 937 kez görüntülendi

2 Cevaplar

1 beğenilme 0 beğenilmeme
Merhaba,

Ref(HighestHigh(bardata, OHLCType.Close, 10),-1)

olarak dener misiniz lütfen.

iyi çalışmalar
(12,830 puan) tarafından
0 0

denedim. aynı hatayı verdi.

kod :

        public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues)
        {

var bardata = GetBarData(Symbol, SymbolPeriod);

decimal en_yuksek = Ref(HighestHigh(bardata, OHLCType.Close, 10),-1);

...

hata :

error CS1503:1 bağımsız değişkeni:'decimal' öğesinden 'Matriks.Indıcators.Indicator' öğesine dönüştürülemiyor

0 beğenilme 0 beğenilmeme

Merhaba,

decimal en_yuksek = HighestHigh(bardata, OHLCType.Close, 10);

formülü son 10 bar içerisindeki en yüksek kapanış değerini verecektir(açık olan barda dahil)

backtestte debug sekmesine barın açılış zamanı ile birlikte değer yazılırken, canlıda yeni bar açıldığında sistem saati ile birlikte değer yazılacaktır.

Aşağıdaki resme bakıldığında bire bir  tuttuğu görülmektedir.

 

Ayrıca Ref() fonksiyonu içerisine sadece dataserisi eklenmesi gerektiğinde hata alıyorsunuz.

 

(15,532 puan) tarafından
0 0

merhaba,

decimal en_yuksek = HighestHigh(bardata, OHLCType.Close, 10); kodu açık barı dahil ediyor.

İlk mesajımda da belirttiğim gibi ben açık bar hariç almak istiyorum. Refli denemem bu yüzden.

 

Şimdilik bu kodu almak istediğim bar sayısını 1 artırarak kullanıyorum. Yeni açılan bar gaplı olursa sistemim hatalı işlem yapacak ama ne yapayım bulduğum tek yol bu.

 

Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.



7,589 soru
7,596 cevap
4,437 yorum
10,418 kullanıcı