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

  

 int AlToplam = 0;

public override void OnDataUpdate(BarDataEventArgs barData)
        {

                if (adx.Value[0][adx.CurrentIndex] > 25m) AlToplam++;

                if (ema4.Value[0][ema4.CurrentIndex] < C) AlToplam++;

                if (ema1.Value[0][ema1.CurrentIndex] > ema2.Value[0][ema2.CurrentIndex]) AlToplam++;

                if (ema2.Value[0][ema2.CurrentIndex] > ema3.Value[0][ema3.CurrentIndex]) AlToplam++;

}
            if (AlToplam >= 3)
            {
                FX_Alis(Symbol, BuyOrderQuantity);
            }
            if (AlToplam < 2)
            {
                FX_Satis(Symbol, SellOrderQuantity);
            }

 

Şartlardan herhangi üç veya daha fazlası gerçekleşirse AL
Gerçekleşen şartlardan herhangi biri bozulursa SAT

Kodda derleme hatası yok fakat mantıksal bir hata var. Kod bir defa devreye giriyor ve bir daha çalışmıyor. Acaba kod Alış işleminden sonra AlToplam'ın yeniden sıfırlanması mı gerek? Yardımlarınızı beklerim, teşekkürler

 

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

1 cevap

1 beğenilme 0 beğenilmeme
En İyi Cevap

Merhaba,

yapınızda mantıksal hata var. Bu şekli ile her yeni bar açıldıkça ve koşul sağlandıkça AlToplam değeri artacağı için bir süre sonra bu değişkenin değeri 50-60 olabileceğinden satış koşulu sağlanmayabilir. AlToplam değişkenini her ondataupdate tetiklendiğinde sıfırlamak gerekir.

public override void OnDataUpdate(BarDataEventArgs barData)
{
	int AlToplam = 0;
		
	if (adx.Value[0][adx.CurrentIndex] > 25m) AlToplam++;

	if (ema4.Value[0][ema4.CurrentIndex] < C) AlToplam++;

	if (ema1.Value[0][ema1.CurrentIndex] > ema2.Value[0][ema2.CurrentIndex]) AlToplam++;

	if (ema2.Value[0][ema2.CurrentIndex] > ema3.Value[0][ema3.CurrentIndex]) AlToplam++;

	if (AlToplam >= 3)
	{
		FX_Alis(Symbol, BuyOrderQuantity);
	}
	if (AlToplam < 2)
	{
		FX_Satis(Symbol, SellOrderQuantity);
	}

}

 

(15,892 puan) tarafından
tarafından seçilmiş
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.



8,684 soru
8,637 cevap
4,848 yorum
20,005 kullanıcı