
Strategi ini menggunakan gabungan sistem persilangan purata bergerak dan penunjuk MACD untuk mewujudkan strategi perdagangan automatik yang melakukan lebih banyak pada peringkat bank trend dan berhenti berhenti pada titik perubahan trend. Strategi ini dinamakan strategi persilangan persilangan rata-rata dan MACD.
Strategi ini adalah berdasarkan kepada gabungan antara sistem persilangan garis rata dengan penunjuk MACD. Secara khusus, apabila rata-rata jangka pendek di atas rata-rata jangka panjang, buat lebih banyak; apabila rata-rata jangka pendek di bawah rata-rata jangka panjang, buat kosong. Di sini, EMA 21 hari dipilih sebagai rata-rata jangka pendek, dan EMA 100 hari sebagai rata-rata jangka panjang.
Pada masa yang sama, penyokong menggunakan penunjuk MACD untuk mengesahkan isyarat perdagangan. Hanya apabila MACD melintasi DEA di DIFF, isyarat akan dikeluarkan. Apabila DEA melintasi DIFF, isyarat akan dihapuskan.
Selain itu, strategi ini menggunakan RSI untuk mengelakkan terlalu banyak shorting, hanya apabila RSI berada di bawah 30%.
Dalam hal halangan, strategi ini menggunakan kaedah peratusan tetap untuk menjejaki hentian, dengan titik hentian tunggal berganda dikurangkan 1% dari harga masuk, dan titik hentian tunggal kosong ditambah 1% dari harga masuk. Pada masa yang sama, strategi ini juga mewujudkan hentian bergerak, yang berhenti apabila keuntungan terapung tunggal mencapai 3% dari harga masuk.
Kelebihan terbesar strategi ini adalah menggunakan sistem garis rata untuk menentukan arah trend besar, dan kemudian menggunakan penunjuk MACD untuk masuk, yang dapat menyaring penembusan palsu dengan berkesan. Berbanding dengan menggunakan sistem persilangan garis rata sahaja, jumlah perdagangan yang tidak berkesan dapat dikurangkan, meningkatkan kebarangkalian keuntungan.
Selain itu, strategi menggunakan peratusan berhenti tetap dan berhenti bergerak, yang dapat mengawal kerugian dalam julat yang boleh diterima, sambil berhenti secepat mungkin dan mengunci keuntungan dengan jaminan keuntungan. Ini dapat mengurangkan penarikan balik akaun dan mengurangkan kerugian yang disebabkan oleh keserakahan dalam perdagangan sebenar.
Risiko utama dalam strategi ini adalah:
Sistem persimpangan rata-rata mempunyai kelewatan, yang boleh menyebabkan kelewatan kemasukan yang terlepas titik kemasukan terbaik. Kelewatan boleh dikurangkan dengan mengoptimumkan parameter rata-rata.
Indeks MACD mudah menghasilkan isyarat palsu, memerlukan penapisan tambahan dari indikator lain. Anda boleh mempertimbangkan untuk memasukkan indikator seperti KDJ untuk pengoptimuman.
Penangguhan kerugian peratusan tetap kadang-kadang tidak dapat dihentikan tepat pada masanya. Ia boleh diubah menjadi penangguhan kerugian mengikut dinamik.
Strategi penarikan balik mungkin lebih besar, anda boleh mempertimbangkan untuk menurunkan kedudukan untuk mengelakkan risiko.
Strategi hanya melakukan lebih banyak dan tidak melakukan shorting, terdapat batasan hanya dengan trend multi arah, boleh dipertimbangkan untuk memasukkan mekanisme shorting.
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Optimumkan parameter garis rata untuk menjadikan isyarat garis rata lebih tepat. Anda boleh mencuba pelbagai jenis garis rata seperti EMA, SMA.
Menambah penapis untuk isyarat persilangan linear rata-rata indikator lain, seperti KDJ, RSI dan lain-lain, untuk mengurangkan perdagangan yang salah.
Mencuba cara berhenti dinamik untuk mengawal risiko dengan lebih baik. Seperti berhenti mengejar, berhenti ATR dan sebagainya.
Menambah mekanisme shorting yang membolehkan strategi untuk menjana keuntungan dalam keadaan turun.
Mengoptimumkan pengurusan dana, menyesuaikan saiz kedudukan, dan mengurangkan pengeluaran maksimum.
Uji prestasi kontrak pelbagai jenis untuk memperluaskan kebolehgunaan strategi.
Menambah algoritma pembelajaran mesin, menggunakan algoritma untuk mengoptimumkan parameter secara automatik, mengurangkan campur tangan manusia.
Strategi ini mengintegrasikan kelebihan sistem persilangan linear dan indikator MACD, mencapai kadar keuntungan yang lebih tinggi. Dengan menetapkan parameter yang dioptimumkan, menambah indikator lain dan memperbaiki cara menghentikan kerugian, anda dapat meningkatkan lagi kestabilan strategi dan mengurangkan penarikan balik.
/*backtest
start: 2023-10-16 00:00:00
end: 2023-10-23 00:00:00
period: 2m
basePeriod: 1m
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/
// © Toxic_Cat_
//@version=5
// strategy("MA_50_200_CROSS", overlay=true, margin_long=100, margin_short=100)
EMA21 = ta.ema(close, 21)
EMA100 = ta.ema(close, 100)
[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)
plot(EMA21)
plot(EMA100, color = color.orange)
openLong = ta.crossover(EMA21, EMA100) and macdLine > signalLine
openShort = ta.crossunder(EMA21, EMA100) and ta.rsi(close, 14) <= 33
crossunderMACD = ta.crossunder(macdLine, signalLine)
if (strategy.opentrades < 1)
if openLong
strategy.entry("L",strategy.long, 1)
if openShort
strategy.entry("S",strategy.short, 1)
// slose long
// if ((strategy.opentrades.entry_price(0) + strategy.opentrades.entry_price(0)*0.03) <= open)
// strategy.exit("profit L", "L", limit = close)
// else if strategy.opentrades.entry_price(0) - strategy.opentrades.entry_price(0)*0.01 >= open or crossunderMACD
// strategy.exit("loss L", "L", stop = close)
// slose short
// if (strategy.opentrades.entry_price(0) - strategy.opentrades.entry_price(0)*0.03) >= open
// strategy.exit("profit S", "S", limit = (strategy.opentrades.entry_price(0) - strategy.opentrades.entry_price(0)*0.03))
// else if strategy.opentrades.entry_price(0) + strategy.opentrades.entry_price(0)*0.01 <= open
// strategy.exit("loss S", "S", stop = (strategy.opentrades.entry_price(0) + strategy.opentrades.entry_price(0)*0.01))