Layering ATR MT4: Script & EA Otomatis 3 Kelas (Buy, Sell, Manager)
Layering ATR MT4:
Script & EA Otomatis 3 Kelas
untuk Strategi Layering Profesional
Panduan lengkap tiga file MQL4 untuk strategi layering otomatis berbasis ATR di MetaTrader 4. Mulai dari cara memasang order berlapis secara instan, hingga manajemen posisi otomatis — break-even, hapus pending order, dan trailing stop — semua berjalan tanpa intervensi manual.
1. Apa Itu Strategi Layering ATR?
Strategi layering adalah teknik trading di mana trader membuka beberapa posisi secara bertingkat pada level harga yang berbeda-beda, dengan tujuan mengoptimalkan harga rata-rata entry dan memaksimalkan potensi profit dari satu pergerakan tren yang kuat.
Masalah klasik layering manual adalah penentuan jarak antar layer (step) dan target profit (TP) yang seringkali asal-asalan — terlalu rapat di pasar volatile, atau terlalu jauh di pasar sepi. Di sinilah ATR (Average True Range) masuk sebagai solusi. ATR mengukur volatilitas pasar secara real-time sehingga jarak layer dan target profit menyesuaikan kondisi pasar secara dinamis.
ATR adalah indikator volatilitas yang tidak bias arah. Nilai ATR yang tinggi berarti pasar sedang bergerak lebar — step dan TP pun otomatis membesar. Sebaliknya di pasar sempit, layer lebih rapat dan TP lebih konservatif. Ini membuat strategi layering adaptif dan tidak perlu disetel ulang setiap hari.
Tools ini mengimplementasikan layering 3 kelas — A, B, dan C — yang masing-masing punya tujuan berbeda:
2. Mengenal 3 File: Peran & Fungsinya
Sistem ini terdiri dari tiga file MQL4 yang bekerja bersama-sama:
Memasang seluruh layer BUY sekaligus. Mendukung drag & drop, harga manual, atau entry instan di harga Ask.
Memasang seluruh layer SELL sekaligus. Mendukung drag & drop, harga manual, atau entry instan di harga Bid.
EA yang berjalan terus-menerus di chart dan mengelola posisi: hapus PO, pasang BE, aktifkan trailing secara otomatis.
Script Buy/Sell hanya bertugas membuka order. EA Manager-lah yang mengelola posisi setelahnya. Pasang EA Manager di chart yang sama dengan symbol yang ditradingkan, dengan Magic Number yang identik.
3. Script Layering ATR Buy — Fitur & Parameter
File Layering_ATR_Buy.mq4 adalah script (bukan EA) yang dijalankan sekali
untuk memasang seluruh layer BUY dalam satu klik. Setelah selesai, script berhenti —
manajemen dilanjutkan oleh EA Manager.
Mode Entry Harga A1
Script mendukung tiga cara penentuan harga entry layer pertama (A1):
WindowPriceOnDropped().
InpManualPrice dengan harga yang diinginkan sebelum klik OK.
Ask saat itu, sisanya BuyLimit.
Parameter Lengkap Script Buy
| Parameter | Default | Keterangan |
|---|---|---|
InpManualPrice | 0.0 | Harga A1 manual. 0 = Drag & Drop atau Instan Ask |
InpLayersA | 4 | Jumlah layer Kelas A (Scalping) |
InpLayersB | 3 | Jumlah layer Kelas B (Mid-Term) |
InpLayersC | 3 | Jumlah layer Kelas C (Swing/Trailing) |
InpLotA | 0.02 | Lot per layer Kelas A |
InpLotB | 0.02 | Lot per layer Kelas B |
InpLotC | 0.02 | Lot per layer Kelas C |
InpStep | 0 | Jarak antar layer (Points). 0 = ikuti ATR |
InpStep_ATR_TF | M1 | Timeframe ATR untuk kalkulasi Step |
InpStep_ATR_Per | 14 | Periode ATR untuk Step |
InpStep_ATR_Multi | 1.0 | Multiplier ATR untuk Step (x ATR) |
InpATR_Period | 14 | Periode ATR untuk kalkulasi TP & SL |
InpTP_ATR_TF | M5 | Timeframe ATR untuk TP & SL |
InpTP_A_Multi | 1.0 | TP Kelas A = A1 + (1.0 × ATR) |
InpTP_B_Multi | 2.0 | TP Kelas B = A1 + (2.0 × ATR) |
InpTP_C_Multi | 3.0 | TP Kelas C = A1 + (3.0 × ATR) |
InpSL_Multi | 1.5 | SL = entry terjauh − (1.5 × ATR) |
InpMagic | 2015 | Magic Number. Harus sama dengan EA Manager |
Logika Kalkulasi Harga
Semua TP dan SL dihitung secara dinamis berdasarkan ATR, bukan nilai pips statis:
Dari drag & drop, input manual, atau harga Ask saat ini.
Dari timeframe InpTP_ATR_TF dengan periode InpATR_Period.
Dari InpStep (manual points) atau ATR Step × Multi jika Step = 0.
TP A/B/C = A1 + (Multi × ATR TP/SL). SL = entry terjauh − (SL Multi × ATR).
A1: BuyMarket (instan) atau BuyLimit. A2..C semua: BuyLimit. Comment diberi label kelas & timeframe.
Script menggunakan dua ATR terpisah: satu untuk step antar layer (bisa M1 untuk step kecil), dan satu untuk TP/SL (bisa M5/H1 untuk target yang lebih bermakna). Ini memberikan fleksibilitas tinggi dalam menyesuaikan strategi.
4. Script Layering ATR Sell — Fitur & Parameter
File Layering_ATR_Sell.mq4 adalah pasangan script Buy, dengan logika
yang identik secara simetris namun dibalik arahnya untuk posisi SELL.
Perbedaan Kunci vs Script Buy
| Aspek | Script Buy | Script Sell |
|---|---|---|
| Harga A1 Instan | Harga Ask | Harga Bid |
| Order A1 | OP_BUY (market) | OP_SELL (market) |
| Layer berikutnya | BuyLimit (lebih rendah) | SellLimit (lebih tinggi) |
| Arah layer | A1 → bawah (entri lebih murah) | A1 → atas (entri lebih mahal) |
| TP arah | A1 + (Multi × ATR) → atas | A1 − (Multi × ATR) → bawah |
| SL arah | Entry terjauh − (Multi × ATR) | Entry terjauh + (Multi × ATR) |
| Warna order | clrBlue | clrRed |
Parameter input untuk Script Sell persis sama dengan Script Buy. Trader cukup memahami satu set parameter, lalu tinggal pilih Buy atau Sell sesuai arah posisi yang diinginkan.
Mode Entry Harga A1 (Sell)
InpManualPrice dengan harga entry A1 yang diinginkan.
Bid saat itu, layer berikutnya SellLimit di atas.
5. EA Layering Manager ATR — Cara Kerja Otomatis
File Layering_Manager_ATR.mq4 adalah Expert Advisor yang
dipasang permanen di chart dan berjalan di setiap tick harga. EA ini tidak membuka posisi
baru — tugasnya murni mengelola posisi yang sudah dibuka oleh Script Buy/Sell.
Tiga Trigger Otomatis
| # | Trigger & Kondisi | Aksi yang Diambil |
|---|---|---|
| 1 | Kelas A TP (Ada posisi A yang tutup) prevCntA > 0 AND cntA < prevCntA AND PO > 0 | Hapus semua Pending Order searah (BUY atau SELL) secara instan. Mencegah layer bawah masuk di kondisi yang tidak lagi relevan. |
| 2 | Semua Kelas A TP & Tidak Ada PO cntA == 0 AND PO == 0 AND (cntB > 0 OR cntC > 0) | Pasang Break-Even (BE) pada seluruh posisi B dan C. SL dipindahkan ke entry A1 terdekat + offset (poin). Posisi B dan C kini terlindungi dari kerugian. |
| 3 | Semua Kelas B TP (Posisi B habis) prevCntB > 0 AND cntB == 0 AND cntC > 0 | Aktifkan Trailing Stop ATR pada seluruh posisi C. Trailing baru berjalan saat harga melewati level TP B, dengan step = TrailStep_Multi × ATR. |
Mekanisme Trailing Stop Kelas C
Trailing stop pada Kelas C dirancang dengan syarat aktivasi ekstra: trailing hanya berjalan setelah harga benar-benar melewati level TP B yang tercatat dari posisi B aktif sebelumnya. Ini memastikan trailing tidak berjalan prematur saat posisi B belum TP.
EA mendeteksi prevCntB > 0 dan cntB == 0. Flag buyB_Exists = false.
Trailing aktif hanya jika Bid ≥ lastTP_B_Buy. Harga belum sampai TP B → trailing belum jalan.
newSL = Bid − (TrailStep_Multi × ATR). Dinormalisasi ke presisi simbol.
SL hanya diubah jika newSL > currentSL (BUY) agar trailing tidak bergerak mundur.
Parameter EA Manager
| Parameter | Default | Keterangan |
|---|---|---|
InpBE_Offset | 100 | Jarak SL Break-Even dari harga entry A1 (Points). Memberikan buffer kecil di atas A1 agar BE positif. |
InpATR_Period | 14 | Periode ATR yang digunakan untuk kalkulasi TrailStep. Sebaiknya sama dengan Script. |
InpATR_TF | 0 (Current) | Timeframe ATR untuk TrailStep. 0=Current, 1=M1, 5=M5, 15=M15, 60=H1, 240=H4, dst. |
InpTrailStep_Multi | 0.5 | Besar trailing step = 0.5 × ATR. Kecilkan untuk trailing lebih ketat, besarkan untuk lebih longgar. |
InpMagic | 2015 | Magic Number. Wajib sama dengan nilai di Script Buy/Sell. |
EA mengidentifikasi posisi miliknya menggunakan dua lapisan filter: Magic Number
dan prefix comment order ("LayeringATR-A-", "LayeringATR-B-",
"LayeringATR-C-"). Ini memastikan EA tidak mengganggu posisi lain meski
Magic Number kebetulan sama.
6. Cara Pakai: Panduan Langkah demi Langkah
Instalasi File
-
1Salin Layering_ATR_Buy.mq4 dan Layering_ATR_Sell.mq4 ke folder
MQL4/Scripts/di direktori data MT4. -
2Salin Layering_Manager_ATR.mq4 ke folder
MQL4/Experts/. -
3Buka MetaEditor, compile ketiga file (tekan F7). Pastikan tidak ada error.
-
4Refresh Navigator di MT4 (klik kanan → Refresh). Script dan EA akan muncul di daftar.
Langkah Penggunaan
-
1Pasang EA Manager: Drag
Layering_Manager_ATRdari Navigator ke chart. Aktifkan "Allow live trading". Set Magic Number, ATR, dan BE Offset sesuai kebutuhan. -
2Konfigurasi Script: Klik dua kali script Buy atau Sell di Navigator, atur semua parameter (jumlah layer, lot, ATR TF, TP multiplier, Magic Number — harus sama dengan EA Manager).
-
3Tentukan Harga Entry:
• Drag & Drop: Seret script langsung ke level harga di chart → klik OK.
• Manual: IsiInpManualPrice→ klik OK.
• Instan: Langsung klik OK tanpa isi apapun → A1 masuk di harga pasar. -
4Pantau di Journal/Experts Tab: Script akan mencetak ringkasan lengkap: ATR, step, TP, SL, dan total layer. Periksa apakah semua order terpasang dengan benar.
-
5Biarkan EA Bekerja: Setelah order aktif, EA Manager akan otomatis menghapus PO, memasang BE, dan mengaktifkan trailing sesuai kondisi yang terpenuhi. Tidak perlu intervensi manual.
✔ Magic Number Script = Magic Number EA Manager
✔ EA Manager aktif di chart (tidak di-pause)
✔ "Allow live trading" dicentang di EA Manager
✔ Test dulu di akun demo sebelum real
7. Perbandingan MQL5 vs MQL4
Tools ini adalah hasil konversi dari versi MQL5 asli. Semua fitur trading dipertahankan penuh, hanya sintaks dan API yang disesuaikan dengan environment MT4.
| Aspek | MQL5 (Asli) | MQL4 (Versi Ini) |
|---|---|---|
| Harga Drag & Drop | ChartPriceOnDropped() | WindowPriceOnDropped() |
| Buka/tutup posisi | CTrade library | OrderSend() native |
| Modifikasi posisi | trade.PositionModify() | OrderModify() native |
| Loop posisi aktif | PositionGetTicket(i) | OrderSelect(i, SELECT_BY_POS) |
| Indikator ATR | Handle-based + CopyBuffer() | iATR(symbol, tf, period, shift) |
| Fitur 3 Kelas A/B/C | ✔ Ada | ✔ Ada |
| ATR Step & TP dinamis | ✔ Ada | ✔ Ada |
| Break-Even otomatis | ✔ Ada | ✔ Ada |
| Trailing Stop ATR | ✔ Ada | ✔ Ada |
| Hapus PO otomatis | ✔ Ada | ✔ Ada |
| Drag & Drop harga | ✔ Ada | ✔ Ada |
| Input group visual | ✔ Ada | ✗ Tidak ada di MT4 |
8. FAQ — Pertanyaan yang Sering Diajukan
9. Kesimpulan
Layering ATR MT4 adalah sistem trading otomatis yang lengkap dalam tiga file. Script Buy dan Sell menangani pembukaan posisi berlapis secara cerdas — dengan ATR sebagai penentu jarak dan target — sementara EA Manager bekerja di balik layar untuk melindungi modal dan memaksimalkan profit secara otomatis.
Selalu uji tools di akun demo terlebih dahulu. Pahami cara kerja tiap trigger sebelum digunakan di akun real. Strategi layering memiliki risiko drawdown yang perlu dikelola dengan money management yang tepat.
