Strategi perdagangan berdasarkan Hall Moving Average dan K-line


Tanggal Pembuatan: 2023-09-21 10:31:58 Akhirnya memodifikasi: 2023-09-21 10:31:58
menyalin: 0 Jumlah klik: 762
1
fokus pada
1617
Pengikut

Ringkasan

Gagasan inti dari strategi ini adalah membandingkan nilai Hull Moving Average (HMA) dengan garis K untuk menghasilkan sinyal beli dan jual. Beli ketika HMA lebih tinggi dari garis K dan jual ketika HMA lebih rendah dari garis K.

Prinsip

Pertama, strategi menghitung HMA untuk periode tertentu dengan fungsi hma (). Kemudian, dapatkan harga pembukaan pada baris K teratas sebagai acuan perbandingan. Jika HMA lebih tinggi dari harga pembukaan pada baris K teratas, maka dihasilkan sinyal beli; Jika HMA lebih rendah dari harga pembukaan pada baris K teratas, maka dihasilkan sinyal jual.

Syarat masuk strategi adalah hanya masuk ketika harga menembus HMA ke arah yang berlawanan. Dengan kata lain, hanya membeli ketika harga menembus HMA dari bawah; hanya menjual ketika harga menembus HMA dari atas. Ini dapat mencegah pasar yang bergoyang dari memicu sinyal berulang.

Kondisi keluar dari strategi adalah ketika harga kembali ke sisi lain dari HMA. Misalnya, harga setelah membeli jatuh HMA, stop loss dijual.

Secara keseluruhan, strategi ini memanfaatkan karakteristik HMA yang halus untuk mengidentifikasi arah tren utama dan menghasilkan sinyal. Pada saat yang sama, meminta harga untuk menerobos untuk memfilter sinyal palsu, yang dapat mencegah terjerat berulang kali oleh gejolak pasar.

Analisis Keunggulan

  1. Menggunakan HMA dan bukan SMA, Anda dapat lebih baik mengidentifikasi tren dan menyaring getaran.

  2. Mekanisme penembusan dapat mengurangi probabilitas penarikan dan pembukaan posisi berulang.

  3. Menggunakan harga garis K sebelumnya dan bukan harga saat ini, dapat menghindari penggambaran kurva mundur

  4. Peraturan sederhana dan jelas, cocok untuk optimasi parameter dan perdagangan robot.

  5. Fleksibel digunakan dalam semua varietas dan siklus.

Risiko dan perbaikan

  1. Pengaturan parameter HMA yang tidak tepat dapat menyebabkan kehilangan tren atau terlalu sensitif. Anda dapat menguji parameter periode yang berbeda untuk menemukan nilai terbaik.

  2. Indikator tunggal rentan terhadap terobosan dalam pengujian ulang, dan dapat dipertimbangkan untuk memfilter sinyal dalam kombinasi dengan indikator lain.

  3. Stop loss dekat dengan HMA, mudah untuk ditembus lagi, dan dapat ditarik lebih jauh ke titik resistensi pendukung.

  4. Tidak dapat menilai arah dan intensitas tren, pertimbangkan untuk menambahkan indikator klasifikasi tren.

  5. Stop loss tetap menyebabkan risiko keuntungan berfluktuasi besar, dapat mencoba dengan stop loss atau pengelolaan dana.

Meringkaskan

Strategi ini secara keseluruhan relatif sederhana dan praktis, dengan ide inti yang jelas. Dengan HMA menilai arah tren utama, untuk menembus sinyal yang salah. Dapat menghindari pasar yang bergoyang berulang kali membuka sarung tangan.

Kode Sumber Strategi
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SeaSide420. Any timeFrame/pair , Hull Moving Average vs Candle
//@version=4
strategy("Hull Moving Average vs Candle",shorttitle="HMA-vs-Candle",overlay=true,default_qty_type=strategy.percent_of_equity,default_qty_value=100,commission_type=strategy.commission.cash_per_order,commission_value=1.00,slippage=1)
Period=input(title="Hull MA Period",type=input.integer,defval=50,minval=1)
Resolution=input(title="Candle Resolution", type=input.resolution,defval="D")
Price=input(title="Source of Price",type=input.source,defval=open)
HMA=hma(Price,Period)
Candle=security(syminfo.tickerid,Resolution,Price,barmerge.gaps_off,barmerge.lookahead_off)
change_color=HMA>Candle?color.green:color.red
plot1=plot(Candle,color=change_color,title="Candle Line",linewidth=2,transp=50)
plot2=plot(HMA[1],color=change_color,title="Hull MA Line",linewidth=2,transp=50)
fill(plot1,plot2,color=change_color,transp=50)
strategy.close("BUY",when=Price<HMA and HMA<Candle,comment="close buy entry")
strategy.close("SELL",when=Price>HMA and HMA>Candle,comment="close sell entry")
if (Price>HMA and HMA>Candle and Price>Price[1])
    strategy.entry("BUY",strategy.long)
if (Price<HMA and HMA<Candle and Price<Price[1])
    strategy.entry("SELL",strategy.short)



//                                                                   /L'-, 
//                               ,'-.           /MM . .             /  L '-, 
//     .                    _,--dMMMM\         /MMM  `..           /       '-, 
//     :             _,--,  )MMMMMMMMM),.      `QMM   ,<>         /_      '-,' 
//     ;     ___,--. \MM(    `-'   )M//MM\       `  ,',.;      .-'* ;     .' 
//     |     \MMMMMM) \MM\       ,dM//MMM/     ___ < ,; `.      )`--'    / 
//     |      \MM()M   MMM)__   /MM(/MP'  ___, \  \ `  `. `.   /__,    ,' 
//     |       MMMM/   MMMMMM( /MMMMP'__, \     | /      `. `-,_\     / 
//     |       MM     /MMM---' `--'_ \     |-'  |/         `./ .\----.___ 
//     |      /MM'   `--' __,-  \""   |-'  |_,               `.__) . .F. )-. 
//     |     `--'       \   \    |-'  |_,     _,-/            J . . . J-'-. `-., 
//     |         __  \`. |   |   |         \    / _           |. . . . \   `-.  F 
//     |   ___  /  \  | `|   '      __  \   |  /-'            F . . . . \     '` 
//     |   \  \ \  /  |        __  /  \  |  |,-'        __,- J . . . . . \ 
//     |    | /  |/     __,-  \  ) \  /  |_,-     __,--'     |. .__.----,' 
//     |    |/    ___     \    |'.  |/      __,--'           `.-;;;;;;;;;\ 
//     |     ___  \  \     |   |  `   __,--'                  /;;;;;;;;;;;;. 
//     |     \  \  |-'\    '    __,--'                       /;;;;;;;;;;;;;;\ 
// \   |      | /  |      __,--'                             `--;;/     \;-'\ 
//  \  |      |/    __,--'                                   /  /         \  \ 
//   \ |      __,--'                                        /  /           \  \ 
//    \|__,--'                                          _,-;M-K,           ,;-;\ 
//                                                     <;;;;;;;;           '-;;;; 
//                                                                                        ~ priceless artwork by SeaSide420