Strategi mengikuti tren berdasarkan harga penutupan hari sebelumnya dan indikator ATR


Tanggal Pembuatan: 2024-01-31 14:39:09 Akhirnya memodifikasi: 2024-01-31 14:39:09
menyalin: 3 Jumlah klik: 676
1
fokus pada
1617
Pengikut

Strategi mengikuti tren berdasarkan harga penutupan hari sebelumnya dan indikator ATR

Ringkasan

Strategi ini didasarkan pada harga penutupan hari sebelumnya dan indikator ATR untuk menetapkan harga buka posisi dan harga tutup posisi kosong, untuk melacak tren. Jika harga menembus harga buka posisi, buka posisi lebih banyak untuk melakukan shorting, stop loss atau stop loss.

Prinsip Strategi

Strategi ini menggunakan harga penutupan, harga tertinggi, harga terendah, dan indikator ATR hari sebelumnya untuk menghitung harga masuk dan harga berhenti. Rumus perhitungan spesifik adalah sebagai berikut:

Harga TPup = harga penutupan hari sebelumnya + ATR* 0.8 TPdown = harga penutupan hari sebelumnya - ATR* 0.8

Slup Stop Loss Multihead = harga penutupan hari sebelumnya + ATR* 0.2 Stop loss pada posisi kosong sldown = harga penutupan hari sebelumnya - ATR* 0.2

Multiple stop loss profitlevelup = harga terendah sehari sebelumnya + ATR* 1.7
Stop loss leveldown = harga tertinggi sehari sebelumnya - ATR* 1.7

Ketika harga menembus harga pembukaan posisi TPup, lakukan lebih dari 10 kali; Ketika harga menembus harga pembukaan posisi TPdown, lakukan 10 kali. Setelah itu atur stop loss dan stop stop, harga menyentuh harga stop loss dan stop loss, dan stop stop setelah menyentuh harga stop stop.

Analisis Keunggulan

Strategi ini memiliki beberapa keuntungan:

  1. Dengan menggunakan indikator ATR untuk mengatur harga buka posisi dan harga stop loss yang dinamis, dapat disesuaikan dengan fluktuasi pasar, sehingga perdagangan lebih sesuai dengan lingkungan pasar.

  2. Menggunakan harga penutupan hari sebelumnya untuk menentukan arah, kemudian digabungkan dengan indikator ATR untuk menentukan harga transaksi yang spesifik, untuk menghindari kesalahan harga real-time yang terlalu berisik.

  3. Selain itu, Anda juga dapat mengatur mekanisme stop loss dan stop loss untuk mengontrol risiko dalam satu transaksi.

Analisis risiko

Risiko utama dari strategi ini adalah:

  1. Harga yang ditetapkan oleh indikator ATR mungkin terlalu ideal dan tidak dapat benar-benar mencerminkan kondisi pasar, menyebabkan seringnya stop loss. Anda dapat menyesuaikan parameter ATR atau meningkatkan stop loss secara tepat.

  2. Harga penutupan hari sebelumnya tidak dapat menentukan tren masa depan, jika terjadi pembalikan tajam, akan menyesatkan pilihan arah perdagangan. Anda dapat mempertimbangkan untuk mengkonfirmasi tren dalam kombinasi dengan indikator lain.

  3. Hentikan dan berhenti posisi dapat dimanipulasi yang dipicu, tidak dapat benar-benar berhenti. Anda dapat mengatur komponen batch berhenti, untuk menghindari tertutup.

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Optimalkan parameter ATR agar harga transaksi lebih sesuai dengan volatilitas pasar.

  2. Menambahkan mekanisme penilaian tren, menghindari perdagangan berbalik pasar.

  3. Mengatur stop loss margin untuk mengurangi probabilitas keuntungan yang dipicu dengan tetap menguntungkan.

  4. Setting batch stop loss and stop stop untuk mengurangi probabilitas kebocoran dan kehilangan.

  5. Menambahkan mekanisme manajemen posisi, dapat meningkatkan posisi pada fase tren.

Meringkaskan

Strategi ini didasarkan pada harga perdagangan hari sebelumnya dan indikator ATR yang mengatur dinamika harga perdagangan, untuk melacak tren secara efektif. Pada saat yang sama, pengaturan mekanisme stop loss dan stop loss untuk mengendalikan risiko perdagangan tunggal. Arah pengoptimalan meliputi pengoptimalan parameter, peningkatan mekanisme penilaian, penyesuaian stop loss, dan manajemen posisi. Secara keseluruhan, strategi ini lebih baik dalam mencapai efek perdagangan yang mengikuti tren.

Kode Sumber Strategi
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("PC with ATR Strategy (by Zhipengcfel)", shorttitle="PC_ATR", pyramiding=1, overlay=true)

// Zhipengcfel's Previous day's close with ATR Strategy
//
// Version 1.0
// @copyright Idea by Zhipengcfel on June 29, 2017.

//Previous day's close plus ATR strategy. 
//Buy (if breaking PC+ATR*0.8) or sell (if breaking PC-0.8*ATR). 

//This is just a demo vision and can not be used for real auto trading



///////////// ATR value
ATRlength = input(14, minval=1, title="lookback length of ATR")
//ATR = atr(ATRlength)
ATR = request.security(syminfo.tickerid, 'D', atr(ATRlength))

///////////// Entry levels and target levels
entr = input(0.8, minval=0.1, step = 0.05, title="Entry level for ATR")
tplevel = input(1.7, minval=0.1, step = 0.05, title="Exit level for ATR")
yesterday = request.security(syminfo.tickerid, 'D', close[1])
dl = request.security(syminfo.tickerid, 'D', low[1])
dh = request.security(syminfo.tickerid, 'D', high[1])
TPup = yesterday+entr*ATR
TPdown = yesterday-entr*ATR
profitlevelup = dl+tplevel*ATR
profitleveldown = dh-tplevel*ATR

///////////// Stop loss level
sl = input( 0.2  ,minval=0.01, step = 0.05, title="Stop loss level for ATR") //82 for 2, 83 for 3 and more positions
slup = yesterday+sl*ATR
sldown = yesterday-sl*ATR

///////////// Starting year to backtest
yer = input( 2014  , title="Backtest Starting year")


///////////// strategy: PC + ATR
if (close > TPup) and (close < profitlevelup)
    strategy.entry("LONG", strategy.long, 10, comment="Buy", when = year > yer, oca_name="My oca")
    strategy.exit("Stopped", "LONG",  stop = slup, limit= profitlevelup, oca_name="My oca")
            

if (close < TPdown) and (close > profitleveldown)
    strategy.entry("SHORT", strategy.short, 10, comment="Sell", when = year > yer, oca_name="My oca")
    strategy.exit("Stopped", "SHORT", stop = sldown, limit= profitleveldown, oca_name="My oca")