Semua pakar penasihat dan penunjuk MQL mengandungi beberapa komponen penting. Organisasi umum program MQL tidak berbeza terlalu kerap.
Fail biasanya bermula dengan pengisytiharan #defines (paun dilafazkan menentukan) pembolehubah global dan pembolehubah luaran, juga dikenali sebagai Jenis data Luaran. Mereka muncul berhampiran bahagian atas kod untuk membantu baca memahami pembolehubah yang akan dijalankan dalam program ini. Sebaik-baiknya, nama-nama pembolehubah dan bagaimana ia dianjurkan perlu membantu pengaturcara borang pemahaman umum tentang apa penasihat pakar atau penunjuk mungkin melakukan.
Bahagian seterusnya biasanya init yang() fungsi, yang perkataan Memula disingkatkan. Bahagian Kod ini terutamanya yang berkaitan dengan petunjuk adat pengaturcaraan. Kebanyakan tetapan penunjuk umum seperti mengisytiharkan penampan penunjuk, warna untuk digunakan dan ciri-ciri asas yang lain terletak di dalam seksyen ini. Saya menggunakan init() dalam setiap penasihat pakar yang kita membina untuk menukar input ke dalam suasana yang sesuai untuk harga broker. Jika pelanggan input stop loss daripada 50 ke dalam satu EA, Saya tidak perlu berbuat apa-apa jika ia adalah satu 4 broker digit. Saya lakukan, Walau bagaimanapun, perlu menukar input untuk bekerja dengan 5 broker digit. Saya menjalankan pemeriksaan cepat dalam masa init() untuk melihat jika Digit == 3 || Digit == 5. Jika ya, maka saya bertambah banyak input terjejas oleh penetapan bahawa oleh 10.
deinit() adalah bahagian yang paling penting; ia cukup mudah untuk deinitialize fail MQL kerana ia biasanya tidak mengambil apa-apa sumber sistem. Ia jarang digunakan untuk apa-apa yang penting. Satu-satunya yang menggunakan saya pernah mempunyai untuk deinit() adalah untuk menutup pemegang fail terbuka atau untuk membuat beberapa jenis nota penutup. Ini sering dilakukan sama ada pada carta secara langsung melalui Komen() fungsi atau lebih kerap dengan menulis terus ke dalam fail log.
Permulaan() fungsi adalah daging sebenar penasihat pakar MQL atau penunjuk. Setiap kali MetaTrader mengesan sesuatu tick masuk, ia memberitahu apa-apa program MQL. Program-program kemudian memanggil fungsi permulaan supaya ia boleh melakukan apa sahaja yang perlu berbuat. Semua operasi perdagangan, pengiraan, pemantauan akaun, dan lain-lain, berlaku dalam seksyen ini.
Semua fungsi adat lain di dalam program ini muncul di bawah permulaan(). Saya biasanya lebih suka kedudukan mereka mengikut keutamaan mereka atau frekuensi yang aku memanggil mereka sepanjang program. Perintah penempatan fungsi tidak menjejaskan prestasi dalam apa cara sekalipun. Ia ketat amalan kosmetik yang membuat kod pengaturcaraan lebih mudah dibaca.
tinggalkan balasan