Strategi hentikan kerugian dan ambil untung berdasarkan corak bintang Doji


Tarikh penciptaan: 2024-02-02 17:17:38 Akhirnya diubah suai: 2024-02-02 17:17:38
Salin: 0 Bilangan klik: 698
1
fokus pada
1617
Pengikut

Strategi hentikan kerugian dan ambil untung berdasarkan corak bintang Doji

Gambaran keseluruhan

Strategi ini adalah berdasarkan Doji Bintang, apabila Doji Bintang berlaku, anda meletakkan stop order antara Doji Bintang tinggi dan satu garis K yang lebih tinggi, dan stop order antara Doji Bintang rendah dan satu garis K yang lebih rendah. Apabila harga mencetuskan Stop order, anda boleh memilih untuk keluar dengan berhenti kerugian tetap, atau dengan harga tertinggi dan terendah dalam bentuk Doji Bintang sebagai berhenti kerugian.

Prinsip Strategi

Apabila bentuk bintang Doji muncul, ini menunjukkan bahawa hubungan penawaran dan permintaan semasa berubah, kekuatan pembeli dan penjual semakin seimbang, dan harga mungkin berbalik. Strategi ini adalah menggunakan isyarat pembalikan harga yang diramalkan oleh bentuk bintang Doji, untuk menangkap peluang pembalikan dengan meletakkan single berhenti. Secara khusus, untuk menilai bentuk bintang Doji adalah:

body=close-open  
range=high-low
abody=abs(body)
ratio=abody/range
data=(abs(open - close) <= (high - low) * Doji)

Jika abs (open-close) <= (high-low)*Parameter Doji, yang ditakrifkan sebagai bentuk bintang Doji, diletakkan pada titik berhenti. Posisi berhenti adalah seperti berikut:

longDist= longcandle[1] and range[1]>range? high: max(high,high[1]) 
shortDist= longcandle[1] and range[1]>range? low: min(low,low[1])

Jika entiti K-baris sebelumnya lebih besar, membeli berhenti di antara Doji Star High Point dan entiti K-baris sebelumnya. Jika entiti K-baris sebelumnya lebih kecil, membeli berhenti di antara Doji Star High Point.

Terdapat dua pilihan peraturan permainan:

  1. Perlawanan dengan penghentian pegangan tetap
strategy.exit("exit buy","buy stop",loss=SL, profit=TP, when=Use_SL_TP) 
  1. Bermula dengan harga tertinggi Doji Star dan harga terendah Doji Star sebagai stop loss.
strategy.close("buy stop",when=not Use_SL_TP and close<dojilow)

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Operasi mudah dan mudah dilaksanakan.
  2. Menggunakan Doji Star sebagai isyarat pembalikan harga yang cekap untuk menangkap peluang pembalikan harga.
  3. Parameter Stop Loss Stop boleh dikonfigurasikan untuk mengawal risiko.
  4. Sesuai untuk operasi jangka masa yang tinggi, boleh menapis bunyi bising.

Analisis risiko

Strategi ini juga mempunyai risiko:

  1. Bentuk bintang Doji tidak semestinya akan membawa kepada perubahan harga, mungkin terdapat hentian. Penyelesaian adalah menetapkan jarak hentian yang munasabah dan mengawal kerugian tunggal.
  2. Sinyal Doji mungkin terlalu bising apabila ia beroperasi pada bingkai masa yang rendah. Penyelesaian adalah hanya beroperasi pada bingkai masa yang tinggi seperti garis matahari.
  3. Jika anda tidak menetapkan Hentikan Kerosakan, terdapat risiko kerugian tanpa had. Penyelesaian adalah menggunakan fungsi Hentikan Kerosakan dengan betul.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa arah:

  1. Mengoptimumkan parameter Doji untuk mencari kombinasi parameter terbaik untuk pelbagai jenis perdagangan.
  2. Uji parameter henti rugi yang berbeza untuk mencari kombinasi parameter terbaik.
  3. Jarak hentian berdasarkan ATR dinamik.
  4. Menentukan masa kemasukan yang terbaik, bersama-sama dengan petunjuk lain.

ringkaskan

Strategi ini berfungsi dengan baik secara keseluruhan, dengan menangkap peluang untuk membalikkan harga Doji, isyarat perdagangan yang baik dapat diperoleh. Strategi ini juga mudah dikendalikan, mudah dilaksanakan, sesuai untuk pelbagai jenis perdagangan, dan merupakan strategi perdagangan kuantitatif yang praktikal. Dengan ujian dan pengoptimuman yang berterusan, diharapkan untuk mendapatkan kesan strategi yang lebih baik.

Kod sumber strategi
/*backtest
start: 2024-01-02 00:00:00
end: 2024-02-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//This is a simple strategy based on Doji star candlestick
//It places two orders: buy stop at doji star high or previous candle high and sell stop at doji star low or previous candle low.
//This strategy works very well with high time frames like Weekly TF because it eliminates the noise in doji formation.
//

strategy("Doji strategy W", overlay=true, calc_on_every_tick=true, pyramiding=0,default_qty_type=strategy.percent_of_equity,default_qty_value=100,currency=currency.USD)

//INPUTS
//MinDistance=input(100,'Minimum distance in ticks')
Use_SL_TP=input(true,'Use stop loss and take profit?')
TP=input(200,'Take Profit in ticks')
SL=input(200,'Stop Loss in tiks')
Doji = input(0.05, minval=0.01, title="Doji size", step=0.01)

//VARIABILI
body=close-open
range=high-low
abody=abs(body)
ratio=abody/range
longcandle= (ratio>0.6)

//Doji
data=(abs(open - close) <= (high - low) * Doji)
plotchar(data, title="Doji", text='Doji', color=black)
longDist= longcandle[1] and range[1]>range? high: max(high,high[1])
shortDist= longcandle[1] and range[1]>range? low: min(low,low[1])
dojilow=data==1?low:na
dojihigh=data==1?high:na

goStar=data==1?true:false
//////////////////////////////////////////////////////////////////

//STRATEGY

strategy.order("buy stop",true,stop=longDist,  oca_name="Dojy Entry",when=goStar)
strategy.order("sell stop",false,stop=shortDist, oca_name="Dojy Entry",when=goStar)

strategy.exit("exit buy","buy stop",loss=SL, profit=TP, when=Use_SL_TP)
strategy.exit("exit sell","sell stop",loss=SL,profit=TP, when=Use_SL_TP)

strategy.close("buy stop",when=not Use_SL_TP and close<dojilow)
strategy.exit("exit buy","buy stop",profit=TP, when=not Use_SL_TP)
strategy.close("sell stop",when=not Use_SL_TP and close>dojihigh)
strategy.exit("exit sell","sell stop",profit=TP, when=not Use_SL_TP)