Strategi Perdagangan Indeks Tren Berarah

Penulis:ChaoZhang, Tanggal: 2023-09-18 17:07:55
Tag:

Gambaran umum

Strategi ini menggunakan Indeks Tren Arah (DTI) untuk menentukan arah tren harga untuk tren mengikuti perdagangan. DTI membandingkan perubahan harga tertinggi dan terendah selama periode untuk menilai tren, dengan ambang atas dan bawah menghasilkan sinyal.

Logika Strategi

Menghitung nilai perubahan harga dari perubahan harga tertinggi dan terendah selama periode. Menerapkan beberapa rata-rata bergerak eksponensial untuk ini untuk memperoleh kurva DTI. Tetapkan ambang batas atas dan bawah untuk DTI. Ketika indikator melintasi ambang batas atas, sinyal panjang dihasilkan. Melintasi di bawah ambang batas bawah memberikan sinyal pendek. Tahan posisi sampai sinyal berikutnya terjadi.

Keuntungan

  • DTI secara akurat menentukan arah tren dengan lebih sedikit sinyal
  • Batas-batas menyaring keluar yang tidak signifikan menghindari perdagangan berisik
  • Terus mengikuti tren, tidak terpengaruh oleh fluktuasi jangka pendek
  • Ruang penyesuaian parameter yang besar untuk menyeimbangkan responsif

Risiko

  • Titik pembalikan tren tidak dapat ditentukan secara akurat, risiko kerugian
  • Penyesuaian parameter DTI yang buruk berisiko kehilangan peluang
  • Penyelenggaraan jangka panjang dapat mengakibatkan pengambilan yang lebih besar
  • Frekuensi perdagangan rendah tidak cocok untuk perdagangan frekuensi tinggi

Risiko dapat dikurangi dengan memperpendek periode perhitungan, menyesuaikan ambang batas, atau menambahkan indikator pembalikan.

Peningkatan

  • Uji kombinasi parameter yang berbeda untuk menghitung DTI
  • Mengoptimalkan ambang batas panjang/pendek
  • Pertimbangkan untuk menambahkan strategi stop loss untuk mengendalikan risiko
  • Uji ketahanan pada produk yang berbeda

Kesimpulan

Strategi DTI secara akurat menentukan arah tren dari sinyal yang jelas, memungkinkan keuntungan jangka panjang yang stabil.


/*backtest
start: 2023-08-18 00:00:00
end: 2023-09-17 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 29/03/2017
// This technique was described by William Blau in his book "Momentum,
// Direction and Divergence" (1995). His book focuses on three key aspects 
// of trading: momentum, direction and divergence. Blau, who was an electrical 
// engineer before becoming a trader, thoroughly examines the relationship between 
// price and momentum in step-by-step examples. From this grounding, he then looks 
// at the deficiencies in other oscillators and introduces some innovative techniques, 
// including a fresh twist on Stochastics. On directional issues, he analyzes the 
// intricacies of ADX and offers a unique approach to help define trending and 
// non-trending periods.
// Directional Trend Index is an indicator similar to DM+ developed by Welles Wilder. 
// The DM+ (a part of Directional Movement System which includes both DM+ and 
// DM- indicators) indicator helps determine if a security is "trending." William 
// Blau added to it a zeroline, relative to which the indicator is deemed positive or 
// negative. A stable uptrend is a period when the DTI value is positive and rising, a 
// downtrend when it is negative and falling. 
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Directional Trend Index (DTI)", shorttitle="DTI")
r = input(14, minval=1)
s = input(10, minval=1)
u = input(5, minval=1)
OS = input(45, minval=1)
OB = input(-45, maxval=-1)
reverse = input(false, title="Trade reverse")
hline(0, color=green, linestyle=line)
xHMU = iff(high - high[1] > 0, high - high[1], 0)
xLMD = iff(low - low[1] < 0, -(low - low[1]), 0)
xPrice = xHMU - xLMD
xPriceAbs = abs(xPrice)
xuXA = ema(ema(ema(xPrice, r),s),u)
xuXAAbs = ema(ema(ema(xPriceAbs, r),s),u)
Val1 = 100 * xuXA
Val2 = xuXAAbs
DTI = iff(Val2 != 0, Val1 / Val2, 0)
pos = iff(DTI > OS, -1,
	     iff(DTI < OB, 1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(DTI, color=maroon, title="DTI")
plot(OB, color=blue, title="OB")
plot(OS, color=red, title="OS")

Lebih banyak