Strategi Purata Pergerakan Berwajaran Pembalikan


Tarikh penciptaan: 2023-11-28 14:11:33 Akhirnya diubah suai: 2023-11-28 14:11:33
Salin: 0 Bilangan klik: 640
1
fokus pada
1617
Pengikut

Strategi Purata Pergerakan Berwajaran Pembalikan

Gambaran keseluruhan

Gagasan utama strategi ini adalah untuk membina kedudukan dengan menggunakan kawasan sokongan atau rintangan yang penting di sekitar garis purata bergerak. Apabila harga naik atau turun, kemungkinan besar akan membentuk sokongan atau tekanan, yang menghasilkan peluang untuk berbalik.

Prinsip Strategi

Strategi ini didasarkan pada indikator rata-rata bergerak bertimbangan, yang pertama mengira rata-rata bergerak bertimbangan untuk jangka masa tertentu, dan kemudian memantau apakah harga mengalami perlanggaran dengan ketinggian tertentu. Apabila harga mencapai jarak tertentu dari rata-rata, gambar petunjuk panah dan buka kedudukan untuk membina kedudukan.

Strategi memilih sama ada menggunakan tracking stop atau menggunakan jarak stop tetap dengan parameter trail. Anda boleh mengawal risiko dengan menyesuaikan amplitudo stop. Anda boleh mengunci sebahagian keuntungan dengan parameter harga tunggal terhad. Anda juga boleh membatasi pembukaan kedudukan pada masa tertentu dengan penapisan masa.

Analisis kelebihan

Kelebihan terbesar strategi ini adalah menggunakan keadaan berbalik dan gabungan dengan garis rata-rata untuk mencari titik-titik penting pasaran untuk membuka kedudukan. Peluang menang dan rugi strategi berbalik biasanya lebih baik, dan risikonya mudah dikawal.

Oleh kerana ia dibina di atas dasar garis rata-rata bergerak, ruang untuk pengoptimuman parameter lebih besar, dengan menyesuaikan panjang garis rata-rata, parameter untuk menguji kesesuaian dengan pasaran yang berbeza.

Analisis risiko

Risiko terbesar strategi ini adalah kegagalan pembalikan. Apabila harga membentuk isyarat pembalikan, kerugian besar akan terbentuk jika tidak berjaya mencetuskan hentian atau berhenti dan terus berjalan ke arah asal.

Di samping itu, ketergantungan pada pengoptimuman parameter yang tinggi, jika parameter yang ditetapkan tidak betul, mudah untuk ketinggalan masa harga berbalik atau menghasilkan isyarat palsu. Perlu memahami dan menguji tingkah laku pasaran dengan baik, menilai parameter yang ditetapkan dengan teliti.

Arah pengoptimuman

Anda boleh mempertimbangkan untuk menambah lebih banyak petunjuk untuk meningkatkan kualiti dan ketepatan isyarat. Sebagai contoh, sebelum isyarat pulangan harga muncul, anda boleh mengesan kenaikan dalam jangka masa tertentu, terutamanya data kenaikan kitaran pendek, untuk menentukan ciri-ciri pergerakan harga.

Anda juga boleh mencuba kaedah pembelajaran mesin, dengan merekodkan isyarat perdagangan sejarah dan data harga, dan melatih model untuk menentukan pergerakan harga seterusnya. Ini dapat membantu menapis isyarat palsu dan meningkatkan kualiti isyarat.

Di samping itu, beberapa mekanisme pengoptimuman penyesuaian diri boleh diperkenalkan. Berdasarkan hasil dagangan sebenar, parameter atau berat peraturan disesuaikan secara dinamik, untuk mencapai pengoptimuman diri strategi dan ENO.

ringkaskan

Strategi ini secara keseluruhan berfungsi dengan stabil, dan dapat memperoleh keuntungan yang baik dalam ruang parameter yang munasabah dan keadaan pasaran. Kelebihan terbesar adalah risiko yang dapat dikawal, dengan potensi pengoptimuman tertentu.

Kod sumber strategi
/*backtest
start: 2023-11-20 00:00:00
end: 2023-11-22 08:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="WMA Breakout",overlay=true, initial_capital=25000, default_qty_value=1, commission_type=strategy.commission.cash_per_contract, commission_value=3.02)
len = input(20, minval=1, title="Length")
src = input(close, title="Source")
out = wma(src, len)
price_drop = input(.003, "When price drops (In Ticks) Enter Long", step=.001)
price_climb = input(.003, "When price climbs (In Ticks) Enter Short", step=.001)
trail = input(true, "Trailing Stop(checked), Market stop(unchecked)")
stop = input(10, "Stop (in ticks)", step=1)
limit = input(5, "Limit Out", step=1)
//size = input(1, "Limit Position Size (pyramiding)", minval=1)
timec = input(true, "Limit Time of Day (Buying Side)")


//Time Session
sess = input("1600-0500", "Start/Stop trades (Est time)")
t = time(timeframe.period, sess)
//plots
plot(wma(src,len))
z = if low+price_drop<out
    (out-low)
plotarrow(z, colorup=red)

a = if high-price_climb>out
    (high-out)
plotarrow(a, colorup=lime)
av=wma(src,len)

//Orders
if(timec)
    strategy.entry("Enterlong", long=true, when=z and t>1)
else
    strategy.entry("Enterlong", long=true, when=z)
if(trail)
    strategy.exit("Exit","Enterlong", profit=limit, trail_points = 0, trail_offset = stop )
else
    strategy.exit("Exit","Enterlong", profit=limit, loss = stop )
    
if(timec)
    strategy.entry("Entershort", long=false, when=a and t>1)
else
    strategy.entry("Entershort", long=false, when=a)
if(trail)
    strategy.exit("Exit","Entershort", profit=limit, trail_points = 0, trail_offset = stop )
else
    strategy.exit("Exit","Entershort", profit=limit, loss = stop )