Strategi mengikuti tren berdasarkan amplop Nadaraya-Watson dan indikator ROC


Tanggal Pembuatan: 2024-01-19 15:14:23 Akhirnya memodifikasi: 2024-01-19 15:14:23
menyalin: 1 Jumlah klik: 2141
1
fokus pada
1617
Pengikut

Strategi mengikuti tren berdasarkan amplop Nadaraya-Watson dan indikator ROC

Ringkasan

Strategi ini disebut dengan strategi pelacakan tren double envelope. Strategi ini menggunakan garis envelope Nadaraya-Watson (NW) dan indikator ROC untuk mengidentifikasi arah tren dan melakukan pelacakan tren. Strategi ini melakukan lebih banyak ketika garis envelope NW membesar dan ROC adalah positif; kosong ketika garis envelope NW menyusut dan ROC negatif.

Prinsip Strategi

Strategi pelacakan tren dua amplop terutama didasarkan pada garis amplop NW dan indikator ROC untuk menilai waktu masuk. Garis amplop NW adalah teknik smoothing non-parameter yang dapat digunakan untuk menggambarkan kisaran tinggi dan rendah harga. Indikator ROC dapat mengidentifikasi kecepatan dan intensitas perubahan harga.

Secara khusus, strategi ini pertama-tama menghitung batas atas NW dan batas bawah. Ketika harga melewati batas atas NW dan ROC > 0, maka harga berada dalam tren naik, dan ketika harga jatuh dari batas bawah NW dan ROC < 0, maka harga berada dalam tren turun.

Setelah melakukan lebih banyak shorting, strategi ini akan mengatur kondisi stop loss dan stop stop. Stop loss adalah poin tetap di bawah harga masuk, dan stop loss adalah beberapa kali lipat dari titik stop loss di atas harga masuk. Ini dapat secara efektif mengendalikan risiko perdagangan tunggal.

Secara keseluruhan, strategi pelacakan tren dua amplop menggabungkan garis amplop NW dan indikator ROC untuk menentukan arah tren, dan stop loss stop untuk mengendalikan risiko, yang memungkinkan perdagangan pelacakan tren.

Analisis Keunggulan

Strategi pelacakan tren dua amplop memiliki beberapa keuntungan:

  1. Dengan menggunakan garis amplop NW untuk menentukan arah tren, Anda dapat secara efektif mengidentifikasi tren harga dan mengurangi sinyal palsu.

  2. Menggabungkan indikator ROC untuk menentukan kekuatan tren, menghindari kesalahan perdagangan di pasar yang bergejolak.

  3. Pengaturan stop loss untuk mengendalikan risiko, dapat menghentikan kerugian sebelum kerugian berkembang. Pada saat yang sama juga memastikan sebagian keuntungan.

  4. Strategi ini memiliki parameter yang lebih sedikit, sederhana, mudah dipahami dan dioptimalkan.

  5. Aplikasi ini dapat diterapkan pada semua jenis pasar, termasuk pasar forex, mata uang digital, dan saham.

Analisis risiko

Strategi pelacakan tren amplop ganda juga memiliki risiko sebagai berikut:

  1. Strategi mengejar tren mudah mengalami kerugian besar ketika tren berbalik. Perlu penyesuaian parameter yang tepat atau intervensi manual untuk keluar.

  2. Stop loss yang terlalu longgar akan meningkatkan kerugian. Anda dapat mengurangi jumlah stop loss dengan tepat.

  3. Dalam pasar yang sangat bergejolak, stop loss dapat ditembus, menyebabkan hilangnya kendali atas kerugian. Anda dapat mempertimbangkan real-time stop loss atau stop loss dinamis.

  4. Strategi ini tidak mempertimbangkan biaya transaksi dan slippage.

Secara keseluruhan, risiko ini dapat dikurangi dengan penyesuaian parameter, optimasi strategi stop loss, dan intervensi manual yang tepat.

Arah optimasi strategi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Optimalkan parameter NW, seperti periode jendela, ukuran bandwidth, dan lain-lain, untuk mencari kombinasi parameter yang optimal.

  2. Optimalkan parameter ROC seperti ukuran jendela untuk mengurangi sinyal palsu.

  3. Cobalah indikator lain seperti KDJ, MACD, dan lain-lain untuk menilai tren dan masuk.

  4. Strategi Stop Loss yang dioptimalkan secara dinamis dengan algoritma pembelajaran mesin.

  5. Meningkatkan sinyal pembalikan tren, dan keluar dari lapangan jika tren berbalik.

  6. Pertimbangkan rincian seperti slippage, biaya, dan probabilitas kegagalan stop loss di dunia nyata untuk membuat strategi lebih dekat dengan dunia nyata.

Strategi ini dapat meningkatkan stabilitas dan profitabilitas strategi melalui pengoptimalan parameter, indikator dan algoritma.

Meringkaskan

Strategi ini disebut strategi pelacakan tren segel ganda. Strategi ini menggunakan garis segel NW dan indikator ROC untuk menentukan arah tren masuk, sekaligus mengatur stop loss stop, dan memungkinkan perdagangan pelacakan tren. Strategi ini sederhana dan efektif, keunggulan adalah dapat mengikuti tren, mengendalikan risiko, dan berlaku untuk berbagai pasar; Kelemahannya adalah mudah kehilangan dalam perubahan tren dan sulit untuk menangkap reversal.

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

//@version=5
strategy("Combined Strategy", overlay=true)

// --- Nadaraya-Watson Envelope [LUX] ---
length_NW = input.float(500, title='NW Window Size', maxval=500, minval=0)
h_NW = input.float(8.0, title='NW Bandwidth')
mult_NW = input.float(3.0, title='NW Multiplier')
src_NW = input(close, title='NW Source')
up_col_NW = input.color(#39ff14, title='NW Upper Color', inline='col')
dn_col_NW = input.color(#ff1100, title='NW Lower Color', inline='col')
disclaimer_NW = input(false, title='NW Hide Disclaimer')

// --- Rate Of Change (ROC) ---
length_ROC = input.int(9, title='ROC Window Size', minval=1)
source_ROC = input(close, title='ROC Source')

roc = 100 * (source_ROC - source_ROC[length_ROC]) / source_ROC[length_ROC]

// --- Calcola Stop Loss e Take Profit in Pips ---
pip_multiplier = input(0.0001, title="PIP Multiplier")  // Moltiplicatore per convertire da pips a valore numerico

stop_loss_pips = 4
take_profit_multiplier = 2.1

stop_loss_value = close - stop_loss_pips * pip_multiplier
take_profit_value = close + stop_loss_pips * take_profit_multiplier * pip_multiplier

// --- Conditions for Entry ---
entry_condition_long = src_NW + mult_NW * mult_NW > 0 and roc > 0 and close > close[1]
entry_condition_short = src_NW - mult_NW * mult_NW < 0 and roc < 0 and close < close[1]

// --- Strategy Logic ---
if (entry_condition_long)
    strategy.entry("Buy", strategy.long)

if (entry_condition_short)
    strategy.entry("Sell", strategy.short)

if (strategy.position_size > 0)
    strategy.exit("Stop Loss/Profit", from_entry="Buy", loss=stop_loss_value, profit=take_profit_value)

if (strategy.position_size < 0)
    strategy.exit("Stop Loss/Profit", from_entry="Sell", loss=stop_loss_value, profit=take_profit_value)

// --- Plotting ---
plot(roc, color=#2962FF, title="ROC")
hline(0, color=#787B86, title="Zero Line")