Strategi Divergensi Arah Momentum


Tanggal Pembuatan: 2023-12-27 15:37:31 Akhirnya memodifikasi: 2023-12-27 15:37:31
menyalin: 0 Jumlah klik: 724
1
fokus pada
1623
Pengikut

Strategi Divergensi Arah Momentum

Ringkasan

Strategi Momentum Direction Divergence adalah salah satu teknik yang dijelaskan oleh William Blau dalam bukunya Momentum, Direction and Divergence. Strategi ini berfokus pada tiga aspek penting: Momentum, Direction and Divergence. Mr. Blau adalah seorang insinyur listrik, kemudian menjadi seorang trader, dan ia mempelajari hubungan antara harga dan momentum.

Strategi ini memetakan ergotic CSI dan garis gesernya untuk memfilter kebisingan.

Prinsip Strategi

Fungsi fADX yang didefinisikan di awal kode adalah fungsi adaptif dari indeks arah gerak (((ADX), yang menerima parameter Len untuk menunjukkan siklus kelancaran. Fungsi ini menghitung rentang riil (((TR) dari rata-rata bergerak pilihan (((RMA) sebagai pembagi, menghitung massa gerak multihead dan massa gerak tanpa kepala (RMA) sebagai molekul, kemudian membagi hasil rasio untuk menunjukkan intensitas relatif dari massa gerak multihead dan massa gerak kosong.

Kemudian adalah definisi parameter strategi. r adalah parameter smoothing ATR, Length adalah panjang ADX, BigPointValue adalah panjang titik besar, SmthLen adalah panjang smoothing CSI, SellZone dan BuyZone adalah zona jual dan beli yang memenuhi syarat.

Logika kunci dalam menghitung CSI ⋅ pertama menghitung amplitudo fluktuasi riil ATR dan ADX ⋅ kemudian menghitung faktor hukuman K, yang mencakup nilai titik besar, ATR dan pertimbangan ADX ⋅ menghitung residu standar nRes, yang menggabungkan informasi tentang ATR, ADX dan harga penutupan ⋅ akhirnya menghitung nilai CSI, lalu meminta SMA yang halus ⋅

Berdasarkan nilai SMA dari CSI menentukan arah perdagangan. Jika lebih tinggi dari BuyZone, maka akan lebih tinggi, dan jika lebih rendah dari SellZone, maka akan lebih rendah. Gambarkan kurva CSI dan SMA-nya, dan tanda warna pada berbagai zona perdagangan.

Analisis Keunggulan

Strategi ini menggabungkan keunggulan dari indikator momentum ATR dan indikator tren ADX, mempertimbangkan volatilitas pasar dan juga tingkat tren, menghindari keterbatasan hanya menggunakan ATR dan hanya menggunakan ADX. Desain faktor hukuman K dengan cerdik menggabungkan hubungan antara indikator ini dengan nilai titik besar.

Standarisasi Residu nRes ditambahkan untuk memanfaatkan informasi harga, tidak hanya memperhatikan tren dinamika, tetapi juga memperhatikan tingkat mutlak harga, yang berbeda dengan osilator umum, yang meningkatkan kinerja strategi.

Pengolahan halus dan penilaian segmen memberikan sinyal perdagangan yang jelas untuk keputusan strategis, yang menguntungkan operasi di tempat.

Analisis risiko

Strategi ini sangat sensitif terhadap pengaturan parameter, seperti panjang siklus ATR dan ADX, pengaturan nilai titik besar, parameter smoothing CSI, dan lain-lain yang dapat mempengaruhi kinerja strategi. Kombinasi parameter yang sesuai perlu ditentukan melalui banyak pengembalian.

CSI sebagai sebuah osilator yang baru diusulkan, efektivitasnya perlu diverifikasi di lebih banyak pasar yang berbeda. Jika indikator ini tidak bekerja dengan baik, maka akan mempengaruhi profitabilitas strategi.

Strategi itu sendiri tidak memiliki mekanisme stop loss, langsung melakukan lebih banyak shorting sesuai dengan sinyal CSI, ada tingkat risiko tertentu, yang perlu digabungkan dengan stop loss untuk digunakan.

Arah optimasi

Anda dapat menguji kombinasi parameter di pasar yang berbeda untuk menemukan kombinasi yang lebih umum.

Bisa diperkenalkan mekanisme panjang siklus ADX yang dinamis, menyesuaikan parameter ADX sesuai dengan kondisi pasar.

Dapat dikombinasikan dengan indikator oscillator lainnya untuk menentukan waktu jual beli, membuat strategi lebih stabil. Efek seperti penyebaran di bawah, deviasi di atas dan sebagainya.

Anda dapat menambahkan strategi stop loss untuk meningkatkan keseluruhan strategi Anda.

Meringkaskan

Strategi penyebaran arah momentum mengintegrasikan keunggulan dari berbagai indikator, menggunakan harga, momentum, dan tren untuk mendesain indikator CSI dan melakukan perdagangan dalam beberapa dimensi. Pengaturan parameter strategi ini fleksibel, berkinerja tinggi, layak untuk diuji dan dioptimalkan lebih lanjut, dan dapat menjadi alat yang menguntungkan untuk perdagangan kuantitatif.

Kode Sumber Strategi
/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 20/06/2018
// This is one of the techniques described by William Blau in his book 
// "Momentum, Direction and Divergence" (1995). If you like to learn more, 
// we advise you to read this book. 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.
// This indicator plots Ergotic CSI and smoothed Ergotic CSI to filter out noise. 
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
fADX(Len) =>
    up = change(high)
    down = -change(low)
    trur = rma(tr, Len)
    plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur)
    minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur)
    sum = plus + minus 
    100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len)

strategy(title="Ergodic CSI Backtest")
r = input(32, minval=1)
Length = input(1, minval=1)
BigPointValue = input(1.0, minval=0.00001)
SmthLen = input(5, minval=1)
SellZone = input(0.004, minval=0.00001)
BuyZone = input(0.024, minval=0.001)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
source = close
K = 100 * (BigPointValue / sqrt(r) / (150 + 5))
xTrueRange = atr(1) 
xADX = fADX(Length)
xADXR = (xADX + xADX[1]) * 0.5
nRes = iff(Length + xTrueRange > 0, K * xADXR * xTrueRange / Length,0)
xCSI = iff(close > 0,  nRes / close, 0)
xSMA_CSI = sma(xCSI, SmthLen)
pos = iff(xSMA_CSI > BuyZone, 1,
       iff(xSMA_CSI <= SellZone, -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(xCSI, color=green, title="Ergodic CSI")
plot(xSMA_CSI, color=red, title="SigLin")