
NOCTURNA v2.0 Shadow Engine adalah sistem perdagangan beradaptasi pelbagai mod yang sangat kompleks, yang dapat secara automatik menukar strategi perdagangan yang berbeza mengikut keadaan pasaran. Sistem ini mengandungi empat mod perdagangan utama: EVE ((Grid Trading), LUCIFER ((Breaking Trading), REAPER ((Reverse Trading) dan SENTINEL ((Trend Tracking), dan dilengkapi dengan modul pengurusan risiko pintar dan sistem fungsi Stop Loss Tracking yang beradaptasi.
Pusat NOCTURNA v2.0 adalah pengenalan status pasaran dan mekanisme suis adaptasi pelbagai mod:
Pengiktirafan status pasaran:
math.abs(ema50 - ema50[10]) < atr * 0.25)math.abs(ema50 - ema200) > atr and macdLine > signalLine)ta.crossover(ema8, ema34) or ta.crossunder(ema8, ema34))ta.crossover(close, ema200) or ta.crossunder(close, ema200))Logik beralih mod:
Logik perdagangan pelbagai mod:
gridSpacing)Pengurusan Risiko:
volatilitySpike): Menghalang kemasukan secara automatik dalam keadaan yang tidak menentuatr * atrMultSL)tpTarget * close)trailTriggerdantrailOffset)Kebolehan menyesuaikan diriSistem ini dapat mengenal pasti keadaan pasaran secara automatik dan beralih ke mod dagangan yang paling sesuai, tanpa campur tangan manusia, sangat mudah disesuaikan.
Pencapaian pasaran menyeluruhDengan empat mod dagangan yang berbeza, sistem ini dapat menangani hampir semua keadaan pasaran, termasuk goyah horizontal, trend yang jelas, pembalikan pasaran dan penembusan tahap kritikal.
Kesan keuntungan daripada perdagangan gridPerdagangan grid bertingkat dalam model EVE mampu menangkap turun naik kecil dalam pasaran yang bergolak dan mencapai kesan pemulihan melalui keuntungan kecil yang kerap.
Pengurusan risiko berlapisStrategi ini menggabungkan mekanisme kawalan risiko bertingkat, termasuk penapisan turun naik, penutupan tetap, penutupan pengesanan dan pengurusan kedudukan automatik, untuk mengawal risiko perdagangan tunggal.
Tracking Intelligent Stop Loss: Menghidupkan penangguhan kerugian secara automatik setelah mencapai tahap keuntungan yang ditetapkan, mengunci sebahagian keuntungan, dan memberi ruang rehat yang mencukupi kepada harga, untuk mengelakkan tergesa-gesa keluar dari pasaran terlalu awal.
Antara muka visualPanel HUD terbina dalam menunjukkan model dagangan yang aktif pada masa ini dan jumlah grid yang dibuka, meningkatkan kebolehpanjangan strategi dan ketelusan operasi.
Sistem amaran: Sistem amaran berformat JSON dan boleh dibaca oleh manusia untuk memudahkan pedagang manual dan robot perdagangan automatik mendapatkan isyarat.
Kepekaan ParameterStrategi ini bergantung kepada beberapa parameter utama (seperti kitaran EMA, jarak grid, kelipatan ATR, dan lain-lain) untuk menilai keadaan pasaran dan melakukan perdagangan. Tetapan parameter yang tidak betul boleh menyebabkan isyarat salah yang kerap atau terlalu banyak perdagangan. Penyelesaian adalah dengan mengukur kembali parameter pengoptimuman dan menyesuaikan parameter untuk pelbagai pasaran dan jangka masa.
Penangguhan menukar modPenghakiman keadaan pasaran dan peralihan corak mungkin mengalami kelewatan, yang menyebabkan penggunaan strategi yang tidak sesuai berhampiran titik peralihan. Ia boleh diperbaiki dengan memperkenalkan lebih banyak indikator isyarat awal atau memendekkan kitaran penghakiman.
Risiko Trend dalam Rangkaian PerdaganganPerdagangan grid dalam EVE mungkin akan terus bertukar kepada arah kerugian dalam pasaran yang sedang tren kuat. Penyelesaian adalah dengan menetapkan had risiko keseluruhan dan penapis trend, atau menghentikan perdagangan grid setelah trend yang jelas diiktiraf.
Terlalu banyak bergantung kepada petunjuk teknikalStrategi ini adalah berdasarkan kepada petunjuk teknikal tradisional seperti EMA dan MACD, yang mungkin tidak berfungsi dalam keadaan pasaran tertentu. Analisis hubungan kuantiti harga bersepadu atau algoritma pengenalan struktur pasaran disyorkan untuk meningkatkan ketepatan penilaian.
Kerumitan sistemKompleksiti sistem pelbagai mod meningkatkan kesukaran dalam pemeliharaan kod dan pemahaman strategi, yang boleh menyebabkan sukar untuk bertindak balas dengan cepat terhadap keadaan yang tidak normal di cakera. Proses ujian yang baik dan mekanisme penanganan kecemasan harus dibina.
Pengaturan parameter dinamikStrategi semasa menggunakan parameter tetap yang boleh dioptimumkan untuk menyesuaikan parameter secara automatik mengikut turun naik pasaran, seperti:
Analisis pelbagai kerangka masaMemperkenalkan analisis pelbagai bingkai masa untuk memastikan arah perdagangan selaras dengan trend bingkai masa yang lebih besar dan mengelakkan perdagangan terbalik ke arah trend utama. Ini boleh dicapai dengan menganalisis EMA dan MACD pada bingkai masa yang lebih tinggi.
Bahagian status pasaran: untuk mengelompokkan keadaan pasaran lebih lanjut, seperti membezakan antara trend kuat dan lemah, gegaran biasa dan gegaran penguncupan, dan menyesuaikan parameter perdagangan untuk keadaan pasaran yang lebih terpecah-pecah.
Penggabungan kuantiti dan hargaMengintegrasikan analisis jumlah dagangan ke dalam strategi, terutamanya dalam perdagangan terobosan (model LUCIFER), untuk menyaring penembusan palsu dengan mengesahkan sama ada penembusan disertai dengan peningkatan jumlah dagangan.
Pengurusan kedudukan yang bersesuaian: Sesuaikan saiz kedudukan mengikut turun naik pasaran, kadar kemenangan model dan keadaan keuntungan dan kerugian semasa, tambah kedudukan pada isyarat kepastian yang tinggi, mengurangkan risiko dalam persekitaran yang tidak pasti.
Pembelajaran Mesin: memperkenalkan algoritma pembelajaran mesin untuk mengoptimumkan pilihan mod dan penyesuaian parameter, meramalkan model mana yang paling berkesan dalam keadaan pasaran semasa melalui model latihan data sejarah.
Keadaan emosi bercampurMengintegrasikan penunjuk sentimen pasaran (seperti VIX atau indeks panik untuk pasaran tertentu), menyesuaikan tindakan strategi atau menangguhkan perdagangan dalam keadaan emosi yang melampau.
NOCTURNA v2.0 Shadow Engine adalah sistem perdagangan beradaptasi berbilang mod inovatif yang menyediakan strategi perdagangan yang dioptimumkan khusus untuk pelbagai keadaan pasaran melalui pengenalan keadaan pasaran pintar dan pertukaran strategi. Ia menggabungkan kelebihan perdagangan grid, trend tracking, perdagangan reverse dan perdagangan terobosan, dan dilengkapi dengan mekanisme pengurusan risiko yang komprehensif, termasuk hentian dinamik, hentian hentian pintar dan penapisan turun naik.
Kelebihan utama strategi ini adalah liputan pasaran yang komprehensif dan kemampuan beradaptasi, yang dapat mengekalkan prestasi yang stabil dalam pelbagai persekitaran pasaran. Walau bagaimanapun, kerumitan dan kepekaan parameter sistem juga membawa risiko dan cabaran pengoptimuman tertentu. Strategi ini dijangka meningkatkan lagi kestabilan dan keuntungan dengan memperkenalkan langkah-langkah pengoptimuman seperti penyesuaian parameter dinamik, analisis pelbagai bingkai masa, segmen keadaan pasaran yang lebih halus, dan peningkatan pembelajaran mesin.
Akhirnya, NOCTURNA v2.0 menyediakan kerangka perdagangan yang kuat, sesuai untuk pedagang yang berpengalaman untuk digunakan dalam perdagangan langsung dengan pengurusan risiko yang sesuai, atau sebagai template asas untuk membangunkan sistem perdagangan yang lebih kompleks.
/*backtest
start: 2025-02-01 00:00:00
end: 2025-06-02 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("NOCTURNA v2.0 – Shadow Engine: Trail Edition", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=2)
// === USER SETTINGS ===
useSL = true
useTP = true
useTrail = true
trailTrigger = 1.5 // % before trail starts
trailOffset = 0.75 // % trail distance
manualMode = input.string("AUTO", title="Mode", options=["AUTO", "EVE", "LUCIFER", "REAPER", "SENTINEL"])
gridSpacing = 0.015
maxLayers = 4
atrMultSL = 1.5
tpTarget = 0.015
// === INDICATORS ===
ema8 = ta.ema(close, 8)
ema34 = ta.ema(close, 34)
ema50 = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
atr = ta.atr(14)
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
volatilitySpike = math.abs(close - open) > 3 * atr
// === AUTO MODE LOGIC ===
isRanging = math.abs(ema50 - ema50[10]) < atr * 0.25
isTrending = math.abs(ema50 - ema200) > atr and macdLine > signalLine
isReversing = ta.crossover(ema8, ema34) or ta.crossunder(ema8, ema34)
isBreakout = ta.crossover(close, ema200) or ta.crossunder(close, ema200)
var string activeMode = "None"
if manualMode != "AUTO"
activeMode := manualMode
else
if isRanging
activeMode := "EVE"
else if isReversing
activeMode := "REAPER"
else if isTrending
activeMode := "SENTINEL"
else if isBreakout
activeMode := "LUCIFER"
// === BASE FOR GRID ===
var float basePrice = na
if na(basePrice) or activeMode != "EVE"
basePrice := close
var int openTrades = 0
openTrades := 0
// === GRID (EVE) ===
for i = 1 to maxLayers
longLevel = basePrice * (1 - gridSpacing * i)
shortLevel = basePrice * (1 + gridSpacing * i)
if activeMode == "EVE" and not volatilitySpike
if close <= longLevel
id = "EVE L" + str.tostring(i)
strategy.entry(id, strategy.long)
sl = close - atrMultSL * atr
tp = useTP ? close + tpTarget * close : na
strategy.exit("TP/SL " + id, from_entry=id, stop=useSL ? sl : na, limit=tp)
openTrades += 1
if close >= shortLevel
id = "EVE S" + str.tostring(i)
strategy.entry(id, strategy.short)
sl = close + atrMultSL * atr
tp = useTP ? close - tpTarget * close : na
strategy.exit("TP/SL " + id, from_entry=id, stop=useSL ? sl : na, limit=tp)
openTrades += 1
// === TRAILING STOP FUNCTION ===
f_trailStop(side, id) =>
if useTrail
trigger = close * (trailTrigger / 100)
offset = close * (trailOffset / 100)
if side == "long"
strategy.exit("Trail " + id, from_entry=id, trail_price=trigger, trail_offset=offset)
else
strategy.exit("Trail " + id, from_entry=id, trail_price=trigger, trail_offset=offset)
// === LUCIFER MODE ===
if activeMode == "LUCIFER" and not volatilitySpike
if ta.crossover(close, ema50)
strategy.entry("Lucifer Long", strategy.long)
f_trailStop("long", "Lucifer Long")
if ta.crossunder(close, ema50)
strategy.entry("Lucifer Short", strategy.short)
f_trailStop("short", "Lucifer Short")
// === REAPER MODE ===
if activeMode == "REAPER" and not volatilitySpike
if ta.crossover(ema8, ema34)
strategy.entry("Reaper Long", strategy.long)
f_trailStop("long", "Reaper Long")
if ta.crossunder(ema8, ema34)
strategy.entry("Reaper Short", strategy.short)
f_trailStop("short", "Reaper Short")
// === SENTINEL MODE ===
if activeMode == "SENTINEL" and not volatilitySpike
if ema50 > ema200 and macdLine > signalLine
strategy.entry("Sentinel Long", strategy.long)
f_trailStop("long", "Sentinel Long")
if ema50 < ema200 and macdLine < signalLine
strategy.entry("Sentinel Short", strategy.short)
f_trailStop("short", "Sentinel Short")
// === DASHBOARD PANEL ===
var label panel = na
label.delete(panel)
panel := label.new(bar_index, high,
"NOCTURNA v2.0\nMode: " + activeMode + "\nOpen Grids: " + str.tostring(openTrades),
style=label.style_label_left, textcolor=color.white, color=color.black)
// === ALERTS – Human Readable
alertcondition(activeMode == "EVE", title="EVE Signal", message="🕊️ NOCTURNA: EVE Grid")
alertcondition(activeMode == "LUCIFER", title="Lucifer Signal", message="🔥 NOCTURNA: LUCIFER Breakout")
alertcondition(activeMode == "REAPER", title="Reaper Signal", message="☠️ NOCTURNA: REAPER Reversal")
alertcondition(activeMode == "SENTINEL", title="Sentinel Signal", message="🛡️ NOCTURNA: SENTINEL Trend")
// === ALERTS – JSON for Bots
alertcondition(activeMode == "EVE", title="JSON EVE", message='{"mode":"EVE","ticker":"{{ticker}}","price":"{{close}}"}')
alertcondition(activeMode == "LUCIFER", title="JSON LUCIFER", message='{"mode":"LUCIFER","ticker":"{{ticker}}","price":"{{close}}"}')
alertcondition(activeMode == "REAPER", title="JSON REAPER", message='{"mode":"REAPER","ticker":"{{ticker}}","price":"{{close}}"}')
alertcondition(activeMode == "SENTINEL", title="JSON SENTINEL", message='{"mode":"SENTINEL","ticker":"{{ticker}}","price":"{{close}}"}')
// === VISUAL PLOT
plot(ema50, title="EMA 50", color=color.gray)