0 beğenilme 0 beğenilmeme
279 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 (112 puan) tarafından | 279 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,422 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.



7,513 soru
7,517 cevap
4,405 yorum
8,752 kullanıcı