
“Strategi perdagangan sesi waktu tinggi dengan logika reversal cerdas” adalah strategi perdagangan kuantitatif yang tepat yang dirancang khusus untuk perdagangan sesi dalam jangka waktu 1 jam. Strategi ini memanfaatkan konfirmasi arah, parameter risiko yang telah ditentukan sebelumnya, dan pesanan harga batas yang dieksekusi malam hari untuk mendapatkan keunggulan pasar.
Prinsip-prinsip inti dari strategi ini didasarkan pada analisis hubungan harga pada titik-titik tertentu dalam waktu dan logika pembalikan cerdas:
Mekanisme konfirmasi arahSetiap hari pada pukul 18:00 waktu New York, sistem membandingkan harga pembukaan pukul 08:00 hari itu dengan harga penutupan pukul 18:00. Jika arah harga hari itu sama dengan hari sebelumnya, strategi akan membalikkan sinyal; Jika arahnya berbeda, tetaplah arah tren hari itu. Logika ini bertujuan untuk menghindari kehabisan tren dan menangkap koreksi harga.
Definisi titik masukSetelah itu, sistem akan secara otomatis mengatur titik masuk berdasarkan arah yang telah dikonfirmasi.
Pendaftaran dibatasi waktuPesan dikirim setelah pukul 18:00 waktu New York dan dapat dipicu kapan saja antara pukul 18:00 dan 08:00 hari berikutnya. Pesan akan dibatalkan secara otomatis jika titik masuk tidak disentuh sebelum 08:00 hari berikutnya.
Fungsi manual: Jika perdagangan masih terbuka pada waktu yang dikonfigurasi (09:00 waktu New York secara default), sistem akan menutup semua posisi, mensimulasikan skenario keluar dalam sehari yang realistis.
Perhitungan posisi berdasarkan risikoUkuran Posisi: Bergantung pada ukuran akun, persentase risiko, dan stop loss yang dihitung secara dinamis untuk memastikan bahwa eksposur risiko tetap konsisten terlepas dari pergerakan pasar.
Dengan analisis kode yang mendalam, strategi ini menunjukkan keuntungan yang signifikan:
Eksekusi transaksi tepat waktuStrategi: Menggunakan titik waktu tertentu (08:00 dan 18:00 waktu New York) untuk pengambilan keputusan dan eksekusi, memastikan untuk menangkap peluang pada saat-saat penting di pasar. Pendekatan berbasis waktu ini mengurangi perdagangan bising dan meningkatkan prediktabilitas perdagangan.
Logika pembalikan cerdasDengan membandingkan arah harga dua hari berturut-turut, strategi dapat mengidentifikasi titik kehabisan tren potensial dan membalikkan arah pada waktu yang tepat. Metode ini membantu menghindari mengejar tren yang sudah terlalu lama dan meningkatkan akurasi entry.
Integrasi Manajemen RisikoStrategi ini memiliki fitur manajemen risiko yang komprehensif, termasuk:
Keuntungan dari pesanan terbatas: Menggunakan limit order daripada market order untuk memastikan bahwa transaksi dilakukan dengan harga yang lebih menguntungkan, mengurangi slippage, dan menghindari masuk dengan kondisi yang tidak menguntungkan.
Operasi sepenuhnya otomatisSetelah diatur, strategi dapat dijalankan secara otomatis tanpa perlu pemantauan terus menerus, mengurangi gangguan emosional dan kesalahan manusia.
Meskipun strategi ini dirancang dengan baik, ada risiko berikut:
Kehilangan peluang perdaganganKarena titik masuk didasarkan pada titik tertinggi/terendah hari itu, dan ada batasan waktu, strategi mungkin melewatkan peluang perdagangan ketika harga belum mencapai titik set. Ini lebih sering terjadi, terutama dalam lingkungan yang kurang volatil.
Risiko kegagalan logika terbalikDalam pasar tren yang kuat, logika pembalikan berdasarkan kesamaan arah dapat menyebabkan perdagangan negatif prematur, meningkatkan risiko kerugian.
Ketergantungan waktuStrategi ini sangat bergantung pada titik waktu tertentu (waktu New York), dan mungkin kurang efektif dalam pasar yang berbeda atau waktu perdagangan yang tidak teratur.
Stop loss tetapPenggunaan poin tetap sebagai stop loss mungkin tidak sesuai dengan semua kondisi pasar, terutama dalam kasus peningkatan volatilitas yang tiba-tiba.
Solusi:
Strategi ini dapat dioptimalkan melalui:
Tingkat Stop Loss/Stop StopStrategi saat ini menggunakan poin tetap sebagai stop loss dan stop loss, yang dapat ditingkatkan menjadi tingkat dinamis berdasarkan ATR atau persentase volatilitas untuk lebih beradaptasi dengan kondisi pasar yang berbeda. Ini dilakukan karena volatilitas pasar akan berubah seiring waktu, dan poin tetap mungkin terlalu kecil pada periode fluktuasi tinggi dan terlalu besar pada periode fluktuasi rendah.
Tambahkan filter trenIntroduksi indikator tren (seperti Moving Average Crossover atau ADX) sebagai konfirmasi tambahan. Perdagangan hanya dalam kondisi tren yang menguntungkan. Ini akan mengurangi sinyal salah dalam pasar yang menyusun dan meningkatkan tingkat kemenangan secara keseluruhan.
Optimalkan jendela waktuDengan mengevaluasi kombinasi titik waktu yang berbeda (tidak terbatas pada 08:00 dan 18:00), menemukan jendela waktu terbaik untuk pasar tertentu. Instrumen keuangan yang berbeda mungkin menunjukkan pola perilaku yang unik pada waktu yang berbeda.
Menambahkan konfirmasi multi-siklus: Memverifikasi sinyal 1 jam dengan memeriksa arah dari kerangka waktu yang lebih tinggi (seperti 4 jam atau garis matahari) untuk memastikan bahwa perdagangan mengikuti tren yang lebih besar. Metode ini dapat mengurangi risiko perdagangan berlawanan arah.
Implementasi mekanisme profit parsial: Menambahkan fungsi untuk melonggarkan sebagian posisi ketika tingkat keuntungan tertentu tercapai, mengunci sebagian keuntungan sambil mengizinkan sisa posisi untuk terus beroperasi. Hal ini dapat meningkatkan stabilitas keuntungan secara keseluruhan sambil mempertahankan potensi pengembalian yang tinggi.
Advanced Time Sessions Trading Strategy and Intelligent Reversal Logic adalah sistem perdagangan kuantitatif yang dirancang dengan baik yang menggabungkan titik keputusan khusus waktu, konfirmasi arah cerdas, dan manajemen risiko yang komprehensif. Dengan menganalisis hubungan harga di titik-titik waktu penting di 08:00 dan 18:00 waktu New York, dan menerapkan logika reversal cerdas, strategi ini dapat secara efektif mengidentifikasi potensi kehabisan tren dan peluang reversal korektif.
Mekanisme pesanan batas harga strategi memastikan harga masuk yang lebih menguntungkan, sementara parameter risiko yang telah ditentukan sebelumnya dan perhitungan posisi dinamis memberikan kontrol risiko yang konsisten. Meskipun ada beberapa risiko yang melekat, seperti kehilangan peluang perdagangan dan kegagalan logika reversal dalam kondisi pasar tertentu, ini dapat diatasi dengan arah optimasi yang disarankan.
Strategi ini memiliki potensi untuk meningkatkan kinerja dan adaptasi lebih lanjut dengan menerapkan tingkat stop loss / stop loss yang dinamis, menambahkan filter tren, mengoptimalkan jendela waktu, dan menambahkan konfirmasi multi-siklus dan mekanisme profit parsial. Secara keseluruhan, ini adalah sistem perdagangan yang terstruktur dan logis, sangat cocok untuk pedagang yang ingin mencapai otomatisasi dan disiplin dalam perdagangan intraday.
/*backtest
start: 2024-06-27 00:00:00
end: 2025-06-25 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":50000000}]
*/
//@version=6
strategy("LANZ Strategy 1.0 [Backtest]", overlay=true, default_qty_type=strategy.cash, default_qty_value=100)
// === TIMEFRAME RESTRICTION ===
if timeframe.period != "60"
runtime.error("🚫 LANZ Strategy 1.0 is only available on the 1h timeframe.")
// === INPUTS ===
accountSizeUSD = input.int(100000, title="Account #1 - Capital ($)", minval=1, group="💸 Main Account Management")
riskPercent = input.float(1.0, title="Account #1 - Risk (%)", minval=0.1, maxval=100, group="💸 Main Account Management")
slPipsInput = input.int(18, title="Stop Loss (pips)", minval=1, group="📏 Risk Settings")
tpPipsInput = input.int(54, title="Take Profit (pips)", minval=1, group="📏 Risk Settings")
manualCloseHour = input.int(9, title="Hora de Cierre Manual (NY)", minval=0, maxval=23, group="🔚 Cierre Manual")
// === GLOBALS ===
pipSize = syminfo.mintick * 10
var float openAt0800 = na
var float closeAt1800 = na
var int priceDirection = na
var int prevPriceDirection = na
var int todayPriceDirection = na
var int finalSignalDirection = na
var float baseLevel = na
var float baseSL = na
var float baseTP = na
var bool orderSent = false
// === KEY TIMES ===
is0800 = (hour(time, "America/New_York") == 8 and minute(time, "America/New_York") == 0)
is1800 = (hour(time, "America/New_York") == 18 and minute(time, "America/New_York") == 0)
nyHour = hour(time, "America/New_York")
nyMinute = minute(time, "America/New_York")
entryWindow = (nyHour >= 18 or nyHour < 8)
cutoffPassed = not entryWindow
isManualClose = (nyHour == manualCloseHour and nyMinute == 0)
// === CAPTURE OPEN AND CLOSE ===
if is0800
openAt0800 := open
if is1800
closeAt1800 := close
priceDirection := closeAt1800 > openAt0800 ? 1 : closeAt1800 < openAt0800 ? -1 : 0
prevPriceDirection := todayPriceDirection
todayPriceDirection := priceDirection
coinciden = priceDirection == prevPriceDirection and not na(prevPriceDirection)
finalSignalDirection := coinciden ? priceDirection : -1 * priceDirection
fibRange = high - low
baseLevel := finalSignalDirection == -1 ? low : high
baseSL := finalSignalDirection == -1 ? baseLevel - slPipsInput * pipSize : baseLevel + slPipsInput * pipSize
baseTP := finalSignalDirection == -1 ? baseLevel + tpPipsInput * pipSize : baseLevel - tpPipsInput * pipSize
orderSent := false
// === LIMIT ORDER SENDING (AT 19:00 AND FOLLOWING IF NOT YET TOUCHED) ===
canPlaceOrder = not orderSent and strategy.opentrades == 0 and entryWindow
if canPlaceOrder
slPips = math.abs(baseLevel - baseSL) / pipSize
riskUSD = accountSizeUSD * (riskPercent / 100)
qty = slPips > 0 ? (riskUSD / (slPips * 10)) : na
if not na(qty)
isLong = finalSignalDirection == -1
if isLong
strategy.entry("BUY", strategy.long, qty=qty, limit=baseLevel)
strategy.exit("TP/SL BUY", from_entry="BUY", stop=baseSL, limit=baseTP)
else
strategy.entry("SELL", strategy.short, qty=qty, limit=baseLevel)
strategy.exit("TP/SL SELL", from_entry="SELL", stop=baseSL, limit=baseTP)
orderSent := true
// === CANCEL IF NO EP TOUCHED BEFORE 08:00 NY ===
if cutoffPassed and strategy.opentrades == 0 and orderSent
strategy.cancel("BUY")
strategy.cancel("SELL")
orderSent := false
// === MANUAL CLOSING AT HH:00 NY CONFIGURABLE ===
if strategy.opentrades > 0 and isManualClose
strategy.close("BUY")
strategy.close("SELL")