Çubuk Büyüteç ile daha doğru bir şekilde geriye dönük test yapın

May 30, 2022

Premium hesap sahipleri artık Çubuk Büyüteç seçeneğini kullanarak strateji geri testlerinde daha gerçekçi sipariş dolguları elde edebilirler. Bu araç, bir çubuk içindeki fiyat hareketinde daha derin ayrıntı düzeyi elde etmek için çubuk içi incelemeyi kullanır ve daha hassas emir dolumlarına olanak tanır. Seçildiğinde, Çubuk Büyüteç modu, aracı fiyat hareketi üzerinde yapması gereken varsayımları yalnızca geçmiş çubuklar için OHLC değerleriyle değiştirir.

Çubuk Büyüteç ile kullanılan çubuk içi zaman dilimi, grafiğin zaman dilimine dinamik olarak ayarlanır. Bu tabloda, giderek daha yüksek grafik zaman dilimleri için kullanılan çubuk içi zaman dilimi listelenmektedir:

Chart timeframe, T Intrabar timeframe used
1S < T < 30S 1S
30S <= T < 5 5S
5 <= T < 30 15S
30 <= T < 60 1
60 <= T < 240 5
240 <= T < D 15
D <= T < W 60
W <= T < 2W 120
T >= 2W D

Table 1. Intrabar timeframes used

Aşağıda, Çubuk Büyüteç seçeneğini kullanmadan durdurma emri kullanan bir strateji örneği verilmiştir:

//@version=5
strategy("bar_magnifier_demo", overlay = true, use_bar_magnifier = false)

if bar_index  == 10381
    strategy.entry("Long", strategy.long, stop = 157.0)
    strategy.exit("Exit", stop = 156.0)

Aracı kurum emülatörü, #10381 numaralı bloğa bir durdurma emri verir ve stop = 157.0 koşulu karşılanır karşılanmaz bir sonraki çubukta 157.0 fiyatla bir emri doldurur. Aracı kurum emülatörü, çubuğun içinde fiyatın “close” dan “low”e, sonra high” e (girişi tetikleyen), ardından “close” a gittiğini tahmin eder. Birkaç çubuktan sonra (geçerli zaman dilimi için 11 gün), durma fiyatı = 156,0 ile pozisyondan çıkma koşulu tetiklenir:

Çubuk büyüteci etkinleştirildiğinde (parameter use_bar_magnifier = true), çıkış ve giriş fiyatları değişmez; ancak pozisyondan çıkış, girişin gerçekleştiği aynı çubuk içinde gerçekleşir:

//@version=5
strategy("bar_magnifier_demo", overlay = true, use_bar_magnifier = true)

if bar_index  == 10381
    strategy.entry("Long", strategy.long, stop = 157.0)
    strategy.exit("Exit", stop = 156.0)

Aynı sembol için alt zaman çizelgesi grafiğini kontrol edersek (bar içi zaman çizelgesi tablosuna göre 60 dakikalık bir grafik) ve 10382 bara karşılık gelen zaman aralığını bulursak, bunu saatlik zaman diliminde, 157.0’a ulaştıktan ve tetikledikten sonra görebiliriz. giriş, fiyat 156,0’ın altına düşerek stop = 156.0 koşulunu gerçekleştirir:

Çubuk Büyüteç açıkken, aracı kurum emülatörü, geriye dönük test sırasında daha düşük zaman dilimlerinden fiyat değişikliklerine erişerek davranışını, aynı zaman dilimi için stratejiyi ileriye dönük test etme sırasında olanlara daha benzer hale getirir.

Limit ve stop emirlerinde daha kesin doldurmalar elde etmek için daha düşük zaman dilimlerini kullanan bir strateji örneği:

//@version=5
strategy(
 title                  =   "Magnifier On",
 overlay                =   true, 
 calc_on_order_fills    =   true,
 calc_on_every_tick     =   true,
 precision              =   3, 
 default_qty_type       =   strategy.cash, 
 currency               =   currency.USD, 
 default_qty_value      =   1000, 
 initial_capital        =   1000,
 use_bar_magnifier      =   true)

trailPoints = input.int(150, "Trail Points (in ticks)")
trailOffset = input.int(100, "Trail Offset (in ticks)")
stopSize    = input.int(300, "Stop Offset (in ticks)")

longCondition = bar_index % 25 == 0 and not (strategy.closedtrades.exit_bar_index(strategy.closedtrades - 1) == bar_index)

if (longCondition)
    strategy.entry("Long", strategy.long)

strategy.exit("Exit", loss = stopSize, trail_points = trailPoints, trail_offset = trailOffset)

Çubuk büyüteç seçeneği açıkken, strateji sonuçları gerçek zamanlı olacaklarına daha yakındır. Test stratejimizin kârı, açıkken %50 daha kötüdür, bu da stratejinin kendisi için cesaret kırıcıdır, ancak daha doğru geriye dönük test verileri elde etmek için daha düşük zaman çerçevesi verileri kullanmanın ne kadar önemli olabileceğini gösterir:

Çubuk büyüteç seçeneği, stratejinin “Ayarlar/Özellikler” penceresindeki ilgili giriş arasında geçiş yapılarak değiştirilebilir:

Seçeneği kapattıktan sonra, strateji eski mantıkla yeniden hesaplanır ve bize stratejinin davranışı hakkında daha az doğru bilgi gösterir:

Yeni Pine özelliklerinden haberdar olmak için lütfen Kullanım Kılavuzu’nun Sürüm notlarına göz atın. PineCoders hesabı ayrıca Squawk Box Telegram kanalından, Twitter hesabından ve TradingView’deki “Pine Script™ Q&A” genel sohbetinden güncellemeler yayınlar.

Bu geliştirmeleri yararlı bulacağınızı umuyoruz. Lütfen bize geri bildiriminizi göndermeye devam edin. TradingView’i kullanıcılarımız için oluşturuyoruz ve sizden haber almayı seviyoruz.

Look first Then leap

TradingView sizin için tasarlandı, bu nedenle muhteşem özelliklerimizden en iyi şekilde yararlandığınızdan emin olun
Grafiği Açın