1 beğenilme 0 beğenilmeme
122 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 (193 puan) tarafından | 122 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,682 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,655 soru
7,653 cevap
4,456 yorum
11,171 kullanıcı