MACD Golden Cross Breakout dengan 200 Hari Moving Average Trend Mengikuti Strategi

Penulis:ChaoZhang, Tarikh: 2023-12-13 16:13:33
Tag:

img

Ringkasan

Strategi ini menggabungkan penunjuk MACD untuk mengenal pasti trend jangka pendek dan purata bergerak 200 hari untuk menentukan trend jangka panjang. Apabila salib emas MACD berlaku dan berjalan pada tahap yang rendah, jika harga memecahkan purata bergerak 200 hari, kedudukan panjang ditubuhkan dengan stop loss. Strategi ini terutamanya menggunakan hubungan antara indikator MACD salib emas dan salib kematian dan purata bergerak 200 hari untuk mengenal pasti peluang yang berpotensi.

Logika Strategi

Strategi ini terutamanya berdasarkan penunjuk MACD dan purata bergerak 200 hari untuk penilaian, logik khusus adalah:

  1. Mengira garis pantas, garis perlahan dan garis MACD penunjuk MACD. Parameter garis pantas adalah 12 hari, parameter garis perlahan adalah 26 hari, dan parameter garis isyarat adalah 9 hari.

  2. Mengira purata bergerak eksponen 200 hari (EMA).

  3. Apabila garis cepat MACD melintasi garis perlahan (salib emas), garis MACD negatif (berjalan pada tahap rendah), dan harga penutupan di atas garis 200 hari, pergi panjang.

  4. Selepas memasuki kedudukan, tetapkan harga stop loss kepada 0.5% daripada harga masuk, dan harga sasaran kepada 1% daripada harga masuk.

  5. Jika harga menyentuh harga stop loss atau harga sasaran, keluar dari kedudukan dengan stop loss atau mengambil keuntungan.

  6. Mesti rata sebelum tutup setiap hari pada jam 15:15.

  7. Waktu dagangan ditetapkan antara 9:00 dan 15:15 setiap hari.

Dengan menilai arah trend jangka pendek dan momentum dengan penunjuk MACD dan menentukan arah trend jangka panjang dengan purata bergerak 200 hari, trend berikut operasi dapat direalisasikan. Stop loss ditetapkan lebih kecil dan harga sasaran lebih besar untuk memaksimumkan keuntungan. Keluar harian yang wajib dapat mengawal risiko semalaman.

Kelebihan Strategi

Strategi ini mempunyai kelebihan berikut:

  1. Menggabungkan beberapa penunjuk menjadikan penilaian isyarat lebih tepat. MACD menilai trend jangka pendek dan momentum, sementara MA 200 hari menilai arah trend utama.

  2. Julat stop loss yang kecil boleh menahan penurunan tertentu. Stop loss hanya 0.5%, yang kondusif untuk mengesan trend jangka menengah.

  3. Sasaran keuntungan yang lebih tinggi membolehkan ruang keuntungan yang lebih besar. Sasaran adalah 1% daripada harga masuk, memenuhi pemaksiman keuntungan strategi trend.

  4. Pelancongan harian yang wajib membantu mengelakkan risiko turun naik harga yang besar dalam semalam.

  5. Logik strategi adalah mudah dan jelas, mudah difahami dan ditiru, sesuai untuk pemula belajar.

Risiko Strategi

Strategi ini juga mempunyai beberapa risiko:

  1. Risiko keletihan. Harga boleh berbalik ke bawah selepas kenaikan tajam, tidak dapat menghentikan kerugian tepat pada masanya dan menyebabkan kerugian besar.

  2. Risiko kegagalan penentuan trend. MACD dan purata bergerak boleh memberikan isyarat yang salah, mengakibatkan kerugian di pasaran bukan trend. Pertimbangkan untuk menggabungkan penunjuk jumlah dagangan untuk penapisan, untuk memastikan memasuki hanya semasa peringkat percepatan trend.

  3. Risiko fluktuasi semalaman masih wujud walaupun mekanisme unwind harian. Ini memerlukan peniaga untuk menahan tahap risiko tertentu sambil mengawal saiz kedudukan keseluruhan.

Arahan pengoptimuman

Strategi ini juga boleh dioptimumkan dalam aspek berikut:

  1. Gabungkan penunjuk jumlah dagangan untuk menentukan trend sebenar, elakkan masuk secara salah semasa penyatuan yang bergelora.

  2. Tetapkan mekanisme stop loss yang dinamik. Terus menyesuaikan harga stop loss selepas masuk berdasarkan pergerakan harga, untuk menjejaki lebih banyak keuntungan.

  3. Mengoptimumkan kombinasi parameter MACD dan keberkesanan ujian di pasaran yang berbeza. Parameter mempengaruhi kepekaan isyarat.

  4. Uji purata bergerak lain, seperti garis 100 hari dan 150 hari, untuk melihat mana yang lebih sesuai dengan trend.

  5. Tambah mekanisme kemasukan semula. Keluar paksa harian mungkin terlepas tren berikutnya, jadi isyarat kemasukan semula boleh membolehkan kedudukan ditahan pada hari berikutnya.

Kesimpulan

Ringkasnya, strategi ini mengintegrasikan MACD dan MA 200 hari untuk penghakiman isyarat. Ia memasuki trend secara bersyarat apabila penunjuk jangka pendek memberikan isyarat berterusan, dengan mekanisme stop loss dan mengambil keuntungan. Pelancaran harian wajib juga mengawal risiko semalaman. Logiknya mudah untuk pemula beroperasi dan mengintegrasikan ke dalam strategi lain. Tetapi terdapat juga risiko kegagalan penentuan trend dan risiko keletihan. Langkah seterusnya boleh mengoptimumkan aspek seperti kaedah stop loss, parameter, penapis jumlah perdagangan dan lain-lain untuk meningkatkan faktor keuntungan keseluruhan.


/*backtest
start: 2023-11-12 00:00:00
end: 2023-12-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("MACD and 200 EMA Long Strategy", shorttitle="MACD200EMALong", overlay=true)

// Input parameters
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalLength = input(9, title="Signal Length")
ema200Length = input(200, title="200 EMA Length")
stopLossPercentage = input(0.5, title="Stop Loss Percentage")
targetPercentage = input(1, title="Target Percentage")

// Trading session
startHour = input(09, title="Start Hour", minval=0, maxval=23)
startMinute = input(00, title="Start Minute", minval=0, maxval=59)
endHour = input(15, title="End Hour", minval=0, maxval=23)
endMinute = input(15, title="End Minute", minval=0, maxval=59)

// Calculate MACD
[macdLine, signalLine, _] = macd(close, fastLength, slowLength, signalLength)

// Calculate 200-period EMA
ema200 = ema(close, ema200Length)

// Conditions for entering a long position
longCondition = crossover(macdLine, signalLine) and macdLine < 0 and close > ema200 and hour < 13

// Calculate stop loss and target levels only once at the entry
var float stopLossLevel = na
var float targetLevel = na

if (longCondition)
    stopLossLevel := close * (1 + stopLossPercentage / 100)


    targetLevel := close * (1 + targetPercentage / 100)

// Trading session condition
intradayCondition = true

// Strategy logic
strategy.entry("Long", strategy.long, when=longCondition and intradayCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=stopLossLevel, profit=targetLevel)

// Force exit if the current close is below the stop loss level
if (not na(stopLossLevel) and close < stopLossLevel)
    strategy.close("Long")

// Exit the trade if the current close is greater than or equal to the target level
if (not na(targetLevel) and close >= targetLevel)
    strategy.close("Long")

// Manually force exit at 3:15 PM
if (hour == 15 and minute == 15)
    strategy.close("Long")

// Plotting the EMA, target, and stop loss on the chart
plot(ema200, color=color.blue, title="200 EMA")
plot(stopLossLevel, color=color.red, title="Stop Loss", linewidth=2)
plot(targetLevel, color=color.green, title="Target", linewidth=2)

// Plot entry arrow
plotshape(series=longCondition and intradayCondition, title="Long Entry", color=color.green, style=shape.triangleup, location=location.belowbar)


Lebih lanjut