Trend Mengikuti Strategi Persilangan Purata Pergerakan


Tarikh penciptaan: 2023-11-01 17:18:13 Akhirnya diubah suai: 2023-11-01 17:18:13
Salin: 0 Bilangan klik: 674
1
fokus pada
1617
Pengikut

Trend Mengikuti Strategi Persilangan Purata Pergerakan

Gambaran keseluruhan

Strategi ini menggunakan prinsip persilangan emas dan penjuru mati rata-rata bergerak, digabungkan dengan penilaian tambahan RSI, untuk mengenal pasti dan mengesan trend. Apabila rata-rata jangka pendek melintasi rata-rata jangka panjang, lebih banyak, dan apabila rata-rata jangka pendek melintasi rata-rata jangka panjang, lebih rendah, adalah strategi pengesanan trend yang lebih tipikal.

Prinsip Strategi

Strategi ini berdasarkan kepada prinsip-prinsip berikut:

  1. Menggunakan garis rata-rata EMA: lebih responsif terhadap perubahan harga terkini daripada SMA, bertindak balas lebih cepat terhadap penembusan.

  2. Persaingan dua garis rata: garis rata jangka pendek melalui garis rata jangka panjang sebagai isyarat membeli, garis rata jangka pendek melalui garis rata jangka panjang sebagai isyarat menjual, menggunakan prinsip persilangan emas dan persilangan mati garis rata untuk menilai pembalikan trend.

  3. Indikator RSI membantu penilaian: Jual apabila RSI tinggi kembali, beli apabila RSI rendah kembali, mengelakkan pecah palsu.

  4. Garis purata berkala yang berlainan ditumpuk: garis-garis 55 untuk menentukan perubahan trend jangka pendek, garis-garis 100 untuk menentukan trend jangka menengah, dan garis-garis 200 untuk menentukan trend jangka panjang.

  5. Tetapkan Stop Loss: Tetapkan peratusan stop loss dan stop loss yang munasabah untuk mengawal risiko.

Logik perdagangan strategi ini adalah seperti berikut:

  1. Apabila 55 kitaran EMA memakai 100 kitaran EMA, dan 12 kitaran EMA lebih tinggi daripada 200 kitaran EMA, buat lebih masuk.

  2. Apabila 100 kitaran EMA di bawah menembusi 200 kitaran EMA, kosongkan masuk.

  3. Selepas perdagangan masuk, tetapkan syarat berhenti dan berhenti untuk mengoptimumkan keuntungan.

  4. Apabila indikator RSI menunjukkan isyarat overbuy dan oversell, tutup pesanan berganda dan kosong yang sesuai dengan masa, untuk mengelakkan risiko berbalik.

  5. Dengan menggunakan EMA berkala yang berlainan, strategi dapat mengkaji trend dan mengesahkan pembalikan, dan mengesan trend jangka menengah dan jangka panjang.

Kelebihan Strategik

Strategi ini mempunyai kelebihan utama:

  1. Idea strategi jelas, arah trend dapat diukur melalui prinsip simpang silang linear, mudah difahami dan dilaksanakan.

  2. Menggunakan garis rata-rata EMA, ia dapat bertindak balas lebih cepat terhadap perubahan harga dan menangkap perubahan trend tepat pada masanya.

  3. EMA berkala pelbagai kumpulan digunakan untuk menumpukan trend dan mengenal pasti pembalikan.

  4. Penggunaan penunjuk RSI mengelakkan pecah palsu dan meningkatkan ketepatan isyarat.

  5. Tetapan parameter Stop Loss Stop Stop secara default adalah munasabah dan dapat mengawal risiko perdagangan dengan berkesan.

  6. Skala yang kuat, anda boleh mengoptimumkan strategi anda berdasarkan parameter garis rata-rata dan parameter hentian kerugian yang disesuaikan oleh pasaran.

Analisis risiko

Strategi ini mempunyai risiko utama:

  1. Strategi garis rata sensitif terhadap turun naik pasaran dan mudah ditiru. Jika pasaran bergolak lama, terlalu banyak perdagangan tidak berkesan akan berlaku.

  2. Parameter lalai mungkin tidak sesuai dengan ciri-ciri pasaran untuk semua varieti dan kitaran, yang memerlukan pengoptimuman yang disesuaikan.

  3. Tidak mengambil kira asas-asas dan kesan peristiwa besar terhadap keadaan pasaran, petunjuk teknikal semata-mata mudah ditarik.

  4. Strategi ini mungkin tidak menguntungkan apabila indeks meningkat tetapi pasaran saham berpecah.

  5. Terdapat risiko kehilangan sebahagian besar keuntungan pasaran kerana “meninggalkan pasaran terlalu awal”.

Untuk menangani risiko ini, anda boleh mengoptimumkan dan memperbaiki dengan:

  1. Dengan menggunakan penapis seperti penunjuk jumlah transaksi, penembusan palsu dapat mengelakkan kerugian.

  2. Optimumkan parameter pengulangan agar lebih sesuai dengan ciri-ciri jenis tertentu.

  3. Mengurangkan masa memegang kedudukan dengan sewajarnya, menghentikan stop loss tepat pada masanya, dan mengelakkan risiko pergerakan goyah jangka panjang.

  4. Menggabungkan indikator asas untuk mengelakkan serangan apabila berlaku peristiwa ketidaksuburan yang besar.

Arah pengoptimuman strategi

Strategi ini boleh dioptimumkan dengan:

  1. Mengoptimumkan parameter sistem garis rata untuk mencari kombinasi jangka masa rata-rata jangka pendek, pertengahan dan panjang yang lebih sesuai. Anda boleh mencuba kaedah pengoptimuman parameter seperti Pembelajaran Mesin.

  2. Uji kesesuaian antara harga penutupan dan harga tipikal dalam strategi tersebut.

  3. Cuba gunakan jumlah transaksi sebagai penapis untuk menghasilkan isyarat transaksi hanya dalam jumlah besar.

  4. Mengoptimumkan keadaan hentian hentian untuk menjadikannya lebih disasarkan. Anda juga boleh menetapkan hentian hentian hentian dinamik untuk menyesuaikan kedudukan hentian mengikut kadar.

  5. Menggabungkan dengan petunjuk lain, seperti Stoch, MACD, Blink, dan lain-lain untuk membina strategi komposit dan meningkatkan keberkesanan strategi.

  6. Ujian semula dilakukan pada peringkat varieti, kitaran dan pasaran yang berbeza, untuk menilai keberkesanan strategi, dan untuk penambahbaikan selanjutnya.

  7. Optimasi parameter pelbagai dimensi dengan bantuan algoritma pembelajaran mesin boleh dipertimbangkan.

ringkaskan

Strategi ini mempunyai kelebihan seperti mudah dilaksanakan, dipercayai secara default, dan dapat diperluaskan. Tetapi terdapat juga risiko pasaran tertentu, yang memerlukan pengoptimuman parameter dan modul yang berterusan terhadap hasil pengukuran kembali, untuk menjadikan strategi lebih stabil dan lebih pintar.

Kod sumber strategi
/*backtest
start: 2023-10-24 00:00:00
end: 2023-10-31 00:00:00
period: 15m
basePeriod: 5m
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/
// © pernath

//@version=5
strategy("TREND_CATCHER", overlay=true, commission_value=0.05, commission_type=strategy.commission.percent, initial_capital=1000)

//#####variables##############
profit_short=input(title='profit_short', defval=27)
stop_short=input(title='stop_short', defval=2)

stop_long=input(title='stop_long', defval=3)
profit_long=input(title='profit_long', defval=35)


media_1=input(title='media_1', defval=55)
media_2=input(title='media_2', defval=100)
resta_medias=input(title='resta_medias', defval=0)
resta_medias2=input(title='resta_medias2', defval=0)

RSI_periodos=input(title='RSI_periodos', defval=42)
//###############VARIABLES###################




//#####Alert#####
id_bot = ""
email_token = ""
long_open =""
long_close =""
short_open =""
short_close =""
//#  {{strategy.order.alert_message}}


//#############################
//#############################

//###############EMA##############/
//plot(ta.ema(close, 1), title='ema 5', color=color.white)
plot(ta.ema(close, 12), title='ema 12', color=color.white)
plot(ta.ema(close, 25), title='ema 25', color=color.white)
plot(ta.ema(close, 30), title='ema 30', color=color.white, linewidth=1)
plot(ta.ema(close, 40), title='ema 40', color=color.white, linewidth=1)
plot(ta.ema(close, 55), title='ema 55', color=color.orange, linewidth=1)
plot(ta.ema(close, 100), title='ema 100', color=color.red, linewidth=1)
plot(ta.ema(close, 200), title='ema 200', color=color.white, linewidth=3)

//#############################/





//######VISUAL#############
EMA50 = ta.ema(close, 55)
EMA100 = ta.ema(close, 100)


estado_medias=EMA50-EMA100




a = plot(EMA50, title="EMA(50)", color=color.orange, linewidth=1 ) 
b = plot(EMA100, title="EMA(100)", color=color.red, linewidth=1 )


var color col = na
col := estado_medias>resta_medias ? color.green : color.red
fill(a,b,color=col,transp=40)


//######VISUAL#############





Go_Short=(ta.crossunder(ta.ema(close,100),ta.ema(close,200)))
Go_Long=((ta.crossover(ta.ema(close,55),ta.ema(close,100))and(ta.ema(close,12)>ta.ema(close,200))))


strategy.close("enter long", (Go_Short),alert_message=long_open)

cancelar_short=((ta.crossunder(ta.ema(close,25),ta.ema(close,6))))



if Go_Short
    strategy.entry("enter short", strategy.short,1, alert_message=short_open) 
  
strategy.exit("cerrar short", "enter short", 1, profit=close*profit_short/100/syminfo.mintick, loss=close*stop_short/100/syminfo.mintick, alert_message=short_close)




strategy.close("enter short", (Go_Long),alert_message=short_close)
cancelar=((ta.crossunder(ta.ema(close,12),ta.ema(close,30))))



if Go_Long
    strategy.entry("enter long", strategy.long,1,alert_message=long_open)

strategy.exit("cerrar long", "enter long", 1, profit=close*profit_long/100/syminfo.mintick, loss=close*stop_long/100/syminfo.mintick, alert_message=long_close)




strategy.close("enter short", (cancelar_short),alert_message=short_close)

strategy.close("enter long", (cancelar),alert_message=long_close)


//posiciones abiertas
bgcolor((strategy.position_size > 0 or strategy.position_size < 0) ? color.blue : na, transp=70)