Syntax MQL
Dalam setiap
pertanyaan yang terpenting adalah bagaimana caranya menggunakan bahasa MQL? Dan
dalam, artikel kali ini kita akan membahas hal ini.
Sekarang,
saya ingin anda mengosongkan semua pikiran anda dari segala kebingungan dan
mulai membaca dan memahami beberapa konsep yang disajikan dalam artikel ini
secara perlahan.
Pada kali
ini kita akan membahas syntax dalam MQL. Sebelumnya akan saya katakana, jika
anda seorang programmer dalam bahasa C (atau programmer C++) berarti anda telah
mengetahui lebih banyak sebelum saya memulai membahas ini. Karena syntax
dalam MQL sangat mirip dengan syntax dalam bahasa C.
Dalam kamus
menjelaskan bahwa syntax dalam sebuah bahasa pemrograman adalah “kalimat yang
diijinkan dan parameternya dan kata perintah yang benar yang menyatakan
ekspresi disebut sebagai syntax bahasa pemprograman” “wikipedia”
Jadi, ketika
kita belajar syntax berarti kita wajib mempelajari grammar dan aturan penulisan
yang terdiri dari:
- · Format penulisan
- · Komentar
- · Identifiers
- · Reserved words
Mari kita
kupas mengenai hal ini satu per satu.
1) FORMAT
Ketika kita menulis kode kita, kita
bebas menggunakan spasi, tabs dan garis kosong sesuai yang kita mau untuk
memisahkan kode kita dan garis kode untuk membuatnya mudah dibaca dan nyaman
dilihat.
Sebagai contoh, semua paragraf
dibawah valid dalam pemprograman MQL4:
double
MacdCurrent, MacdPrevious, SignalCurrent;
|
Double
|
MacdCurrent,
|
MacdPrevious,
|
SignalCurrent;
|
double MacdCurrent, MacdPrevious, SignalCurrent;
|
Tapi seperti yang bisa kita lihat,
pada contoh yang pertama lebih mudah dibaca dan dimengerti tentunya.
Dan seperti semua kebebasan yang ada
di dunia, dalam syntax MQL pun ada beberapa pengecualian yang menjadi aturan.
a) Kita tidak dapat
menggunakan baris baru dalam “perintah control yang menjadi satu”
Kita akan membahas hal ini pada artikel selanjutnya, dan harap diingat
hal ini sebagai pengecualian.
Sebagai contoh, baris perintah berikut salah dan compiler MQL4 akan
mengkomplain:
#property
Copyright
“Copyright © 2016, http://www.beni-tutorials.tk”
|
Perintah yang benar adalah
#property
copyright ”Copyright © 2016, http://www.beni-tutorials.tk”
|
b) Kita tidak boleh
menggunakan baris baru di pertengahan Constant Value, identifier dan
Keyword.
Sebagai contoh baris ini merupakan perintah yang benar
extern
int MA_Period = 13;
|
“extern” dan ”int ” adalah Keyword, “MA_Period” adalah
identifier dan “13” adalah Constant Value.
Kita akan mempelajarinya pada artikel selanjutnya dengan tag Expert
Advisors.
Sebagai contoh baris perintah yang salah:
extern
int MA_Period=1
3;
|
extern
int MA_Period=1 3;
|
tab antara 1 dan 3,
ex
tern
int MA_Period=13;
|
2) Komentar
untuk membuat dunia
pemprograman semakin mudah, beberapa bahasa pemprograman memiliki gaya sendiri
dalam menuliskan komentar.
Kita dapat menggunakan
komentar dalam sebuah baris kode dimana compiler akan mengacuhkannya
(compiler tidak akan mengeksekusi baris komentar tersebut) namun tidak pada
kode anda dan membuatnya semakin mudah dimengerti.
Mari kita asumsikan, kita
menulis sebuah program pada bulan January, dan pada akhir tahun kita ingin
membacanya kembali. Tanpa komentar, meski kita adalah pembuat kode tersebut.
Kita akan susah untuk memahami susunannya.
MQL4 (& C/C++) menggunakan
2 gaya dalam penulisan komentar:
a) Komentar satu
baris
Komentar satu baris dimulai dengan “//” dan diakhiri dengan baris
komentar yang ingin kita sematkan.
Contoh:
//Ini
adalah sebuah komentar
extern
int MA_Period=13;
|
extern
int MA_Period=13; //Ini contoh komentar yang lain
|
b) Komentar lebih
dari satu baris
Untuk komentar lebih dari satu baris penulisannya dimulai dengan “/*” dan
diakhiri ”*/”.
Dan kita dapat menuliskan komentar lebih dari satu baris dengan
menambahkan “/*” pada awal baris pertama komentar dan “*/” pada baris terakhir pada akhir komentar
kita.
Contoh
/*website
www.beni-tutorials.tk
Contoh
Komentar
*/
|
Kita juga dapat memasukan komentar satu kalimat dalam komentar yang lebih
dari satu baris.
/*website
Contoh //contoh
komentar
|
Dapat juga memasukan komentar seperti ini,
extern
int /*www.beni-tutorials.tk*/ MA_Period=13;
|
Komentar seperti dibawah ini termasuk komentar yang salah penulisannya,
extern int
//www.beni-tutorials.tk MA_Period=13;
|
Pada contoh diatas,” MA_Period=13;” akan dikenal oleh compiler sebagai
komentar pula.
3) Identifiers;
Identifiers adalah nama
yang kita pilih sebagai sebuah variable, konstanta dan fungsi.
Sebagai contoh dibawah
ini MA_Period sebagai sebuah identifier.
extern int
MA_Period=13;
|
Berikut ini adalah ketentuan
dan larangan dalam pemilihan sebuah nama id:
a) Panjang sebuah Id
tidak boleh lebih dari 31 karakter.
b) Id harus diawali dengan huruf (capital atau
huruf kecil) atau simbol underscore ( _ ). Jadi tidak bisa diawali dengan
penggunaan angka atau simbol lain slain simbol underscore.
c) Kita tidak bisa
menggunakan reserved words sebagai sebuah Id. Kita akan membahas mengenai
reserved words nanti.
d) Nama Id
merupakan kata yang sensitive. Maksudnya penggunaan huruf besar dan kecil
sangat berpengaruh.
Contoh: MA_Period tidak sama dengan ma_period atau MA_period
Contoh penulisan Id
Nama1
Benar
|
_Nama1
Benar
|
1Nama Salah (Jangan dimulai dengan
angka)
|
-Nama1 Salah (Hanya boleh gunakan simbol
underscore)
|
N-ama1 Salah
(Hanya boleh gunakan simbol underscore)
|
Aku_Mencintai_Kamu_Setulus_Hatiku
Salah (Tidak boleh melebihi 32 karakter)
|
Color Benar
|
color Salah (Tidak boleh menggunakan reserved words, dan color
adalah salah satunya)
|
4) Reserved
Words:
Adalah kumpulan kata
dimana bahasa pemprograman menggunakan kata tersebut untuk action secara
spesifik. Jadi, kata tersebut sudah digunakan dalam bahasa pemprograman dan
tidak dapat digunakan sebagai nama Id atau untuk peruntukan yang lain.
Berikut ini adalah
reserved words (dari Panduan MQL4):
Data Type
|
Memory classes
|
Operators
|
Others
|
bool
|
extern
|
break
|
false
|
color
|
static
|
case
|
true
|
datetime
|
continue
|
||
double
|
default
|
||
int
|
else
|
||
string
|
for
|
||
void
|
if
|
||
return
|
|||
switch
|
|||
while
|
Sebagai contoh
selanjutnya merupakan penulisan perintah yang salah:
extern
int datetime= 13;
int extern=20;
double continue
=0;
|
Semoga artikel ini mudah
dipahami,
untuk artikel selanjutnya akan
dibahas “Data Type”