Indikator sinyal panah semaphore ini didasarkan pada osilator DeMarker klasik yang membantu kita mengidentifikasi area overbought dan oversold. Fitur utama dari indikator ini adalah kemampuan untuk memberikan notifikasi, mengirim email, serta push-notifikasi ke perangkat mobile.
Pada versi terbaru indikator ini, terdapat beberapa perubahan pada kode untuk mengimplementasikan notifikasi, pesan email, dan push-notifikasi:
- Menambahkan parameter input baru:
input uint JumlahBar=1;// Nomor bar untuk sinyal input bool SuaraON=true; // Aktifkan notifikasi input uint JumlahNotifikasi=2;// Jumlah notifikasi input bool EmailON=false; // Aktifkan pengiriman sinyal melalui email input bool PushON=false; // Aktifkan pengiriman sinyal ke perangkat mobile
- Menambahkan tiga fungsi baru di akhir kode indikator: BuySignal(), SellSignal(), dan GetStringTimeframe():
// Fungsi sinyal beli void BuySignal(string NamaSinyal, double &BuyArrow[], const int JumlahTotal, const int Prev_calculated, const double &Close[], const int &Spread[]) { static uint counter=0; if(JumlahTotal!=Prev_calculated) counter=0; bool BuySignal=false; bool SeriesTest=ArrayGetAsSeries(BuyArrow); int index; if(SeriesTest) index=int(JumlahBar); else index=JumlahTotal-int(JumlahBar)-1; if(NormalizeDouble(BuyArrow[index],_Digits) && BuyArrow[index]!=EMPTY_VALUE) BuySignal=true; if(BuySignal && counter<=JumlahNotifikasi) { counter++; MqlDateTime tm; TimeToStruct(TimeCurrent(),tm); string text=TimeToString(TimeCurrent(),TIME_DATE)+" "+string(tm.hour)+":"+string(tm.min); double Ask=Close[index]; double Bid=Close[index]; if(SuaraON) Alert("SINYAL BELI Ask=",Ask," Bid=",Bid," waktu saat ini=",text); } }
- Menambahkan beberapa panggilan untuk fungsi BuySignal() dan SellSignal() setelah siklus perhitungan indikator di blok OnCalculate():
BuySignal("iWPRSign", BuyBuffer, rates_total, prev_calculated, close, spread); SellSignal("iWPRSign", SellBuffer, rates_total, prev_calculated, close, spread);
Dimana BuyBuffer dan SellBuffer adalah nama buffer indikator untuk menyimpan sinyal beli dan jual. Nilai kosong dalam buffer indikator baik nol atau EMPTY_VALUE harus ditentukan.
Disarankan untuk hanya menggunakan satu panggilan fungsi BuySignal() dan SellSignal() dalam blok OnCalculate() dari kode indikator.

Gambar 1. Indikator iDeMarkerSignAlert pada grafik

Gambar 2. Indikator iDeMarkerSignAlert. Menghasilkan notifikasi.
Komentar 0