MatriksIQ Destek
Matriks Destek
Matriks Web Destek
Matriks Mobile Destek
0 beğenilme 0 beğenilmeme
60 kez görüntülendi
kod içerisinde;

var pozition = GetRealPositions();

var PortfoyAdet = pozition[Symbol].QtyAvailable;

ile portföydeki hisse adedini çekiyorum. Portföyümde o hisseden varsa stratejimin devamı çalışıyor sorun yok ancak portföyde olmayan bir hisse için çalıştırdığımda strateji sonraki satırlara geçmiyor ve orada duruyor. Bu kodun hemen altına debug ekranına herhangi bir şey yazdırarak kontrol ediyorum debug ekrana yazı gelmiyor.. Eğer portföyde o hisseden varsa kod ilerliyor sorun olmuyor.  Log kayıtlarında da "Verilen anahtar sözlükte yoktu" diye bir hata geliyor. Bu hatanın gelmesi belki normal hisse zaten yok ama stratejinin devam etmemesi sorun teşkil ediyor. Nasıl düzeltilebilir?

Teşekkürler.
Algoritmik Trading kategorisinde (111 puan) tarafından | 60 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba,

Olmayan bir veriyi çekmeye çalıştığınızda arkaplanda hata olacağı için strateji sonraki işlemleri gerçekleştirmeyecektir.

Öncelikle portföyde işlem yaptığınız sembolün olup olmadığını kontrol ettirip sonrasında lot bilgisini çekmeniz gerekir.

aşağıdaki gibi bir yapı kurabilirsiniz. eğer sembol portföyde varsa lot miktarını dönsün yoksa 0 dönsün.

var pozition = GetRealPositions();

var PortfoyAdet =pozition.ContainsKey(Symbol)? pozition[Symbol].QtyAvailable:0;
			
if(PortfoyAdet!=0){
			
	// yapılacak işlemler
}

 

(6,892 puan) tarafından
4,811 soru
4,817 cevap
3,179 yorum
3,596 kullanıcı