Strategi dagangan pelarian sokongan dan rintangan dinamik digabungkan dengan penapisan trend dan sistem pengurusan risiko

SMA MA RR RATIO risk management
Tarikh penciptaan: 2025-02-20 15:51:23 Akhirnya diubah suai: 2025-02-27 17:33:24
Salin: 1 Bilangan klik: 347
2
fokus pada
319
Pengikut

Strategi dagangan pelarian sokongan dan rintangan dinamik digabungkan dengan penapisan trend dan sistem pengurusan risiko Strategi dagangan pelarian sokongan dan rintangan dinamik digabungkan dengan penapisan trend dan sistem pengurusan risiko

Gambaran keseluruhan

Ini adalah strategi perdagangan berdasarkan penembusan zon rintangan sokongan, yang digabungkan dengan penapisan trend dan sistem pengurusan risiko. Strategi ini mengenal pasti peluang perdagangan yang berpotensi dengan mengenal pasti tahap harga kritikal secara dinamik, dan menggunakan purata bergerak untuk mengesahkan arah trend pasaran. Strategi ini menggunakan kaedah pengurusan dana yang konservatif, dengan risiko terhad kepada 1% dari dana akaun setiap perdagangan, sambil menggunakan nisbah risiko keuntungan 2: 1 untuk menetapkan kedudukan berhenti.

Prinsip Strategi

Logik teras strategi ini merangkumi beberapa komponen utama:

  1. Menggunakan titik tinggi dan rendah aksa untuk mengenal pasti kawasan rintangan sokongan yang berpotensi
  2. Mencipta jurang sokongan dan rintangan dengan menetapkan peratusan bias harga
  3. Menggunakan purata bergerak 200 hari sebagai penapis trend
  4. Keberkesanan penembusan disahkan melalui bentuk grafik
  5. Menerapkan peraturan pengurusan wang yang ketat untuk mengawal risiko setiap transaksi Apabila harga menembusi kawasan rintangan dan trend ke atas, sistem akan membuka kedudukan multihead; apabila harga menembusi kawasan sokongan dan trend ke bawah, sistem akan membuka kedudukan kosong.

Kelebihan Strategik

  1. Struktur pasaran yang dinamik - strategi dapat mengenal pasti dan mengemas kini tahap harga penting secara automatik untuk menyesuaikan diri dengan perubahan pasaran
  2. Mekanisme pengesahan berbilang - pengesahan gabungan penapisan dan penyaringan trend untuk mengurangkan risiko penembusan palsu
  3. Pengurusan risiko yang baik - menggunakan undang-undang risiko tetap untuk melindungi dana akaun
  4. Matlamat keuntungan yang jelas - menggunakan risiko keuntungan 2: 1 berbanding dengan menetapkan kedudukan berhenti
  5. Isyarat perdagangan visual - menunjukkan dengan jelas kawasan rintangan sokongan dan garisan stop loss pada carta

Risiko Strategik

  1. Risiko turun naik pasaran - kemungkinan tergelincir semasa turun naik yang tinggi yang menjejaskan prestasi perdagangan sebenar
  2. Risiko trend reversal - Pasaran mungkin berbalik dengan cepat selepas penembusan, menyebabkan stop loss
  3. Risiko pengoptimuman parameter - parameter yang terlalu optimum boleh menyebabkan overfit
  4. Risiko pengurusan wang - kerugian berturut-turut boleh menjejaskan pertumbuhan akaun Ia disyorkan untuk menguruskan risiko ini dengan mengkaji semula keadaan pasaran yang berbeza dan menyesuaikan parameter.

Arah pengoptimuman strategi

  1. Dinamika penyesuaian lebar zon sokongan dan rintangan - penyesuaian automatik kepada zon mengikut turun naik pasaran
  2. Tambah pengesahan jumlah transaksi - Tambah syarat penapisan jumlah transaksi dalam isyarat terobosan
  3. Optimumkan penapis trend - pertimbangkan untuk menggunakan pengesahan trend pelbagai kitaran
  4. Meningkatkan strategi penangguhan - mencapai penangguhan dinamik, menyesuaikan sasaran keuntungan mengikut keadaan pasaran
  5. Menambah penapis masa - mengelakkan dagangan pada tempoh masa pasaran yang bergolak

ringkaskan

Ini adalah strategi perdagangan yang tersusun dengan baik, yang menyediakan kaedah perdagangan yang sistematik dengan menggabungkan analisis teknikal dan prinsip pengurusan risiko. Kelebihan strategi ini adalah peraturan perdagangan yang komprehensif dan kawalan risiko yang ketat, tetapi juga memerlukan pedagang untuk memahami hadnya dan melakukan pengoptimuman dan penyesuaian yang sesuai dengan keadaan perdagangan sebenar.

Kod sumber strategi
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/

//@version=5
strategy("支撑/阻力区域突破策略(2倍止盈 + 蜡烛确认 + 趋势过滤)", overlay=true, initial_capital=10000, currency=currency.USD, pyramiding=0, calc_on_order_fills=true, calc_on_every_tick=true)

// 用户输入设置
pivotLen = input.int(title="枢轴识别窗口长度", defval=5, minval=1)
zoneOffsetPercent = input.float(title="区域偏移百分比 (%)", defval=0.1, step=0.1)
maLength = input.int(200, title="移动平均线周期")

// 趋势指标: 简单移动平均线(SMA)
trendMA = ta.sma(close, maLength)

// 识别高点和低点(枢轴高点/低点)
ph = ta.pivothigh(high, pivotLen, pivotLen)
pl = ta.pivotlow(low, pivotLen, pivotLen)

// 存储最近的阻力位和支撑位
var float resistanceLevel = na
var int resistanceBar = na
if not na(ph)
    resistanceLevel := ph
    resistanceBar := bar_index - pivotLen

var float supportLevel = na
var int supportBar = na
if not na(pl)
    supportLevel := pl
    supportBar := bar_index - pivotLen

// 将阻力和支撑区域绘制为区域框
if not na(resistanceLevel)
    resOffset = resistanceLevel * (zoneOffsetPercent / 100)
    resTop = resistanceLevel + resOffset
    resBottom = resistanceLevel - resOffset


if not na(supportLevel)
    supOffset = supportLevel * (zoneOffsetPercent / 100)
    supTop = supportLevel + supOffset
    supBottom = supportLevel - supOffset


// 风险管理: 定义资金、风险百分比和计算风险金额
riskCapital = 10000.0
riskPercent = 0.01
riskAmount = riskCapital * riskPercent   // 1% of $10,000 = $100

// activeStop变量用于显示止损位
var float activeStop = na
if strategy.position_size == 0
    activeStop := na

// 确定趋势方向
isUptrend = close > trendMA   // 上升趋势(价格在MA之上)
isDowntrend = close < trendMA  // 下降趋势(价格在MA之下)

// 定义突破蜡烛和确认蜡烛
var bool breakoutUp = false
var bool breakoutDown = false

if not na(resistanceLevel) and close[1] > resistanceLevel and open[1] < resistanceLevel
    breakoutUp := true
else
    breakoutUp := false

if not na(supportLevel) and close[1] < supportLevel and open[1] > supportLevel
    breakoutDown := true
else
    breakoutDown := false

// 突破确认: 下一根蜡烛必须在突破方向收盘
confirmLong = breakoutUp and close > close[1] and strategy.position_size == 0 and isUptrend
confirmShort = breakoutDown and close < close[1] and strategy.position_size == 0 and isDowntrend

// 做多入场: 确认蜡烛 + 在突破蜡烛低点设置止损
if confirmLong
    entryPrice = close
    stopLevelLong = low[1]
    riskPerUnit = entryPrice - stopLevelLong
    if riskPerUnit > 0
        qty = riskAmount / riskPerUnit
        activeStop := stopLevelLong
        takeProfitLong = entryPrice + (riskPerUnit * 2)  // 止盈设为止损的2倍
        strategy.entry("Long", strategy.long, qty=qty)
        strategy.exit("Exit Long", from_entry="Long", stop=stopLevelLong, limit=takeProfitLong)

// 做空入场: 确认蜡烛 + 在突破蜡烛高点设置止损
if confirmShort
    entryPrice = close
    stopLevelShort = high[1]
    riskPerUnit = stopLevelShort - entryPrice
    if riskPerUnit > 0
        qty = riskAmount / riskPerUnit
        activeStop := stopLevelShort
        takeProfitShort = entryPrice - (riskPerUnit * 2)  // 止盈设为止损的2倍
        strategy.entry("Short", strategy.short, qty=qty)
        strategy.exit("Exit Short", from_entry="Short", stop=stopLevelShort, limit=takeProfitShort)

// 当有持仓时在图表上显示止损线(水平线)
plot(strategy.position_size != 0 ? activeStop : na, title="止损线", color=color.red, linewidth=2, style=plot.style_line)

// 在图表上显示移动平均线
plot(trendMA, title="趋势MA", color=color.blue, linewidth=2)