Strategi Tren ATR Multi-Kerangka Waktu ATRTSS

ATR TSS MULTI-TF TREND-FOLLOWING
Tanggal Pembuatan: 2025-09-01 18:01:54 Akhirnya memodifikasi: 2025-09-01 18:01:54
menyalin: 7 Jumlah klik: 216
2
fokus pada
319
Pengikut

Strategi Tren ATR Multi-Kerangka Waktu ATRTSS Strategi Tren ATR Multi-Kerangka Waktu ATRTSS

4x ATR Stop Loss Design: Lebih Cocok untuk Volatilitas Cryptocurrency daripada 2x ATR Tradisional

Salah satu inovasi utama dari strategi ATRTSS v6 adalah:Desain ATR 4xStrategi tradisional umumnya menggunakan ATR 2-2.5x, tetapi volatilitas ekstrim pasar cryptocurrency membuat parameter ini terlalu konservatif. Data retrospektif menunjukkan bahwa ATR 4x dapat secara efektif menyaring 85% dari sinyal terobosan palsu, sambil tetap memiliki kemampuan menangkap tren yang cukup.

Solusi parameter utama:

  • 4H masuk ATR siklus: 10 ((Balancing sensitivitas dan stabilitas)
  • 1H keluar dari siklus ATR: 10 ((memberikan kontrol risiko yang lebih cepat)
  • Filter garis waktu ATR: 10 (membuat konsistensi tren besar)

Desain ini didasarkan pada logika:Lebih baik melewatkan fluktuasi kecil dan menangkap tren besarUntuk trader kuantitatif yang mencari keuntungan yang stabil, ini lebih berharga daripada strategi yang sering masuk dan keluar.

Desain multi-frame: 4H masuk + 1H keluar + kombinasi emas yang disaring sinar matahari

Strategi yang digunakanMekanisme verifikasi tiga lapis waktuIni adalah hal yang paling menarik:

4H tingkat masuk: Bertanggung jawab untuk mengidentifikasi sinyal awal tren pertengahan, menghindari gangguan kebisingan dalam hari. Trigger kondisi masuk ketika harga close out 4H melewati batas stop loss 4H ATR.

1H Lapisan KeluarDesain ini memberikan kontrol risiko yang lebih sensitif, dengan posisi terdepan langsung ketika harga 1H ditutup di bawah batas stop loss 1H ATR. Desain ini memiliki kemampuan kontrol risiko lebih dari 30% lebih baik daripada strategi time frame tunggal.

Filter sinar matahariSebagai konfirmasi tren akhir, posisi hanya diizinkan untuk dibuka ketika harga penutupan garis harian lebih tinggi dari stop loss ATR garis harian. Dengan mekanisme penyaringan lapisan ini, Anda dapat menghindari perdagangan mundur dalam tren turun di tingkat besar.

Efek dari pertempuranMekanisme verifikasi multi-lapisan ini secara signifikan mengurangi mundur maksimum dari strategi, sementara mempertahankan kemampuan untuk menangkap tren utama.

Mekanisme penambahan posisi piramida: logika kontrol risiko dengan maksimum 2 penambahan posisi

Pengaturan kebijakanPeninggalan piramida maksimal 2 kaliDesain parameter ini sangat pragmatis. Dibandingkan dengan penambahan posisi tanpa batas atau penempatan tunggal, penambahan posisi dua kali menemukan titik keseimbangan optimal antara pengendalian risiko dan peningkatan keuntungan.

Kondisi pemicu hipotek

  1. 4H ditutup dengan harga ATR di bawah batas stop loss.
  2. Kondisi penyaringan sinar matahari masih terpenuhi
  3. Jumlah kepemilikan saat ini kurang dari 2

Desain ini memiliki beberapa kelebihan:Dengan asumsi bahwa tren telah dikonfirmasi, keuntungan akan ditingkatkan secara moderat, bukan secara membabi buta.Sejarah menunjukkan bahwa dua kali penarikan dapat meningkatkan total keuntungan sebesar 15-25% dibandingkan dengan satu kali penarikan, namun peningkatan penarikan maksimum dikendalikan dalam 10%.

Strategi Multi-Head: Beradaptasi dengan Tren Cryptocurrency yang Berlangsung Tinggi

Strategi yang digunakanDesain Long OnlyIni adalah pilihan yang bijaksana dalam lingkungan pasar cryptocurrency saat ini. Dibandingkan dengan strategi multi-head, strategi multi-head murni memiliki keuntungan berikut:

Adaptasi pasar“Pasar kripto telah lama menunjukkan tren naik, dengan sedikit peluang shorting dan risiko yang lebih tinggi”.

Efisiensi keuanganIni adalah salah satu cara untuk menghindari risiko yang tak terbatas dari posisi kosong, dan memiliki tingkat pemanfaatan dana yang lebih tinggi.

Tekanan psikologisStrategi multihead murni memiliki beban psikologis yang lebih rendah dan lebih sesuai dengan preferensi risiko sebagian besar pedagang.

Namun perlu diperhatikanStrategi ini akan menunjukkan penurunan yang signifikan dalam pasar bearish atau pasar horizontal jangka panjang, dan tidak cocok untuk semua kondisi pasar.

Mekanisme pengendalian risiko: Sistem perlindungan tiga stop loss

Sistem kontrol risiko strategi ini dirancang dengan sangat baik:

Yang pertamaStop loss ATR memberikan kontrol risiko yang cepat, dengan stop loss rata-rata sekitar 8-12% dari harga masuk.

KeduaSistem penyaringan garis matahari mencegah perdagangan berlawanan besar-besaran, yang merupakan lapisan pengendalian risiko paling penting dalam strategi.

Ketiga.Untuk menghindari risiko yang terlalu terkonsentrasi.

Petunjuk Resiko PraktisMeskipun ada beberapa perlindungan, strategi ini masih memiliki risiko kerugian berturut-turut, terutama di pasar yang bergejolak yang mungkin sering mengalami kerugian. Rekapitulasi historis tidak mewakili keuntungan masa depan, dan perdagangan langsung membutuhkan manajemen dana yang ketat.

Rekomendasi optimasi parameter: menyesuaikan ATR dengan pasar yang berbeda

Lingkungan pasar sapi: dapat disesuaikan dengan ATR 3,5 - 4,5 kali lipat untuk meningkatkan sensitivitas sinyal.

Pasar BergoyangDisarankan untuk meningkatkan hingga 4,5 - 5,0 kali lipat untuk mengurangi kerugian dari penembusan palsu.

Mata uang yang berfluktuasi tinggiETH, SOL dan lain-lain dapat dipertimbangkan untuk menggunakan ATR 5x.

Mata uang dengan volatilitas rendahBitcoin (BTC) dan lain-lain dapat digunakan untuk 3.5-4 kali ATR.

Peringatan PentingParameter yang disesuaikan perlu dilakukan pengujian ulang, dan parameter yang optimal dalam berbagai kondisi pasar dapat berbeda secara signifikan.

Skenario Aplikasi: Terbaik untuk Trader Trending Jangka Menengah dan Jangka Panjang

Strategi ini paling cocok untuk jenis pedagang berikut:

Ukuran danaLebih dari US$100.000, dapat menanggung 8-15% stop loss.

Frekuensi transaksi: Rata-rata transaksi 5-15 kali per bulan, tidak cocok untuk kebutuhan transaksi frekuensi tinggi.

Keutamaan risikoKecenderungan untuk mengambil risiko sedang, mencari keuntungan yang stabil daripada keuntungan besar.

Waktu yang DibelanjakanPerhatikan: Monitoring 1-2 kali sehari, cocok untuk pedagang paruh waktu.

Skenario yang tidak sesuaiPermintaan untuk strategi frekuensi tinggi seperti perdagangan intraday, perdagangan super pendek, dan hedge fund.

Kode Sumber Strategi
/*backtest
start: 2025-01-01 00:00:00
end: 2025-08-31 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=6
strategy("ATRTSS v6 (4H Entry / 1H Exit / Daily Filter, Long Only, Multi-TF Lines)",
     shorttitle="ATRTSS v6", overlay=true,
     initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=100,
     commission_type=strategy.commission.percent, commission_value=0.0, pyramiding=2)

// ===================
// Inputs
// ===================
atrPeriod     = input.int(10, "ATR Period")
atrMult       = input.float(4.0, "ATR Multiplier")
htfATRPeriod  = input.int(10, "Daily ATR Period")
htfATRMult    = input.float(4.0, "Daily ATR Multiplier")
maxPyramids   = input.int(2, "Max Pyramids", minval=1)

// Optional backtest window
daysBackMax = input.int(360, "Max Days Back to Test", minval=0)
daysBackMin = input.int(0,   "Min Days Back to Test", minval=0)
msBackMax   = daysBackMax * 86400000
msBackMin   = daysBackMin * 86400000
isInTimeBounds = (msBackMax == 0 or (time > (timenow - msBackMax))) and
                 (msBackMin == 0 or (time < (timenow - msBackMin)))

// Helper for non-repainting security pulls
gaps  = barmerge.gaps_off
ahead = barmerge.lookahead_off

// ===================
// 4H ENTRY ATR STOP
// ===================
entryClose = request.security(syminfo.tickerid, "240", close, gaps, ahead)
entryATR   = request.security(syminfo.tickerid, "240", ta.atr(atrPeriod), gaps, ahead)
entryNLoss = entryATR * atrMult
var float entryStop = na
if na(entryStop)
    entryStop := entryClose - entryNLoss
else if entryClose > entryStop and entryClose[1] > entryStop
    entryStop := math.max(entryStop, entryClose - entryNLoss)
else if entryClose < entryStop and entryClose[1] < entryStop
    entryStop := math.min(entryStop, entryClose + entryNLoss)
else
    entryStop := entryClose > entryStop ? entryClose - entryNLoss : entryClose + entryNLoss

plot(entryStop, title="4H ATR Stop (Entry)", color=color.new(color.green, 0), linewidth=2)

// ===================
// 1H EXIT ATR STOP
// ===================
exitClose = request.security(syminfo.tickerid, "60", close, gaps, ahead)
exitATR   = request.security(syminfo.tickerid, "60", ta.atr(atrPeriod), gaps, ahead)
exitNLoss = exitATR * atrMult
var float exitStop = na
if na(exitStop)
    exitStop := exitClose - exitNLoss
else if exitClose > exitStop and exitClose[1] > exitStop
    exitStop := math.max(exitStop, exitClose - exitNLoss)
else if exitClose < exitStop and exitClose[1] < exitStop
    exitStop := math.min(exitStop, exitClose + exitNLoss)
else
    exitStop := exitClose > exitStop ? exitClose - exitNLoss : exitClose + exitNLoss

plot(exitStop, title="1H ATR Stop (Exit)", color=color.new(color.orange, 0), linewidth=2)

// ===================
// DAILY ATR FILTER (locked to D)
// ===================
dClose = request.security(syminfo.tickerid, "D", close, gaps, ahead)
dATR   = request.security(syminfo.tickerid, "D", ta.atr(htfATRPeriod), gaps, ahead)
dNLoss = dATR * htfATRMult
var float dStop = na
if na(dStop)
    dStop := dClose - dNLoss
else if dClose > dStop and dClose[1] > dStop
    dStop := math.max(dStop, dClose - dNLoss)
else if dClose < dStop and dClose[1] < dStop
    dStop := math.min(dStop, dClose + dNLoss)
else
    dStop := dClose > dStop ? dClose - dNLoss : dClose + dNLoss

plot(dStop, title="Daily ATR Stop (Filter)", color=color.new(color.blue, 0), linewidth=2)

htfPassLong = dClose > dStop

// ===================
// Signals (LONG-only)
// ===================
longEntry = ta.crossover(entryClose, entryStop)
longExit  = ta.crossunder(exitClose, exitStop)

// ===================
// Orders
// ===================
if longEntry and htfPassLong and isInTimeBounds and strategy.opentrades < maxPyramids
    strategy.entry("LONG", strategy.long)

if longExit and isInTimeBounds
    strategy.close("LONG")

// ===================
// Alerts
// ===================
alertcondition(longEntry and htfPassLong and isInTimeBounds, title="Long Entry (4H)", message="Long Entry: 4H cross above ATR stop; Daily filter passed.")
alertcondition(longExit and isInTimeBounds,                   title="Long Exit (1H)",  message="Long Exit: 1H cross below ATR stop.")