# Multicurrency OnTick (string symbol) event handler

> Download: onmultitick.zip    Robot Multi-Mata Uang di MT5: Ngobrol Santai Soal OnTick(string symbol)   Pernah nggak sih kamu lagi asyik mantau grafik EURUSD, eh tiba-tiba ada peluang bagus di GBPJPY yang kelewat? Nah, ini nih yang bikin pusing kalau kita cuma fokus di satu mata uang. Tapi tenang, di MetaTrader 5 (MT5) ada solusinya, namanya robot multi-mata uang. Khususnya yang pakai event handler OnTick(string symbol). Yuk, kita bedah pelan-pelan biar gampang dicerna, bahkan buat kamu yang baru

**URL:** https://metatrader.id/MT5+Robot/multicurrency-ontick-string-symbol-event-handler

---


## Multicurrency OnTick (string symbol) event handler

**Download:** [onmultitick.zip](https://www.mql5.com/en/code/download/280/onmultitick.zip?ref=metatrader.id)

## Robot Multi-Mata Uang di MT5: Ngobrol Santai Soal `OnTick(string symbol)`

Pernah nggak sih kamu lagi asyik mantau grafik EURUSD, eh tiba-tiba ada peluang bagus di GBPJPY yang kelewat? Nah, ini nih yang bikin pusing kalau kita cuma fokus di satu mata uang. Tapi tenang, di MetaTrader 5 (MT5) ada solusinya, namanya robot multi-mata uang. Khususnya yang pakai *event handler* `OnTick(string symbol)`. Yuk, kita bedah pelan-pelan biar gampang dicerna, bahkan buat kamu yang baru kenal dunia trading.

### Apa Sih Intinya Robot Multi-Mata Uang Ini?

Bayangin gini, biasanya robot trading atau Expert Advisor (EA) kamu itu cuma "dengerin" pergerakan harga (tick) dari satu simbol, misalnya EURUSD aja. Jadi, kalau ada kejadian penting di grafik GBPJPY, EA kamu nggak bakal sadar. Nah, robot multi-mata uang ini beda. Dia itu kayak punya telinga super yang bisa dengerin pergerakan harga dari *banyak* simbol sekaligus, nggak cuma satu!

Fungsi utamanya ya itu tadi: bikin EA kamu jadi lebih "sadar" dan bisa bereaksi terhadap perubahan harga di berbagai mata uang atau instrumen finansial lainnya secara bersamaan. Ini penting banget, apalagi kalau kamu suka trading pasangan mata uang yang pergerakannya punya korelasi atau malah berlawanan. Dengan begini, potensi profit kamu bisa makin luas, dan kerugian juga bisa diminimalisir karena kamu bisa punya posisi di berbagai aset.

### Gimana Cara Kerjanya Si `OnTick(string symbol)` Ini?

Nah, di MT5, cara kerennya bikin robot multi-mata uang itu lewat fungsi `OnTick(string symbol)`. Kalau kamu familiar dengan `OnTick()` biasa, fungsinya mirip tapi ada tambahan "kekuatan super".

Begini ceritanya: setiap kali ada pergerakan harga baru (tick) di *setiap* simbol yang kamu tentukan, fungsi `OnTick(string symbol)` ini akan langsung aktif. Yang bikin beda, dia nggak cuma dikasih tahu kalau ada tick baru, tapi dia juga dikasih tahu simbol mana yang barusan mengalami tick tersebut. Jadi, di dalam fungsi ini, kamu bisa pasang logika: "Kalau tick baru datang dari EURUSD, lakukan A. Kalau dari GBPJPY, lakukan B."

Jadi, ibaratnya, EA kamu itu lagi duduk santai, terus tiba-tiba ada alarm berbunyi. Alarmnya nggak cuma "ting!", tapi juga ngasih tahu "alarm dari kamar EURUSD!" atau "alarm dari kamar GBPJPY!". Nah, EA kamu tinggal ngelihat alarmnya datang dari mana, terus dia tahu harus ngapain.

Contoh gampangnya: kamu bisa bikin EA yang siap beli EURUSD kalau harganya naik 10 pips dalam 1 menit, tapi di saat yang sama dia juga siap jual GBPJPY kalau harganya turun 15 pips dalam 1 menit. Semua itu dipantau dalam satu EA yang sama, tanpa perlu bikin EA terpisah buat tiap simbol. Keren, kan?

### "Setting" Awal: Kunci Agar Robot Jalan Lancar

Biar robot multi-mata uang ini bisa jalan dengan optimal, ada beberapa "pengaturan" penting yang harus kamu perhatikan di awal. Ini kayak kamu mau nyalain mesin mobil, harus isi bensin dan cek oli dulu.

#### 1. Konfigurasi Dasar: `SYMBOLS_TRADING` dan `CHART_EVENT_SYMBOL`

Ada dua parameter utama yang perlu kamu setting pakai `#define`. Anggap aja ini kayak daftar kontak dan "jenis panggilan" buat robot kamu.

- **`SYMBOLS_TRADING`**: Ini adalah daftar simbol (mata uang, komoditas, saham, dll.) yang mau kamu pantau. Kamu perlu menuliskannya dalam bentuk teks, dipisah pakai koma. Misalnya, kalau kamu mau pantau EURUSD, GBPUSD, dan AUDUSD, kamu akan tulis:

  ```
  #define SYMBOLS_TRADING "EURUSD,GBPUSD,AUDUSD"
  ```

  Nah, kalau kamu pengen lebih praktis dan mau memantau *semua* simbol yang ada di jendela "Market Watch" kamu, ada triknya juga. Kamu bisa set `SYMBOLS_TRADING` jadi seperti ini:

  ```
  #define SYMBOLS_TRADING "*"
  ```

  Ini keren banget, karena kamu bisa nambah atau ngurangin simbol di "Market Watch" kapanpun, dan robot kamu otomatis akan menyesuaikan pemantauannya tanpa perlu kamu ubah kodenya lagi. Fleksibel banget!
- **`CHART_EVENT_SYMBOL`**: Parameter ini menentukan *jenis kejadian* apa saja yang mau kamu tanggapi dari simbol-simbol di `SYMBOLS_TRADING`. Ada banyak pilihan jenis kejadian, misalnya pergerakan harga tertentu, pembukaan grafik baru, atau bahkan berita ekonomi (meskipun ini lebih kompleks lagi). Pilihan-pilihannya ini diatur pakai "flag" atau gabungan beberapa flag dari enumerasi `ENUM_CHART_EVENT_SYMBOL`.

  Contohnya gini:

  - Kalau kamu cuma mau robot bereaksi saat ada *perubahan harga*, kamu bisa pakai flag yang sesuai.
  - Kalau kamu mau robot juga bereaksi saat ada *pembukaan grafik baru* untuk simbol tersebut, kamu tambahkan flag yang lain.
  - Atau kamu bisa kombinasikan keduanya.

  Dengan memahami `CHART_EVENT_SYMBOL`, kamu bisa membuat robot yang sangat spesifik dalam merespon kejadian di pasar.

#### 2. File Pendukung: `Include File` dan `Spies`

Biar kerja robotnya makin canggih, biasanya ada file-file tambahan yang perlu disertakan atau diletakkan di folder tertentu dalam MT5.

- **`Include file`**: Ini kayak buku resep tambahan buat robot kamu. File-file ini berisi fungsi-fungsi atau logika-logika yang sudah jadi, yang bisa kamu panggil di dalam kode utama robot kamu. Jadi, kamu nggak perlu menulis ulang kode yang sama berkali-kali. Cukup panggil dari file `include` ini.
- **`"Spies"` (Agent-Indicators)**: Ini konsep yang menarik. Kadang, robot multi-mata uang ini butuh bantuan "agen-agen" khusus untuk memantau kondisi di grafik lain. Agen-agen ini sering disebut "spies" atau indikator agen. File kontrolnya, misalnya `"Spy Control panel MCM.ex5"`, harus diletakkan di folder `\MQL5\Indicators\` agar robot utama bisa memanggil dan memerintahkannya. Ibaratnya, robot utama adalah manajer, dan para "spies" ini adalah staf lapangan yang dikirim untuk mengumpulkan informasi dari berbagai lokasi.

### Pengalaman di Strategy Tester

Nah, ini yang sering bikin bingung buat pemula: gimana sih robot ini jalan di mode pengujian alias Strategy Tester? Ternyata, di Strategy Tester, fungsi `OnTick(string symbol)` ini akan bekerja berdasarkan tick dari simbol yang kamu pilih di pengaturan Strategy Tester.

Artinya, kalau kamu menguji robot ini di EURUSD, maka `OnTick(string symbol)` akan aktif setiap ada tick baru di EURUSD. Tapi, kalau kamu set `SYMBOLS_TRADING` kamu dengan daftar simbol lain (misalnya "GBPUSD,AUDUSD"), maka robotnya akan tetap memantau tick dari simbol-simbol yang ada di `SYMBOLS_TRADING` tersebut *selain* tick dari simbol yang sedang diuji di Strategy Tester. Ini bikin pengujian jadi lebih realistis, karena robotmu tetap bisa bereaksi terhadap "kejadian" di simbol lain meskipun fokus pengujiannya di satu simbol. Penting banget untuk memastikan `SYMBOLS_TRADING` terisi dengan daftar simbol yang benar saat menggunakan Strategy Tester untuk mendapatkan hasil yang akurat.

### Penataan File yang Benar

Terakhir, tapi nggak kalah penting, adalah soal penataan file. Biasanya, kalau kamu download robot atau template yang canggih dari MQL5, mereka akan datang dalam bentuk arsip ZIP atau sejenisnya. Kamu perlu mengekstrak isi arsip tersebut dan menempatkan file-file yang diminta ke dalam folder-folder yang benar di direktori MQL5 kamu. Misalnya, file `.mq5` untuk robot utama ditaruh di `MQL5\Experts`, file indikator di `MQL5\Indicators`, dan file `include` di `MQL5\Include`. Penataan yang rapi ini memastikan MT5 bisa menemukan dan menjalankan semua komponen robot dengan benar.

Dengan memahami fungsi `OnTick(string symbol)` dan pengaturan terkaitnya, kamu membuka pintu ke dunia trading yang lebih luas di MT5. Robot kamu jadi lebih pintar, lebih sigap, dan punya potensi lebih besar untuk menangkap peluang di berbagai pasar secara bersamaan. Selamat mencoba!
