Ana içeriğe geç

cTrader'da aralık çubuğu stratejileri

Bir aralık grafiği, fiyatın bu hareketi yapmasının ne kadar sürdüğüne bakılmaksızın, belirli bir fiyat hareket aralığını temsil etmek için oluşturulur. Bu, aralık boyutundan daha küçük olan fiyat hareketlerini filtreler ve trendleri görselleştirmeyi kolaylaştırır. cTrader'da, aralık çubuklarına dayalı kararlar veren otomatik işlem stratejileri geliştirme süreci, standart zaman tabanlı mum çubuklarına dayalı bu tür stratejileri oluşturma süreciyle aynıdır. Bu makalede ve ilgili videosunda, aralık çubuklarına dayalı basit bir stratejiyi nasıl geliştirebileceğinizi ve geriye dönük test yapabileceğinizi göstereceğiz.

Alım ve satım sinyallerini tanımlayın

İşlem mantığımızı kısaca özetleyeceğiz.

  • Alım sinyali - düşüş eğilimli bir aralık çubuğunu takip eden ve düşüş eğilimli çubuğun açılış fiyatının üzerinde kapanan yükseliş eğilimli bir aralık çubuğu olduğunda meydana gelir.
  • Satım sinyali - yükseliş eğilimli bir aralık çubuğunu takip eden ve yükseliş eğilimli çubuğun açılış fiyatının altında kapanan düşüş eğilimli bir aralık çubuğu olduğunda meydana gelir.

Alım sinyalinin yorumu, düşüş eğilimli bir trend güçlü bir dirençle karşılaştığında, bir toparlanma beklentisiyle alım yapma zamanı olduğudur. Ters kurulum satım sinyali için geçerlidir: yükseliş eğilimli bir trend dirençle karşılaşır ve bir satım emri vererek bundan faydalanmalıyız.

Örnek bir cBot oluşturun

cBot'umuzu oluşturmaya başlayabiliriz. Öncelikle gerekli parametreleri tanımlayacağız.

1
2
3
4
5
6
7
8
[Parameter(DefaultValue = 10000)]
public double Volume { get; set; }

[Parameter(DefaultValue = 20)]
public double StopLoss { get; set; }

[Parameter(DefaultValue = 20)]
public double TakeProfit { get; set; }

Alım sinyalimizi aşağıdaki gibi kodlayabiliriz.

1
2
3
4
if (Bars.Last(0).Close > Bars.Last(0).Open && Bars.Last(1).Close < Bars.Last(1).Open && Bars.Last(0).Close > Bars.Last(1).Open)
{
    ExecuteMarketOrder(TradeType.Buy, SymbolName, Volume,InstanceId, StopLoss, TakeProfit);
}

Satım sinyalimiz aşağıdaki gibidir.

1
2
3
4
if (Bars.Last(0).Close < Bars.Last(0).Open && Bars.Last(1).Close > Bars.Last(1).Open && Bars.Last(0).Close < Bars.Last(1).Open)
{
    ExecuteMarketOrder(TradeType.Sell, SymbolName, Volume,InstanceId, StopLoss, TakeProfit);
}

Stratejiyi geriye dönük test edin

Yeni cBot'umuzu oluşturduktan sonra Geriye Dönük Test sekmesine geçer ve bir geriye dönük test çalıştırırız. İşte sonuçlar.

Not

Aralık çubuğu stratejileri, mum çubuklarına dayalı stratejilerle aynı veri yapılarını kullanır. Örneğin, aralık çubuklarımızı almak için Bars koleksiyonunu kullandık; mum çubuklarını almaya çalışırken de aynı koleksiyonu kullanırdık. cTrader'ın bu özelliği, herhangi bir değişiklik yapmaya gerek kalmadan herhangi bir grafik türünde test edilebilir ve çalıştırılabilir stratejiler geliştirmenizi sağlar.

Bu eğitimde, aralık grafiklerine dayalı basit bir stratejiyi nasıl hızlıca geliştirebileceğinizi gösterdik. Ayrıca bu tür stratejilerin, zaman tabanlı mum çubukları içeren grafiklerde serbestçe yeniden kullanılabileceğini de önerdik.