
Ini adalah strategi perdagangan kuantitatif berdasarkan jurang nilai wajar (Fair Value Gaps, FVG), yang diilhamkan oleh konsep wang pintar (Smart Money Concepts, SMC) dan teori ketidakseimbangan harga dalam perdagangan institusi. Strategi ini mencetuskan perdagangan isyarat dengan mengenal pasti ketidakseimbangan mikro di pasaran apabila harga memasuki semula kawasan tersebut.
Pusat strategi ini adalah untuk mengenal pasti dan memanfaatkan jurang nilai wajar (FVG). FVG adalah kawasan di mana harga melompat dalam masa yang singkat, yang mewakili tahap harga yang tidak diperdagangkan sepenuhnya di pasaran, dan biasanya dianggap sebagai kawasan di mana harga mungkin akan diukur semula pada masa akan datang.
Strategi ini berdasarkan kepada dua jenis FVG:
Logik urus niaga adalah seperti berikut:
Strategi ini juga mengandungi penapis penarikan nilai untuk menyaring celah yang cukup besar untuk mengelakkan bunyi pasaran yang kecil. Pengguna boleh menetapkan peratusan penarikan nilai secara manual, atau memilih mod automatik, yang membolehkan strategi menyesuaikan penarikan nilai mengikut dinamik turun naik sejarah.
Pengenalan struktur pasaran mikroStrategi ini dapat menangkap struktur dan ketidakseimbangan pasaran mikro yang mungkin diabaikan oleh analisis teknikal biasa, yang sering mewakili jejak pergerakan dana institusi.
Tempat Masuk yang TepatDengan menetapkan syarat FVG yang jelas, strategi ini memberikan isyarat kemasukan yang objektif dan tepat, mengurangkan kesilapan yang disebabkan oleh penilaian subjektif.
Kawalan risiko yang ketat: Tetapan stop loss tetap 0.10% memastikan risiko setiap perdagangan dapat dikawal dengan ketat, sesuai untuk pedagang yang berhati-hati dalam pengurusan wang.
Skala yang kuatRangka kerja strategi direka dengan cara yang fleksibel dan boleh disesuaikan dengan keadaan pasaran yang berbeza dengan menambah penapis tambahan atau menyesuaikan parameter.
Masalah tanpa lukisan semula: Implementasi kod mengelakkan masalah pemetaan semula, memastikan hasil pengesanan semula sejarah sesuai dengan prestasi cakera.
Kebolehan beradaptasi pelbagai kerangka masa: Pengguna boleh menyesuaikan parameter jangka masa, membolehkan strategi menyesuaikan diri dengan persekitaran perdagangan yang berbeza dari 1 minit hingga jangka masa yang lebih tinggi.
Frekuensi perdagangan pendekOleh kerana strategi yang disasarkan untuk ketidakseimbangan mikro, ia mungkin menghasilkan banyak isyarat perdagangan, meningkatkan kos perdagangan, terutama dalam persekitaran perdagangan frekuensi tinggi.
Gangguan bunyiDalam pasaran yang kurang bergolak atau horizontal, isyarat FVG mungkin mengandungi lebih banyak kebisingan, menyebabkan peningkatan isyarat palsu.
Risiko Hentian TetapWalaupun ia menyediakan kawalan risiko yang ketat, ia mungkin terlalu ketat dalam pasaran yang bergelombang tinggi, yang menyebabkan ia sering dicetuskan.
Ancaman untuk berbalik: Dalam pasaran yang kuat, isyarat FVG terbalik boleh menyebabkan perdagangan bertentangan dengan trend utama, meningkatkan kemungkinan kerugian.
Kepekaan ParameterTetapan parameter terhad mempunyai kesan yang ketara terhadap prestasi strategi, parameter yang tidak betul boleh menyebabkan pengoptimuman berlebihan atau kehilangan isyarat yang berkesan.
Kaedah untuk mengurangkan risiko termasuk:
Sistem penyesuaianStrategi semasa telah merangkumi pilihan penurunan nilai automatik, tetapi dapat dioptimumkan lebih jauh sebagai sistem penyesuaian berdasarkan indikator turun naik pasaran (seperti ATR), yang membolehkan FVG mengenal pasti dengan lebih tepat keadaan pasaran semasa.
Pengesahan pelbagai kerangka masa: Pengenalan analisis pelbagai bingkai masa, hanya menjalankan perdagangan apabila arah trend bingkai masa yang lebih tinggi sesuai dengan isyarat FVG, meningkatkan kadar kemenangan.
Dinamika Henti / Henti: menggantikan 0.10% stop loss / stop loss yang tetap dengan tetapan dinamik berdasarkan turun naik pasaran, secara automatik meluaskan julat stop loss apabila turun naik turun naik, dan menyempit julat apabila turun naik turun naik.
Pengesahan jumlah transaksi: Menambah analisis jumlah urus niaga dalam pembentukan FVG dan proses kemasukan semula harga, melakukan urus niaga hanya jika terdapat sokongan jumlah urus niaga yang mencukupi, mengurangkan isyarat palsu.
Klasifikasi keadaan pasaranSistem untuk mengenal pasti keadaan pasaran secara automatik (kecenderungan, julat, turun naik / turun naik), menyesuaikan parameter strategi atau menghentikan perdagangan mengikut keadaan pasaran yang berbeza.
Pembelajaran Mesin: Analisis kejayaan model FVG sejarah melalui algoritma pembelajaran mesin, membina model ramalan untuk menilai kebarangkalian kejayaan yang berpotensi untuk isyarat FVG semasa.
Arahan pengoptimuman ini bukan sahaja meningkatkan kestabilan strategi, tetapi juga meningkatkan keupayaan untuk menyesuaikan diri dengan keadaan pasaran yang berbeza, berpotensi meningkatkan kadar pulangan keseluruhan dan mengurangkan penarikan balik.
Strategi jurang nilai yang adil adalah sistem perdagangan kuantitatif yang berteknologi canggih yang memberi tumpuan kepada menangkap ketidakseimbangan harga dalam struktur mikro pasaran. Dengan pengenalan dan pelaksanaan tepat FVG, strategi ini menyediakan kerangka perdagangan yang jelas dengan peraturan dan kawalan risiko yang ketat untuk pedagang garis pendek dan pedagang algoritma.
Walaupun strategi telah menunjukkan keupayaan untuk menangkap ketidakseimbangan harga mikro dalam versi asas, prestasi strategi dapat ditingkatkan lagi dengan melaksanakan arah pengoptimuman yang dicadangkan, terutamanya sistem parameter yang menyesuaikan diri dan pengesahan jangka masa yang berbilang. Ini adalah kaedah yang patut dipertimbangkan untuk pedagang yang ingin melaksanakan strategi perdagangan kuantitatif yang disiplin dalam jangka masa yang singkat.
Pada akhirnya, kejayaan strategi ini bergantung kepada pemahaman yang mendalam oleh peniaga mengenai konsep FVG dan keupayaan untuk menyesuaikan parameter mengikut keadaan pasaran yang berbeza. Digabungkan dengan pengurusan risiko yang sesuai dan pengoptimuman berterusan, strategi jurang nilai yang adil boleh menjadi alat yang berkesan dalam portofolio perdagangan kuantitatif.
/*backtest
start: 2024-07-09 00:00:00
end: 2025-07-04 08:00:00
period: 4d
basePeriod: 4d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("FVG Strategy [algo ] - 0.10% TP/SL", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === INPUTS ===
thresholdPer = input.float(0, "Threshold %", minval = 0, maxval = 100, step = .1, inline = 'threshold')
auto = input(false, "Auto", inline = 'threshold')
tf = input.timeframe("", "Timeframe")
// SL/TP settings (0.10% each)
sl_pct = 0.10
tp_pct = 0.10
// === TYPE ===
type fvg
float max
float min
bool isbull
int t = time
// === DETECTION FUNCTION ===
detect() =>
var new_fvg = fvg.new(na, na, na, na)
threshold = auto ? ta.cum((high - low) / low) / bar_index : thresholdPer / 100
bull_fvg = low > high[2] and close[1] > high[2] and (low - high[2]) / high[2] > threshold
bear_fvg = high < low[2] and close[1] < low[2] and (low[2] - high) / high > threshold
if bull_fvg
new_fvg := fvg.new(low, high[2], true)
else if bear_fvg
new_fvg := fvg.new(low[2], high, false)
[bull_fvg, bear_fvg, new_fvg]
// === FVG Detection ===
[bull_fvg, bear_fvg, new_fvg] = request.security(syminfo.tickerid, tf, detect())
var fvg_records = array.new<fvg>(0)
var t = 0
if (bull_fvg or bear_fvg) and new_fvg.t != t
array.unshift(fvg_records, new_fvg)
t := new_fvg.t
// === ENTRY STRATEGY ===
if array.size(fvg_records) > 0
latest = array.get(fvg_records, 0)
// BUY Logic
if latest.isbull and close <= latest.max and close >= latest.min and strategy.position_size <= 0
sl = close * (1 - sl_pct / 100)
tp = close * (1 + tp_pct / 100)
strategy.entry("Buy FVG", strategy.long)
strategy.exit("TP/SL Long", from_entry="Buy FVG", stop=sl, limit=tp)
// SELL Logic
if not latest.isbull and close >= latest.min and close <= latest.max and strategy.position_size >= 0
sl = close * (1 + sl_pct / 100)
tp = close * (1 - tp_pct / 100)
strategy.entry("Sell FVG", strategy.short)
strategy.exit("TP/SL Short", from_entry="Sell FVG", stop=sl, limit=tp)
// === VISUALIZE FVG ZONES ===
plotshape(bull_fvg, title="Bullish FVG", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(bear_fvg, title="Bearish FVG", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)