MatriksIQ Destek
Matriks Destek
Matriks Web Destek
Matriks Mobile Destek
0 beğenilme 0 beğenilmeme
56 kez görüntülendi

Merhaba
Takeprofit veya stoploss çalışdı ise eğer altına koşul eklemek istiyorum nasıl yapabilrim.

 

TakeProfit(Symbol, SyntheticOrderPriceType.Percent, Kar_AL);
Debug("Kar_Al Çalışdı" + "Kapanış" + Close);
Longİslemde = false;
AlıslaBasla = false;

 

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

1 cevap

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

Merhaba,

Sentetik emirlerin tetiklenip tetiklenmediğini anlamak için OnOrderUpdate() methodunda emir kontrolü yapılması gerekir.

şöyle bir mantık kurulabilir normal al sat emirlerininin ID'leri bir listeye eklenir. Gerçekleşen emrilerin ID kontrolü yapıldığında eğer bu listede olmayan bir ID varsa sentetik emir tetiklendiği anlaşılabilir.

gerekli değişkenler

List<string> orderIDList = new List<string>();
string orderID;

gönderilen alış ve satış emirlerinin ID'si listeye ekleniyor

orderID = SendMarketOrder(Symbol, BuyOrderQuantity, OrderSide.Buy, includeAfterSession:AksamSeansiniDahilEt);
orderIDList.Add(orderID);

OnOrderUpdate() kontrol

public override void OnOrderUpdate(IOrder order)
{
	if (order.OrdStatus.Obj == OrdStatus.Filled)
	{
		if (!orderIDList.Contains(order.CliOrdID))
		{
			Debug("Sentetik emir tetiklendi");
		}
	}
}

 

(7,378 puan) tarafından
tarafından seçilmiş
2,992 soru
2,885 cevap
2,248 yorum
2,170 kullanıcı