Tampilkan postingan dengan label Expert Advisors. Tampilkan semua postingan
Tampilkan postingan dengan label Expert Advisors. Tampilkan semua postingan

Senin, 28 November 2016

Pemprograman MQL (Bagian 2 /Syntax)

Syntax MQL

syntax error
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:

  1. ·         Format penulisan
  2. ·         Komentar
  3. ·         Identifiers
  4. ·         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

Pemrograman MQL (Bagian 1)

Bahasa Pemrograman MetaQuotes 4



MetaQuotes Language 4 (MQL4) adalah bahasa pemprograman terintegrasi untuk pemprograman strategi perdagangan online. Bahasa Pemrograman ini mengijinkan kita untuk membuat Expert Advisors sendiri yang akan merender pemrosesan managemen perdagangan secara automatis dan sangat cocok digunakan untuk mengimplementasikan strategi perdagangan kita. Juga dengan bantuan MQL4 kita dapat membuat indicator modifikasi, script dan Libraries dari fungsi-fungsi.

Fungsi dalam jumlah yang cukup banyak dibutuhkan untuk menganalisa quotations dimasa lalu maupun sekarang, aritmatika dasar dan pengoperasian logika juga terdapat dalam struktur MQL4. Disana juga terdapat indicator dasar yang terintegrasi dan perintah penempatan pemesanan dan control.

MetaEditor4 digunakan untuk menulis kode program dalam bahasa MQL4. Program ini dapat membantu penggunanya yang berorientasi dalam sistem text ahli yang mudah digunakan. Dalam blog ini dengan tag Expert Advisors akan menjelaskan mengenai penggunaan fungsi yang dibagi dalam beberapa kategori, operations, reserved words, dan konstruksi bahasanya, serta menjelaskan setiap elemen yang kita gunakan.

Program yang ditulis dalam Bahasa pemrograman MQL4 memiliki perbedaan kegunaan dan peruntukannya:
  • Expert Advisors adalah system perdagangan mekanis yang terhubung dengan plot kondisi yang jelas. EA tidak hanya memberikan informasi kepada kita mengenai kemungkinan masuk pasar, tapi juga dapat melakukan transaksi di akun trader secara otomatis dan langsung mengirimnya ke server perdagangan. Seperti kebanyakan system perdagangan, terminal perdagangan metatrader juga support untuk pengujian strategi yang dilakukan menggunakan data sejarah/masa lalu dan menampilkannya di chart utama dimana trader melakukan jual beli.

  • Custom Indicators adalah sebuah indicator teknis analog. Dengan kata lain, custom indicators mengijinkan kita membuat sebuah indicator teknis sebagai tambahan yang langsung terintegrasi dengan terminal klien. Seperti halnya indicator bawaan MT4, custom indicators juga tidak dapat melakukan transaksi secara otomatis dan hanya sebagai acuan dari fungsi analisa teknis.

  • Script adalah program yang dimaksudkan untuk melakukan satu eksekusi dari beberapa aksi. Tidak seperti Expert Advisors, Script tidak berjalan secara terus menerus dan tidak memiliki akses ke fungsi indicator.

  • Libraries adalah kumpulan fungsi yang dimiliki pengguna yang sering menggunakan blok dari program yang dimiliki pengguna yang telah disimpan.