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

public override void OnOrderUpdate(IOrder order) fonksiyonu altında gerçekleşen emirlerimin detaylarını çekiyorum. Ancak algonun gönderdiği emiri bir türlü çekmeyi bulamadım. order.LastPx ile gerçekleşen fiyatı çekiyorum ama dediğim gibi örneğin algo yukarıdan bir fiyat gönderdiyse ben bunu OnOrderUpdate fonskiyonu altında nasıl çekebilirim?

 

 

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

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba,

OnOrderUpdate() metodunda sadece gerçekleşen fiyatı çekebilirsiniz gönderilene fiyatı çekemezsiniz.

emir ID ve gönderilme fiyatından oluşan bir Dictionary oluşturup takip edebilirsiniz.

Dictionary<string,decimal> gonderilmeFiyatlari=new Dictionary<string,decimal>();
		
public override void OnInitCompleted()
{			
	var gonderilmeFiyati=12.32m;
	var emirID=SendLimitOrder(Symbol, 1, OrderSide.Buy,gonderilmeFiyati);
			
	gonderilmeFiyatlari[emirID]=gonderilmeFiyati;
}
		
public override void OnOrderUpdate(IOrder order){
	if(order.OrdStatus.Obj==OrdStatus.Filled){
		if(gonderilmeFiyatlari.ContainsKey(order.CliOrdID)){
			var gonderilmeFiyati=gonderilmeFiyatlari[order.CliOrdID];
		}
	}
}

 

(15,682 puan) tarafından
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,658 soru
7,658 cevap
4,457 yorum
11,171 kullanıcı