
Strategi perdagangan kuantitatif risiko dinamik dalam bentuk tiga pin yang bergerak adalah sistem perdagangan komprehensif yang menggabungkan analisis teknikal dan pengurusan risiko. Inti strategi ini adalah berdasarkan sistem pengesahan trend yang dibentuk oleh tiga rata-rata bergerak ((EMA cepat, EMA sederhana, dan SMA perlahan), yang menggabungkan bentuk pin klasik ((Pin Bar) sebagai isyarat masuk, dan mengintegrasikan mekanisme kawalan risiko bertingkat. Strategi ini menggunakan teknologi anti-gambar semula, memastikan semua isyarat dihasilkan berdasarkan data K-line yang telah disahkan, meningkatkan kebolehpercayaan isyarat dengan berkesan.
Prinsip perdagangan strategi ini adalah berdasarkan beberapa komponen utama:
Sistem pengesahan trend purata bergerak tiga kaliStrategi: Menggunakan tiga purata bergerak dari tiga kitaran yang berbeza untuk membina persekitaran trend, yang memerlukan EMA cepat (default 6 kitaran), EMA sederhana (default 18 kitaran) dan SMA perlahan (default 50 kitaran) untuk membentuk barisan trend yang jelas. Keperluan trend berbilang: EMA cepat > EMA sederhana > SMA perlahan; Keperluan trend kosong: EMA cepat < EMA sederhana < SMA perlahan.
Pengenalan isyarat bentuk pinStrategi: Setelah menetapkan arah trend, cari bentuk pin yang selaras dengan arah trend ((Pin Bar) sebagai titik masuk tertentu. Bentuk pin memerlukan K-line shadow line lebih daripada 66% dari keseluruhan panjang, memastikan ada cukup kekuatan pembalikan.
Mekanisme pengesahan isyarat tertundaUntuk mengelakkan masalah pemetaan semula, strategi menggunakan data K-line yang telah terbentuk sepenuhnya (confirmedClose, confirmedOpen, dan lain-lain) untuk menghasilkan isyarat, dan isyarat pengesahan ditunda 1 K-line untuk memastikan perdagangan berdasarkan tindakan pasaran yang telah disahkan.
Sistem pengurusan risiko dinamik:
Perlindungan double stop:
Kawalan tetingkap masa:
Reka bentuk anti-penggambaranStrategi ini sepenuhnya berdasarkan data K-Line yang telah disahkan, mengelakkan masalah penggambaran semula indikator yang biasa, meningkatkan kesesuaian hasil pengukuran dengan prestasi cakera.
Sistem kawalan risiko yang baik:
Penapisan isyarat berkualiti tinggi:
Pengurusan masa yang fleksibel:
Pengurusan kedudukan yang beradaptasiSistem akan menyesuaikan saiz kedudukan secara automatik mengikut turun naik pasaran (ATR), mengurangkan kedudukan apabila turun naik tinggi, meningkatkan kedudukan apabila turun naik, mencapai keseimbangan dinamik risiko.
Terlalu bergantung pada keadaan trendStrategi ini boleh menghasilkan isyarat palsu yang kerap dalam pasaran penyusunan horizontal, yang menyebabkan hentian berturut-turut. Penyelesaian: Anda boleh menambah penapis kekuatan trend, seperti penunjuk ADX, dan hanya berdagang apabila kekuatan trend mencukupi.
Batasan Mod Pin Bar: Walaupun Pin Bar adalah isyarat pembalikan yang kuat, ia mungkin muncul dengan kerap dalam pasaran yang bergelombang tinggi dan tidak mempunyai makna praktikal. Penyelesaian: Anda boleh menambah pengesahan jumlah transaksi atau menambah keperluan nisbah garis bayangan Pin Bar.
Risiko LeverageWalaupun strategi menyokong leverage hingga 100 kali ganda, terlalu tinggi boleh menyebabkan pergerakan akaun yang teruk dan bahkan pecah kedudukan. Penyelesaian: Gunakan dengan berhati-hati, disyorkan untuk menetapkan awal tidak lebih dari 5 kali ganda, dan menyesuaikan dengan hasil pengukuran sejarah.
Optimasi parameter dan risiko kecocokan kurvaMengandungi pelbagai parameter yang boleh disesuaikan (seperti kitaran EMA, kitaran ATR, dan lain-lain) menyebabkan strategi menghadapi risiko pengoptimuman berlebihan. Penyelesaian: Uji kestabilan parameter dalam pelbagai tempoh masa dan pasaran, menggunakan analisis langkah demi langkah (seperti Walk Forward) untuk mengesahkan parameter.
Setup risiko stop lossPenyelesaian: Berdasarkan ciri-ciri pasaran dan kitaran dagangan, cari titik keseimbangan dalam tetapan berhenti, disarankan untuk menguji pelbagai tetapan yang digabungkan dengan had risiko dana.
Menambah penapisan persekitaran pasaran:
Kualiti isyarat dipertingkatkan:
Parameter dinamik menyesuaikan diri:
Penyelarasan kitaran masa:
Pengurusan wang yang lebih baik:
Triple Moving Average Fan Pin Bolt Dynamic Risk Quantified Trading Strategy adalah sistem perdagangan kuantitatif profesional yang menggabungkan analisis pelbagai teknik dan pengurusan risiko. Dengan gabungan pengesahan trend triple moving averages dengan pengenalan bentuk Pin Bar, strategi ini dapat menangkap peluang perdagangan berkualiti tinggi di pasaran trend yang kuat. Kelebihan utamanya adalah sistem kawalan risiko yang sempurna, reka bentuk anti-pementasan dan mekanisme penapisan isyarat yang fleksibel, yang menjadikannya mempunyai ciri strategi kuantitatif profesional.
Strategi ini paling sesuai untuk digunakan dalam persekitaran pasaran yang jelas trend, dan sangat berkesan untuk produk kewangan yang lebih bergelombang. Walau bagaimanapun, pengguna perlu berhati-hati dengan batasan strategi dalam menyusun pasaran secara mendatar, dan potensi risiko penggunaan leverage dan parameter. Strategi ini masih mempunyai banyak ruang untuk peningkatan dengan arah pengoptimuman yang disyorkan, seperti meningkatkan penapisan persekitaran pasaran, meningkatkan kualiti isyarat, dan mewujudkan penyesuaian parameter.
Secara keseluruhannya, ini adalah strategi perdagangan kuantitatif yang tersusun dengan baik, berisiko dan logik yang jelas, yang sesuai untuk digunakan oleh peniaga yang berpengalaman setelah diuji dengan baik. Dengan parameter yang disetel dengan munasabah dan penggunaan leveraj yang berhati-hati, strategi ini berpotensi menjadi alat yang kuat dalam senjata peniaga.
/*backtest
start: 2024-05-14 00:00:00
end: 2025-05-12 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"DOGE_USDT"}]
*/
//@version=5
strategy("Rich Harvester", overlay=true,
initial_capital=200,
commission_type=strategy.commission.percent,
commission_value=0.1,
slippage=2,
default_qty_type=strategy.cash)
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// 抗重绘核心修改(使用已确认K线数据)
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
confirmedClose = close[1]
confirmedOpen = open[1]
confirmedHigh = high[1]
confirmedLow = low[1]
// User Input (新增参数)
leverage = input.float(title='杠杆倍数', minval=0.1, maxval=100.0, step=0.1, defval=1.0, group="★ 风险控制")
// User Input (原有参数完全保留)
usr_risk = input.int(title='Equity Risk (%)', minval=1, maxval=100, step=1, defval=3, confirm=false)
atr_mult = input.float(title='Stop Loss (x*ATR, Float)', minval=0.1, maxval=100, step=0.1, defval=0.5, confirm=false)
slPoints = input.int(title='Stop Loss Trail Points (Pips)', minval=1, maxval=1000, step=1, defval=1, confirm=false)
slOffset = input.int(title='Stop Loss Trail Offset (Pips)', minval=1, maxval=1000, step=1, defval=1, confirm=false)
sma_slow = input.int(title='Slow SMA (Period)', minval=1, maxval=500, step=1, defval=50, confirm=false)
ema_medm = input.int(title='Medm EMA (Period)', minval=1, maxval=500, step=1, defval=18, confirm=false)
ema_fast = input.int(title='Fast EMA (Period)', minval=1, maxval=500, step=1, defval=6, confirm=false)
atr_valu = input.int(title='ATR (Period)', minval=1, maxval=500, step=1, defval=14, confirm=false)
ent_canc = input.int(title='Cancel Entry After X Bars (Period)', minval=1, maxval=500, step=1, defval=3, confirm=false)
// Create Indicators (使用确认数据)
slowSMA = ta.sma(confirmedClose, sma_slow)
medmEMA = ta.ema(confirmedClose, ema_medm)
fastEMA = ta.ema(confirmedClose, ema_fast)
atr = ta.atr(atr_valu)[1] // 使用前值
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// 信号系统优化(延迟信号确认)
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
bullishPinBar = (confirmedClose > confirmedOpen and (confirmedOpen - confirmedLow) > 0.66 * (confirmedHigh - confirmedLow)) or
(confirmedClose < confirmedOpen and (confirmedClose - confirmedLow) > 0.66 * (confirmedHigh - confirmedLow))
bearishPinBar = (confirmedClose > confirmedOpen and (confirmedHigh - confirmedClose) > 0.66 * (confirmedHigh - confirmedLow)) or
(confirmedClose < confirmedOpen and (confirmedHigh - confirmedOpen) > 0.66 * (confirmedHigh - confirmedLow))
// 趋势过滤条件(使用确认数据)
fanUpTrend = fastEMA > medmEMA and medmEMA > slowSMA
fanDnTrend = fastEMA < medmEMA and medmEMA < slowSMA
// 延迟信号确认(等待K线闭合)
longCondition = fanUpTrend and bullishPinBar[1] // 延迟1根K线
shortCondition = fanDnTrend and bearishPinBar[1]
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// 交易执行系统(仅修改风险计算部分)
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
enterlong() =>
risk = usr_risk * 0.01 * strategy.equity * leverage // 添加杠杆影响
stopLoss = confirmedLow - atr * atr_mult
entryPrice = confirmedHigh
units = risk / (entryPrice - stopLoss)
strategy.entry('long', strategy.long, units, stop=entryPrice)
strategy.exit('exit long', from_entry='long', trail_points=slPoints, trail_offset=slOffset)
entershort() =>
risk = usr_risk * 0.01 * strategy.equity * leverage // 添加杠杆影响
stopLoss = confirmedHigh + atr * atr_mult
entryPrice = confirmedLow
units = risk / (stopLoss - entryPrice)
strategy.entry('short', strategy.short, units, stop=entryPrice)
strategy.exit('exit short', from_entry='short', trail_points=slPoints, trail_offset=slOffset)
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// 交易执行系统
// ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
if longCondition
enterlong()
if shortCondition
entershort()
strategy.cancel('long', ta.barssince(longCondition) > ent_canc)
strategy.cancel('short', ta.barssince(shortCondition) > ent_canc)
strategy.close_all(when=hour == 16 and dayofweek == dayofweek.friday, comment='exit all, market-closed')
strategy.close_all(when=ta.crossunder(fastEMA, medmEMA), comment='exit long, re-cross')
strategy.close_all(when=ta.crossover(fastEMA, medmEMA), comment='exit short, re-cross')
plot(fastEMA, "快EMA", color.new(#FF6B00, 0), 2)
plot(medmEMA, "中EMA", color.new(#0096FF, 0), 2)
plot(slowSMA, "慢SMA", color.new(#00C800, 0), 2)
plotshape(longCondition, "多信号", shape.labelup, location.belowbar, color=#00FF00, text="▲", textcolor=#FFFFFF)
plotshape(shortCondition, "空信号", shape.labeldown, location.abovebar, color=#FF0000, text="▼", textcolor=#FFFFFF)