1 beğenilme 0 beğenilmeme
147 kez görüntülendi
Merhaba,

Aşağıdaki örnek iletmiş olduğum üzere, takeprofit i alış emri gerçekleştiği an değil de, bir if bloğuna bağlayarak alış işleminin gerçekleşmesinin ardından, anlık fiyatın hedeflenen fiyata ulaşmasına istinaden devreye girmesi sağlanabilir mi?

Desteğiniz için teşekkür ederim.

 

if (Alış Koşulu)

{SendMarketOrder(Symbol, OrderQuantity, OrderSide.Buy);

if(anlikfiyat>=hedefiyat)

{

TakeProfit(Symbol, SyntheticOrderPriceType.Percent, 1, true);

}
Algoritmik Trading kategorisinde (195 puan) tarafından | 147 kez görüntülendi

1 cevap

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

Merhaba,

gönderdiğiniz yapıya göre de yapılabilir ancak kalıcı sinyalde çalışmanız halinde bar kapanışlarını bekleyecektir.

alternatif olarak aşağıdaki yapıyı ve linkteki konuyu inceleyebilirsiniz.

https://destek.matriksdata.com/?qa=22249/kar-al-veya-zarar-kes-tetiklendiginde-if-kosulu-eklemek&show=22249#q22249

public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues){			
	if(alisKosulu && LastOrderSide.Obj!=Side.Buy){
		SendMarketOrder(Symbol,1,OrderSide.Buy);
		var anlikFiyat=GetSelectedValueFromBarData(GetBarData(),OHLCType.Close);
		var stopSeviyesi=hedefFiyat-anlikFiyat;
		TakeProfit(Symbol,SyntheticOrderPriceType.PricePoint,stopSeviyesi,false);
	}
}
		
public override void OnSyntheticOrderTriggered(SyntheticAlgoOrder sOrder){
	if(!sOrder.EnableOrderSending){
		if(sOrder.SyntheticAlgoOrderType==SyntheticAlgoOrderType.TakeProfit){
			Debug("Hedeflenen fiyata geldi");
			TakeProfit(Symbol, SyntheticOrderPriceType.Percent, 1, true);
		}
	}
}

 

(15,702 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,699 soru
7,683 cevap
4,467 yorum
11,471 kullanıcı