Syarat kemasukan
Pengesahan Trend: Strategi ini menggunakan Supertrend dan MACD untuk mengesahkan arah trend. Pengesahan berganda ini dapat meningkatkan kemungkinan mengenal pasti trend dengan tepat dan menapis isyarat palsu.
Pengesahan VWAP: Strategi ini mempertimbangkan jarak harga ke tahap VWAP. Tahap dinamik ini boleh bertindak sebagai sokongan / rintangan dan menyediakan konteks tambahan untuk keputusan kemasukan.
Syarat keluar
MACD Crossover: Strategi ini menutup kedudukan panjang apabila garis MACD melintasi di bawah garis isyarat dan menutup kedudukan pendek apabila garis MACD melintasi di atas.
Pengurusan Risiko
Stop Loss adaptif: Strategi menetapkan julat stop-loss, yang menyediakan beberapa toleransi untuk turun naik harga kecil. Pendekatan adaptif ini mempertimbangkan turun naik pasaran.
Trailing Stop: Strategi ini menggabungkan mekanisme trailing stop untuk mengunci keuntungan ketika perdagangan bergerak ke arah yang dikehendaki. Ini berpotensi meningkatkan keuntungan semasa trend yang kuat.
Pengesahan Indikator Dual: Gabungan Supertrend dan MACD untuk pengesahan trend adalah aspek unik yang menambah lapisan penapisan untuk meningkatkan ketepatan isyarat.
VWAP dinamik: Menggabungkan tahap VWAP memberikan wawasan mengenai sentimen pasaran kerana VWAP sering digunakan oleh peniaga institusi.
Stop Loss dan Trailing adaptif: Julat Stop Loss dan Trailing Stop adaptif boleh menguruskan risiko dengan lebih berkesan dan melindungi keuntungan.
Pencatatan Keuntungan Sebahagian: Cadangan untuk mempertimbangkan pencatatan keuntungan sebahagian pada persilangan MACD membolehkan mendapatkan keuntungan sambil kekal dalam perdagangan.
Pengujian belakang: Uji semula strategi apa pun sebelum penggunaan langsung untuk memahami prestasi di pelbagai keadaan pasaran.
Pengurusan Risiko: Kawal dengan teliti saiz kedudukan dan risiko portfolio keseluruhan walaupun terdapat mekanisme terbina dalam.
Keadaan pasaran: Tidak ada strategi yang berfungsi dengan sempurna dalam semua keadaan pasaran.
Kemudahan penyesuaian: Pasaran berkembang dari masa ke masa. Bersedia untuk menyesuaikan strategi yang diperlukan untuk menyelaraskan dengan dinamik yang berubah.
Pelbagai Jangka Masa: Pertimbangkan untuk memohon jangka masa yang lebih tinggi untuk memanfaatkan trend jangka panjang.
Pengoptimuman Parameter: Uji kombinasi parameter yang berbeza seperti panjang tempoh ATR, julat stop loss dan lain-lain untuk mencari parameter yang optimum.
Mengambil Keuntungan Sebahagian: Menggabungkan peraturan mengambil keuntungan separa yang lebih pasti seperti mengambil keuntungan pada tahap peratusan tertentu.
Pengoptimuman Keadaan: Uji penambahan atau penghapusan peraturan kemasukan atau keluar tertentu untuk mencari keseimbangan yang betul.
Strategi ini menawarkan pendekatan yang agak unik untuk menggabungkan trend, momentum dan indikator jumlah untuk mengesahkan trend dan mengenal pasti titik masuk yang berpotensi. Ciri-ciri seperti pengesahan berganda dan hentian adaptif memberikan kelebihan tertentu. Walau bagaimanapun, pengujian balik, pengoptimuman, dan pemantauan menyeluruh adalah penting untuk daya maju jangka panjang mana-mana strategi. Strategi ini menyediakan rangka kerja yang patut diteroka dan disempurnakan lebih lanjut.
/*backtest start: 2023-12-25 00:00:00 end: 2024-01-24 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Trend Confirmation Strategy", overlay=true) // Supertrend Indicator atrPeriod = input(10, "ATR Length") factor = input.float(3.0, "Factor", step = 0.01) [supertrend, direction] = ta.supertrend(factor, atrPeriod) // MACD Indicator fast_length = input(title="Fast Length", defval=12) slow_length = input(title="Slow Length", defval=26) macd_src = input(title="Source", defval=close) signal_length = input.int(title="Signal Smoothing", minval = 1, maxval = 50, defval = 9) macd_sma_source = input.string(title="Oscillator MA Type", defval="EMA", options=["SMA", "EMA"]) macd_sma_signal = input.string(title="Signal Line MA Type", defval="EMA", options=["SMA", "EMA"]) fast_ma = macd_sma_source == "SMA" ? ta.sma(macd_src, fast_length) : ta.ema(macd_src, fast_length) slow_ma = macd_sma_source == "SMA" ? ta.sma(macd_src, slow_length) : ta.ema(macd_src, slow_length) macd = fast_ma - slow_ma signal = macd_sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length) // VWAP Indicator vwap_hideonDWM = input(false, title="Hide VWAP on 1D or Above") vwap_src = input(title="VWAP Source", defval=hlc3) vwap_value = ta.vwap(vwap_src) vwap_value_long = vwap_value vwap_value_short = vwap_value // Entry Criteria confirm_up_trend = direction > 0 and macd > signal confirm_down_trend = direction < 0 and macd < signal // VWAP Confirmation price_above_vwap = close > vwap_value_long price_below_vwap = close < vwap_value_short // Stop Loss and Take Profit stop_loss_range = input(2, title="Stop Loss Range") trail_offset = input(0.5, title="Trailing Stop Offset") stop_loss_long = close - stop_loss_range stop_loss_short = close + stop_loss_range // Strategy Entry if not (vwap_hideonDWM and timeframe.isdwm) if confirm_up_trend and price_above_vwap strategy.entry("Buy", strategy.long) if confirm_down_trend and price_below_vwap strategy.entry("Sell", strategy.short) // Strategy Exit if macd < signal and macd[1] >= signal[1] strategy.close("Buy", comment="MACD Crossover") if macd > signal and macd[1] <= signal[1] strategy.close("Sell", comment="MACD Crossover") // Plot Supertrend and VWAP plot(supertrend, color=direction > 0 ? color.green : color.red, title="Supertrend") plot(vwap_value_long, color=color.blue, title="VWAP Long") plot(vwap_value_short, color=color.orange, title="VWAP Short") // Plot MACD Histogram hist = macd - signal hist_color = hist >= 0 ? color.green : color.red plot(hist, style=plot.style_histogram, color=hist_color, title="MACD Histogram")