2 beğenilme 0 beğenilmeme
771 kez görüntülendi
Merhaba,

Matriks IQ da algoritmik işlem yapıyorum. Stratejiyi çalıştırmadan önce parametrede hangi saatler arasında emir göndermesini belirlemek istiyorum. Yani Parametreye başlangıç ve bitiş saatlerini ayrı ayrı girmek ve bu saatlerin dışında işlem yapmasını engellemek istiyorum.

Özetle, Parametrede belirleyeceğim bu iki zaman aralığında al veya sat şartı oluşturmak istiyorum.

Örnek kodlama konusunda yardımcı olabilirseniz çok sevinirim. Kolay gelsin.

Teşekkür ederim.
Algoritmik Trading kategorisinde (26 puan) tarafından | 771 kez görüntülendi

1 cevap

2 beğenilme 0 beğenilmeme

Merhaba,

Aşağıdaki örnek yapıyı inceleyip kullanabilirsiniz.

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

[Parameter("17:59:00")]
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ığı	

public override void OnDataUpdate(BarDataEventArgs barData)
{
	//			var zamanKontrolu = FX_ZamanindaMI(barDataCurrentValues.LastUpdate.DTime);
	var zamanKontrolu = FX_ZamanindaMI(barData.BarData.Dtime);

	if (CrossAbove(most.ExMOV, most) && zamanKontrolu)
	{
		SendMarketOrder(Symbol, BuyOrderQuantity, (OrderSide.Buy));
		Debug("Alış emri verildi.");
	}
	if (CrossBelow(most.ExMOV, most) && zamanKontrolu)
	{
		SendMarketOrder(Symbol, SellOrderQuantity, (OrderSide.Sell));
		Debug("Satış emri verildi.");
	}
}

 

(15,852 puan) tarafından
60 dakikalık periyotlarda işlem yapıldığında ne olur?
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,959 soru
7,939 cevap
4,531 yorum
13,047 kullanıcı