Strategi dagangan berdasarkan Hall Moving Average dan K-line


Tarikh penciptaan: 2023-09-21 10:31:58 Akhirnya diubah suai: 2023-09-21 10:31:58
Salin: 0 Bilangan klik: 762
1
fokus pada
1617
Pengikut

Gambaran keseluruhan

Gagasan utama strategi ini adalah membandingkan Hull Moving Average (HMA) dengan garis K untuk menghasilkan isyarat beli dan jual. Beli apabila HMA lebih tinggi daripada garis K dan jual apabila HMA lebih rendah daripada garis K.

Prinsip

Pertama, strategi menggunakan fungsi hma ((() untuk mengira HMA untuk satu kitaran tertentu. Kemudian, dapatkan harga pembukaan K baris atas sebagai asas perbandingan. Jika HMA lebih tinggi daripada harga pembukaan K baris atas, ia akan menghasilkan isyarat beli; Jika HMA lebih rendah daripada harga pembukaan K baris atas, ia akan menghasilkan isyarat jual.

Syarat kemasukan untuk strategi ini ialah hanya masuk apabila harga menembusi HMA ke arah yang berlawanan. Iaitu, hanya membeli apabila harga menembusi HMA dari bawah; hanya menjual apabila harga menembusi HMA dari atas. Ini dapat mengelakkan pasaran yang bergoyang berulang kali memicu isyarat.

Keadaan keluar strategi adalah apabila harga jatuh kembali ke sisi lain HMA. Sebagai contoh, apabila harga jatuh HMA selepas membeli, maka stop loss dijual.

Secara keseluruhan, strategi ini memanfaatkan ciri-ciri halus HMA untuk mengenal pasti arah trend utama dan menghasilkan isyarat. Pada masa yang sama, meminta harga untuk menerobos untuk menyaring isyarat palsu, yang dapat mengelakkan terkurung berulang kali oleh pergolakan pasaran.

Analisis kelebihan

  1. Menggunakan HMA dan bukannya SMA, lebih baik untuk mengenal pasti trend dan menapis guncangan.

  2. Mekanisme penembusan boleh mengurangkan kemungkinan terikat dan membuka semula kedudukan.

  3. Menggunakan harga garis K terdahulu dan bukannya penilaian harga semasa, dapat mengelakkan penggambaran kurva mundur.

  4. Peraturan mudah dan jelas, sesuai untuk optimasi parameter dan perdagangan robot.

  5. Ia boleh digunakan secara fleksibel dalam mana-mana varieti dan kitaran.

Risiko dan penambahbaikan

  1. Tetapan parameter HMA yang tidak betul boleh menyebabkan kehilangan trend atau terlalu sensitif. Anda boleh menguji parameter kitaran yang berbeza untuk mencari nilai terbaik.

  2. Indikator tunggal mudah untuk ditembusi dalam ujian semula, dan anda boleh mempertimbangkan untuk memfilterkan isyarat dalam kombinasi dengan indikator lain.

  3. Hentikan kerosakan berhampiran HMA, mudah untuk ditembusi lagi, dan boleh ditarik jauh ke tahap sokongan.

  4. Tidak dapat menilai arah dan kekuatan trend, pertimbangkan untuk memasukkan indikator klasifikasi trend.

  5. Titik hentian tetap menyebabkan risiko keuntungan turun naik, anda boleh mencuba hentian kerugian atau pengurusan wang.

ringkaskan

Strategi ini secara keseluruhannya agak mudah dan praktikal, idea terasnya jelas. Dengan HMA menilai arah trend utama, untuk memecahkan isyarat yang salah. Anda boleh mengelakkan pasaran yang bergolak berulang kali membuka sarang.

Kod 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