Strategi Konvergensi Pembalikan Empat Kali Ganda


Tarikh penciptaan: 2026-03-12 11:56:07 Akhirnya diubah suai: 2026-03-12 11:56:07
Salin: 3 Bilangan klik: 29
2
fokus pada
413
Pengikut

Strategi Konvergensi Pembalikan Empat Kali Ganda Strategi Konvergensi Pembalikan Empat Kali Ganda

EMA, MACD, RSI, CVD, ATR

Empat petanda teknologi berbunyi serentak, isyarat paling kuat untuk perubahan pasaran

Strategi pembalikan tradisional hanya melihat satu atau dua petunjuk? Itu adalah pertaruhan. Strategi ini memerlukan latar belakang trend EMA, penukaran dinamik MACD, RSI overbought dan oversold, dan analisis aliran pesanan untuk mengesahkan empat dimensi sekaligus, sebelum berani membuka kedudukan. Data retrospeksi menunjukkan bahawa mekanisme penyaringan yang ketat ini meningkatkan kadar penyaringan isyarat palsu hingga lebih dari 80%.

Bukan setiap putaran bernilai perdagangan, hanya putaran yang disahkan empat kali adalah emas dan perak sejati.

RSI Berpaling Dari Pengesanan + Analisis Aliran Pesanan, Menangkap Pergerakan Dana Institusi

Inovasi teras strategi adalah menggabungkan analisis RSI deviasi dan CVD (Cumulative Volume Difference). Apabila harga berinovasi rendah tetapi RSI menolak untuk berinovasi rendah, dan deltaEma menunjukkan peningkatan daya beli, ini adalah pasangan emas yang berbalik di bawah. Data menunjukkan bahawa kemenangan isyarat dengan pengesahan RSI deviasi adalah 35% lebih tinggi daripada isyarat berbalik biasa.

Analisis teknikal tradisional melihat harga, pedagang bijak melihat aliran wang.

1.5 kali ganda ATR direka bentuk, kawalan risiko tepat di tempat

Tetapan stop loss menggunakan penyesuaian dinamik ATR 1.5 kali ganda, untuk mengelakkan stop loss tetap yang sering dicetuskan pada masa turun naik yang tinggi, dan memastikan perlindungan yang mencukupi pada masa turun naik yang rendah. Pengiraan ATR 14 kitaran memberikan imej sebenar turun naik pasaran, dengan faktor 1.5 kali ganda menunjukkan nisbah risiko-keuntungan terbaik dalam pengulangan.

Kerosakan berterusan adalah musuh sebenar strategi pembalikan, dan satu-satunya penyelesaian adalah dengan menghentikan kerugian secara ketat.

Pengesahan 1.3 kali ganda untuk mengelakkan perangkap penembusan palsu

Strategi ini memerlukan 1.3 kali ganda jumlah lalu lintas melebihi nilai purata 20 kitaran untuk mengesahkan isyarat berkesan. Syarat yang nampaknya mudah ini sebenarnya menapis 70% isyarat berkualiti rendah. Tanpa pembalikan gabungan jumlah lalu lintas, seperti senjata tanpa peluru, nampaknya tidak berdaya.

Pasaran boleh menipu, tetapi jumlah transaksi tidak.

Penapis Trend EMA Ganda, Hanya Berjaya Pada Masa Terbaik

50 kitaran EMA menilai trend pertengahan, 200 kitaran EMA menentukan arah trend utama. Strategi hanya mencari peluang untuk membalikkan apabila harga mendekati atau di bawah EMA, pemikiran “sukses dalam kemerosotan”, meningkatkan kadar kejayaan perdagangan dari 45% hingga 65%.

Tidak semua kejatuhan akan berpatah balik, hanya kejatuhan pada kedudukan sokongan utama yang perlu dicatatkan.

Aplikasi dalam Perang: Pasar Bergolak Berjaya, Pasar Trend Perlu Berhati-hati

Retrospektif menunjukkan bahawa strategi ini berfungsi dengan baik dalam keadaan goyah, dengan kadar kemenangan bulanan melebihi 70%. Tetapi dalam pasaran yang kuat, isyarat pembalikan mudah ditekan oleh kekuatan trend, dan pada masa ini anda harus menurunkan kedudukan atau menangguhkan penggunaan.

Tidak ada strategi yang universal, hanya strategi yang sesuai dengan keadaan pasaran tertentu. Dengan mengiktiraf ini, anda melebihi 90% peniaga.

Petua risiko: Pemantauan semula sejarah tidak mewakili keuntungan masa depan

Mana-mana strategi kuantitatif mempunyai risiko kegagalan, terutamanya dalam keadaan pasaran yang melampau. Strategi ini mengalami kerugian berturut-turut dalam tempoh kenaikan kadar pada bulan Mac 2020 dan 2022. Dianjurkan untuk melaksanakan pengurusan wang yang ketat, dengan risiko tunggal tidak melebihi 2% dari akaun, dan menilai keberkesanan strategi secara berkala.

Kod sumber strategi
/*backtest
start: 2025-12-10 15:15:00
end: 2026-03-10 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":500000}]
*/

// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © FundedRelay

//@version=6
strategy("4x Reversal Confluence Strategy", overlay=true, 
         margin_long=100, margin_short=100,
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=100)

// ────────────────────────────────────────
// INPUTS
// ────────────────────────────────────────
emaShortLen   = input.int(50,  "EMA Short (context)", minval=20)
emaLongLen    = input.int(200, "EMA Long (major trend)")
macdFast      = input.int(12,  "MACD Fast")
macdSlow      = input.int(26,  "MACD Slow")
macdSignal    = input.int(9,   "MACD Signal")
rsiLen        = input.int(14,  "RSI Length")
rsiOversold   = input.int(35,  "RSI Oversold Level")
rsiOverbought = input.int(65,  "RSI Overbought Level")
divLookback   = input.int(5,   "Divergence Lookback Bars", minval=3)
volMult       = input.float(1.3,"Volume > Avg Multiplier", minval=1.0)
atrLen        = input.int(14,  "ATR Length for Stops")
atrMultSL     = input.float(1.5,"ATR Stop Multiplier", minval=0.5)
useVolume     = input.bool(true, "Require Volume Spike")

// ────────────────────────────────────────
// INDICATORS
// ────────────────────────────────────────
emaShort = ta.ema(close, emaShortLen)
emaLong  = ta.ema(close, emaLongLen)
plot(emaShort, "EMA Short", color=color.blue, linewidth=2)
plot(emaLong,  "EMA Long",  color=color.orange, linewidth=3)

// MACD
[macdLine, signalLine, hist] = ta.macd(close, macdFast, macdSlow, macdSignal)

// RSI
rsi = ta.rsi(close, rsiLen)

// Volume proxy delta
upVol   = close > close[1] ? volume : close == close[1] ? volume * 0.5 : 0.0
dnVol   = close < close[1] ? volume : close == close[1] ? volume * 0.5 : 0.0
delta   = upVol - dnVol
deltaEma = ta.ema(delta, 5)
cvd      = ta.cum(delta)
cvdEma   = ta.ema(cvd, 21)

// Volume average
volAvg = ta.sma(volume, 20)

// ────────────────────────────────────────
// DIVERGENCE DETECTION
// ────────────────────────────────────────
priceLow  = ta.pivotlow(low,  divLookback, divLookback)
priceHigh = ta.pivothigh(high, divLookback, divLookback)

rsiLow    = ta.pivotlow(rsi,   divLookback, divLookback)
rsiHigh   = ta.pivothigh(rsi,  divLookback, divLookback)

// Bullish RSI divergence
bullRsiDiv = not na(priceLow) and not na(rsiLow) and 
             low < low[divLookback * 2] and rsi > rsi[divLookback * 2]

// Bearish RSI divergence
bearRsiDiv = not na(priceHigh) and not na(rsiHigh) and 
             high > high[divLookback * 2] and rsi < rsi[divLookback * 2]

// ────────────────────────────────────────
// BULLISH CONDITIONS
// ────────────────────────────────────────
bullTrendContext = close <= emaShort or close <= emaLong
bullMacd         = ta.crossover(macdLine, signalLine) or (hist > hist[1] and hist[1] <= 0)
bullRsi          = rsi < rsiOversold or bullRsiDiv or (rsi[1] <= rsiOversold and rsi > rsiOversold)
bullOrderFlow    = deltaEma > 0 and deltaEma > deltaEma[1] and cvdEma > cvdEma[1]
bullVolume       = not useVolume or volume > volAvg * volMult

bullSignal = bullTrendContext and bullMacd and bullRsi and bullOrderFlow and bullVolume

// ────────────────────────────────────────
// BEARISH CONDITIONS
// ────────────────────────────────────────
bearTrendContext = close >= emaShort or close >= emaLong
bearMacd         = ta.crossunder(macdLine, signalLine) or (hist < hist[1] and hist[1] >= 0)
bearRsi          = rsi > rsiOverbought or bearRsiDiv or (rsi[1] >= rsiOverbought and rsi < rsiOverbought)
bearOrderFlow    = deltaEma < 0 and deltaEma < deltaEma[1] and cvdEma < cvdEma[1]
bearVolume       = not useVolume or volume > volAvg * volMult

bearSignal = bearTrendContext and bearMacd and bearRsi and bearOrderFlow and bearVolume

// ────────────────────────────────────────
// ENTRIES
// ────────────────────────────────────────
if bullSignal
    strategy.entry("Long", strategy.long)

if bearSignal
    strategy.entry("Short", strategy.short)

// ────────────────────────────────────────
// EXITS
// ────────────────────────────────────────
// Close on opposite signal
if bearSignal
    strategy.close("Long", comment="Opp Signal → Exit Long")

if bullSignal
    strategy.close("Short", comment="Opp Signal → Exit Short")

// Initial ATR stop-loss
atrVal = ta.atr(atrLen)

strategy.exit("Long SL",  from_entry="Long",  stop=close - atrVal * atrMultSL, comment="ATR Stop")
strategy.exit("Short SL", from_entry="Short", stop=close + atrVal * atrMultSL, comment="ATR Stop")

// ────────────────────────────────────────
// VISUALS
// ────────────────────────────────────────
plotshape(bullSignal, title="Bull Rev",  style=shape.triangleup,   location=location.belowbar, color=color.green,  size=size.small)
plotshape(bearSignal, title="Bear Rev",  style=shape.triangledown, location=location.abovebar, color=color.red,    size=size.small)

bgcolor(bullSignal ? color.new(color.green, 92) : na)
bgcolor(bearSignal ? color.new(color.red,   92) : na)

// Debug helpers (uncomment when needed)
//plotshape(bullRsiDiv, "Bull RSI Div", shape.labelup,   location.belowbar, color=color.lime,  text="Bull Div", size=size.tiny)
//plotshape(bearRsiDiv, "Bear RSI Div", shape.labeldown, location.abovebar, color=color.orange, text="Bear Div", size=size.tiny)