0 beğenilme 0 beğenilmeme
144 kez görüntülendi
Matriks IQ üzerinde belirli bir koşul gerçekleştiğinde belirlediğim indikatörün son x bardaki en yüksek veya en düşük değerini çekmek istiyorum.
Örneğin;

Kapanış verisi(close) <= en düşük değer (low) koşulu sağlandığında 10 barlık basit hareketli ortalamanın değerlerini saklasın. Bu sakladığı değerlerden son 5 barda oluşan en yüksek değerin çıktısını versin.

Bu kodu IQ için yazabilir miyiz?
Algoritmik Trading kategorisinde (41 puan) tarafından
tarafından yeniden gösterildi | 144 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba,

Aşağıdaki formülü inceleyebilrisiniz.

SMA sma;
HighestHigh highestHigh;
		
public override void OnInit()
{
	AddSymbol(Symbol, SymbolPeriod);
	sma=SMAIndicator(Symbol,SymbolPeriod,OHLCType.Close,10);
	highestHigh = HighestHighIndicator(sma,  5);
	SendOrderSequential(true);
	WorkWithPermanentSignal(true);		
}

public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues)
{
	var bardatamodel=GetBarData();
	var kapanis=GetSelectedValueFromBarData(bardatamodel,OHLCType.Close);
	var dusuk=GetSelectedValueFromBarData(bardatamodel,OHLCType.Low);
			
	if(kapanis<=dusuk){
		Debug("koşul sağlandı son 5 bardaki en yüksek sma değeri: "+highestHigh.Value[0][highestHigh.CurrentIndex]);
	}
}

 

(16,022 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,970 soru
8,923 cevap
4,970 yorum
23,274 kullanıcı