Beranda Indikator Teknis Postingan

Doji Hunter: Indikator Canggih untuk MetaTrader 4

Lampiran
9883.zip (1.55 KB, Unduh 0 kali)

Halo, trader! Kali ini kita akan membahas tentang indikator Doji Hunter yang bisa kamu gunakan di MetaTrader 4. Indikator ini dirancang untuk membantu kita mendeteksi pola candlestick doji dengan lebih efektif.

Sebagai permulaan, saya menambahkan variabel RangeOfBars yang memungkinkan kamu menentukan berapa banyak candlestick sebelumnya yang ingin kamu lihat untuk mencari doji. Dengan pengaturan RangeOfBars ke 2 atau 3, kamu bisa mencarinya di posisi lilin pertama, kedua, atau ketiga untuk menemukan doji ganda. Sebenarnya, kamu dapat membuat metode IsDoji hanya dengan melihat posisi lilin pertama, kemudian membuat metode kedua untuk memeriksa posisi pertama dan kedua untuk doji ganda. Dengan cara ini, kamu bisa menulis kode yang mengatakan jika IsDoji, maka tidak ada trading, jika IsDoubleDoji, maka trading pada ekstensi, dan seterusnya.

Kode asli untuk Doji Reader 2 kurang efisien dalam menangani kondisi 5 digit. Namun, di sini kamu akan melihat cara yang lebih efektif untuk menulisnya. Tentu saja, mungkin ini bukan cara terbaik, tetapi ini adalah langkah menuju perbaikan.

Saya tetap mempertahankan ShowCandleBox karena menurut saya itu cara yang bagus untuk menempatkan indikator pada chart, dan hasilnya cukup baik saat diuji. Saya juga menambahkan beberapa indikator tambahan, tetapi saya ingin tetap sederhana. Teks tambahan juga cukup membantu dan edukatif tentang cara menemukan doji, tetapi tetap saja, kita perlu menjaga kesederhanaan.

Salah satu perubahan besar adalah mengubah nilai konfigurasi menjadi doubles daripada integers. Dengan mengubahnya menjadi doubles, kita dapat memanfaatkan presisi 5 digit dan mendapatkan doji yang lebih bersih dan rapat. Catatan: saat menggunakan indikator yang berbasis double, jangan pernah menggunakan integer kecuali untuk menghitung sesuatu.

Saya juga menambahkan reset counter agar kotak tidak terus berlanjut dalam proses perhitungan. Setiap kali indikator memproses, counter yang sama terus berputar semakin tinggi. Dengan adanya reset, kita tetap mendapatkan hitungan yang akurat, tetapi reset saat menghitung di awal setiap siklus proses.

Saya menyertakan buffer dan proses pembersihan buffer sehingga kamu bisa melewatkan 0 secara default dan 1 jika ditemukan ke kode menggunakan buffer. Dengan menjaga rentang kecil, kita tidak menggunakan CPU berlebihan untuk memproses data lama yang tidak kita minati.

Berikut adalah contoh deklarasi untuk memasukkannya ke dalam kode kamu:

extern string __DOJI_HUNTER_SETTINGS = "-----";
int RangeOfBars = 3;
bool ShowCandleBox = true; //false untuk menyembunyikan kotak candle
extern color BoxColor = MistyRose; //tambah warna favoritmu

Berikut adalah panggilan contoh untuk mendapatkan data tentang doji. Peringatan, tempatkan panggilan ini di bagian peristiwa lilin baru dari kode kamu, jika diletakkan di peristiwa tick akan menyebabkan masalah:

Doji1 = iCustom(NULL, 0, "Doji_Hunter", 
    RangeOfBars, ShowCandleBox, BoxColor, FindRegularDoji, 
    MinLengthOfUpTail, MinLengthOfLoTail, MaxLengthOfBody, 
    FindDragonflyDoji, MaxLengthOfUpTail1, MinLengthOfLoTail1, 
    MaxLengthOfBody1, FindGravestoneDoji, MinLengthOfUpTail2, 
    MaxLengthOfLoTail2, MaxLengthOfBody2, 0, 0);

Potongan kode di atas akan mendapatkan nilai lokasi lilin pertama, baik 0 atau 1, di mana 1 = doji ditemukan.

Postingan terkait

Komentar (0)