Strategi perdagangan gabungan SuperTrend dan MACD menggabungkan dua indikator trend-mengikuti ((SuperTrend 1 dan SuperTrend 2) dengan satu indikator goyah dinamik ((MACD)) yang bertujuan untuk menyediakan kaedah perdagangan sistematik yang konsisten tanpa perlu membuat penilaian subjektif.
Kelebihan utama strategi ini:
Pengesahan SuperTrend Ganda: Menggunakan dua penunjuk SuperTrend, kitaran dan faktor ATR yang berbeza, arah trend boleh disahkan, mekanisme pengesahan ganda dapat mengurangkan isyarat yang salah.
Pengesahan kuasa: MACD Column Line berfungsi sebagai penapis kuasa, mengesahkan masuk dan keluar, menambah tingkatan pengesahan.
Masuk dan keluar objektif: Strategi menghasilkan isyarat beli dan jual berdasarkan arah trend dan kombinasi momentum, tanpa ruang untuk tafsiran subjektif.
Pengurusan perdagangan automatik: Komisen terbina dalam strategi, seting titik dan modal awal, pelaksanaan perdagangan automatik.
Kebolehsuaian: Semua parameter mudah disesuaikan untuk memenuhi keperluan pedagang yang berbeza dan keadaan pasaran yang berubah-ubah.
Strategi ini berjalan pada satu set peraturan yang jelas, dengan tumpuan kepada arah trend yang disahkan oleh dua SuperTrend dan momentum yang ditunjukkan oleh garis-garis MACD.
Multicore entry: dua indikator SuperTrend adalah multirole dan MACD column lebih besar daripada 0
Kemasukan kosong: dua petunjuk SuperTrend kosong dan garis MACD kurang dari 0 .
Binari: mana-mana SuperTrend overhead atau MACD garis tiang overhead.
Posisi kosong: mana-mana SuperTrend berbalik ke arah yang lebih tinggi atau MACD berbalik ke arah yang lebih baik.
Strategi menggunakan nisbah komisen tetap dan parameter titik pergeseran.
Fungsi pengurusan risiko automatik terbina dalam untuk mengelakkan penembusan berlebihan.
Strategi ini membolehkan banyak perdagangan dua hala kosong. Pengguna boleh memilih arah perdagangan berdasarkan pandangan pasaran mereka sendiri (hanya lebih, hanya kosong atau kosong).
Tempoh masa yang paling sesuai untuk trend yang jelas.
Pengguna boleh menyesuaikan kitaran ATR, faktor dan parameter MACD SuperTrend mengikut keperluan.
SuperTrend 1 ATR kitaran:10
SuperTrend 1 faktor:3.0
Tempoh ATR SuperTrend 2:20
SuperTrend 2 faktor:5.0
MACD jangka pendek: 12
Tempoh MACD: 26
Tempoh MACD: 9
Peratusan komisen: 0.1%
Titik geser: 1
Arah perdagangan: dua hala
Parameter lalai menyediakan kaedah perdagangan yang seimbang, tetapi boleh disesuaikan mengikut keutamaan peribadi.
Strategi ini mempunyai kelebihan berikut:
Menggunakan dua petunjuk SuperTrend untuk mengesahkan trend dapat mengurangkan isyarat salah yang disebabkan oleh satu petunjuk.
Garis tiang MACD berfungsi sebagai kriteria penilaian tambahan, yang boleh menyaring beberapa isyarat perdagangan yang tidak sesuai, meningkatkan ketepatan entrada.
Kombinasi indikator trend ganda, yang boleh berhenti dengan cepat apabila trend berubah, membantu mengawal pengunduran.
Peraturan masuk dan keluar yang jelas, pengaturan pengurusan perdagangan terbina dalam, tanpa penilaian subjektif, mengurangkan kesalahan manusia.
Parameter penunjuk boleh disesuaikan, boleh dioptimumkan untuk pelbagai jenis dan keutamaan perdagangan, dan digunakan secara meluas.
Strategi ini juga mempunyai risiko:
Kombinasi indikator trend ganda, penukaran ruang yang agak sukar, tidak sesuai untuk pasaran yang sering bertukar arah.
Dalam keadaan trend yang kuat, harga stop loss mungkin tertinggal dan risiko perluasan akan ditarik balik.
Tidak dapat bertindak balas dengan cepat terhadap peristiwa Black Swan, dan ada risiko yang lebih besar untuk menarik balik.
Arah untuk dioptimumkan:
Optimumkan parameter penunjuk untuk menyesuaikan dengan pelbagai jenis.
Menambah mekanisme penangguhan kerugian, seperti penangguhan bergerak, untuk mengawal lebih jauh penarikan balik.
Berkongsi dengan petunjuk lain untuk mengenal pasti kejadian yang tidak dijangka dan mengurangkan penarikan diri.
Secara keseluruhannya, strategi gabungan SuperTrend dan MACD menggabungkan kelebihan pengesanan trend dan analisis momentum, peraturan jelas, tahap automasi yang tinggi, dapat menyaring isyarat perdagangan bising dengan berkesan, dan mempunyai kegunaan yang sangat kuat. Tetapi juga berhati-hati dengan masalah kawalan penarikan balik dan pengoptimuman parameter. Secara keseluruhannya, strategi ini adalah salah satu wakil yang baik untuk perdagangan tren sistemik.
/*backtest
start: 2023-09-18 00:00:00
end: 2023-09-25 00:00:00
period: 30m
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/
// © PresentTrading
//@version=5
// Define the strategy settings
// strategy("Dual-Supertrend with MACD - Strategy [presentTrading]", overlay=true, precision=3, default_qty_type=strategy.cash,
// commission_value= 0.1, commission_type=strategy.commission.percent, slippage= 1,
// currency=currency.USD, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, initial_capital= 10000)
// Trading Direction Dropdown
tradeDirection = input.string("both", "Trading Direction", options=["long", "short", "both"])
// MACD Inputs
fast_length = input(12, "Fast Length")
slow_length = input(26, "Slow Length")
signal_length = input(9, "Signal Smoothing")
sma_source = input.string("EMA", "Oscillator MA Type", options=["SMA", "EMA"])
sma_signal = input.string("EMA", "Signal Line MA Type", options=["SMA", "EMA"])
// MACD Calculation
fast_ma = sma_source == "SMA" ? ta.sma(close, fast_length) : ta.ema(close, fast_length)
slow_ma = sma_source == "SMA" ? ta.sma(close, slow_length) : ta.ema(close, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length)
hist = macd - signal
// Input Parameters for Supertrend 1
atrPeriod1 = input(10, "ATR Length for Supertrend 1")
factor1 = input.float(3.0, "Factor for Supertrend 1", step=0.01)
// Supertrend Calculation for 1
[supertrend1, direction1] = ta.supertrend(factor1, atrPeriod1)
// Input Parameters for Supertrend 2
atrPeriod2 = input(20, "ATR Length for Supertrend 2")
factor2 = input.float(5.0, "Factor for Supertrend 2", step=0.01)
// Supertrend Calculation for 2
[supertrend2, direction2] = ta.supertrend(factor2, atrPeriod2)
// Combined Conditions
isBullish = direction1 < 0 and direction2 < 0 and hist > 0
isBearish = direction1 > 0 and direction2 > 0 and hist < 0
exitLong = direction1 > 0 or direction2 > 0 or hist < 0
exitShort = direction1 < 0 or direction2 < 0 or hist > 0
// Strategy Entry and Exit based on Trading Direction
if (tradeDirection == "both" or tradeDirection == "long")
strategy.entry("Buy", strategy.long, when=isBullish)
strategy.close("Buy", when=exitLong)
if (tradeDirection == "both" or tradeDirection == "short")
strategy.entry("Sell", strategy.short, when=isBearish)
strategy.close("Sell", when=exitShort)
bodyMiddle1 = plot((open + close) / 2, display=display.none)
upTrend1 = plot(direction1 < 0 ? supertrend1 : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrend1 = plot(direction1 < 0? na : supertrend1, "Down Trend", color = color.red, style=plot.style_linebr)
fill(bodyMiddle1, upTrend1, color.new(color.green, 90), fillgaps=false)
fill(bodyMiddle1, downTrend1, color.new(color.red, 90), fillgaps=false)
bodyMiddle2 = plot((open + close) / 2, display=display.none)
upTrend2 = plot(direction2 < 0 ? supertrend2 : na, "Up Trend", color = color.green, style=plot.style_linebr)
downTrend2 = plot(direction2 < 0? na : supertrend2, "Down Trend", color = color.red, style=plot.style_linebr)
fill(bodyMiddle2, upTrend2, color.new(color.green, 90), fillgaps=false)
fill(bodyMiddle2, downTrend2, color.new(color.red, 90), fillgaps=false)