1 beğenilme 0 beğenilmeme
293 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 (200 puan) tarafından | 293 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,892 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.



8,635 soru
8,589 cevap
4,821 yorum
19,779 kullanıcı