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

Öncelikle iyi çalışmalar.

 

SuperTrend ve MACD indikatörlerini kullanarak bir strateji oluşturmak istiyorum.

SuperTrend "AL" verdiğinde beklesin MACD/TRİGER'i yukarı yönlü kestikten sonra alım yapsın.  Ya da koşulun tam tersi gerçekleşince Satış yapsın istiyorum.

 

Kendim "AND" ya da "OR" ile bağladığımda hangi koşul önce gerçekleşirse ona göre alım yapıyor. MACD/TRİGER kesiştiğinde SuperTrend'in al vermesini beklemiyor. Ya da tam tersi SuperTrend al verdiğinde MACD kesişimi beklemiyor.

 

Teşekkürler şimdiden desteğiniz için.

Algoritmik Trading kategorisinde (14 puan) tarafından
tarafından düzenlendi | 693 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhabalar,

Kurgularken her iki indikatörün de onayını istediğinizden AND koşulu kullanmalısınız.

Bu sebeple de ya, "MACD/TRIGGER kesişimi ve SUPERTREND al versin" yapısını (aşağıda paylaşılmıştır.)

public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues)
		{
			var barData1 = GetBarData(Symbol1, SymbolPeriod1);
			var ohlcData1 = GetSelectedValueFromBarData(barData1, OHLCType.Close);


			if (CrossAbove(macd, macd.MacdTrigger) && superTrend.Value[0][superTrend.CurrentIndex] < ohlcData1)
			{
				SendMarketOrder(Alış Koşulu);
				Debug("Alış Emri Gönderildi");
			}

			if (CrossBelow(macd, macd.MacdTrigger) && superTrend.Value[0][superTrend.CurrentIndex] > ohlcData1)
			{
				SendMarketOrder(Satış Koşulu);
				Debug("Satış Emri Gönderildi");
			}

Ya da "MACD al versin ve SUPERTREND bardatayı kessin" yapısını kullanmalısınız. (Aşağıda paylaşılmıştır.)

public override void OnDataUpdate(BarDataEventArgs barData)
		{
			var barData1 = GetBarData(Symbol1, SymbolPeriod1);

			if (CrossBelow(superTrend, barData1, OHLCType.Close, 0) && macd.Value[0][macd.CurrentIndex] > macd.Value[1][macd.CurrentIndex])
			{
				SendMarketOrder(Alış Koşulu);
			}
			if (CrossAbove(superTrend, barData1, OHLCType.Close, 0) && macd.Value[0][macd.CurrentIndex] < macd.Value[1][macd.CurrentIndex])
			{
				SendMarketOrder(Satış Koşulu);
			}

İyi çalışmalar.

(11,059 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.



8,637 soru
8,591 cevap
4,821 yorum
19,806 kullanıcı