0 beğenilme 0 beğenilmeme
286 kez görüntülendi
IQ stratejimin sat kısmına or ilave edip aşağıdaki şekilde  saatte pozisyonu kapat eklentisini yazabilirmisiniz?. mümkünse

Prime da kullandığım örnek

(sat formülüm)  or
(HOUR()=17 AND MINUTE()>=55))
Algoritmik Trading kategorisinde (14 puan) tarafından | 286 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba,

Aşağıdaki gibi bir yapı kurulabilir saat 17:55:00 ile 17:55:05 aralığında elinizde pozisyon varsa kapatacaktır.

 

public override void OnInit()
		{
			AddSymbol(Symbol, SymbolPeriod);
			most = MOSTIndicator(Symbol, SymbolPeriod, OHLCType.Close, Period, Percentage, MovMethod.Exponential);
			WorkWithPermanentSignal(true);
			SendOrderSequential(true, Side.Buy);
			
			SetTimerInterval(1);
		}		

		// Gerekli zaman aralığı
		[Parameter("17:55:00")]
		public string Baslangic;

		[Parameter("17:55:05")]
		public string Bitis;

		public bool FX_ZamanindaMI(DateTime zaman)
		{
			var bas = TimeSpan.Parse(Baslangic);
			var bit = TimeSpan.Parse(Bitis);
			return (zaman.TimeOfDay >= bas && zaman.TimeOfDay <= bit);
		}
		// # Gerekli zaman aralığı	
		
		bool pozisyonKapatildiMI=false;
		
		public override void OnTimer(){
			if(FX_ZamanindaMI(DateTime.Now)){
				// belirlenen zaman aralığında
				var portfoy=GetPortfolio();
				
				if(portfoy.ContainsKey(Symbol) && pozisyonKapatildiMI==false){
					var adet=portfoy[Symbol];
					if(adet>0){
						SendMarketOrder(Symbol,adet,OrderSide.Sell);
						Debug("Pozisyon kapatıldı");
						pozisyonKapatildiMI=true;
					}
				}
			}else{
				pozisyonKapatildiMI=false;
			}
		}

 

(15,892 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,684 soru
8,637 cevap
4,848 yorum
20,005 kullanıcı