Supaya EA Bisa Open Buy Dan Sell

116801

Pembuatan order supaya EA bisa open buy maupun sell adalah suatu syarat bagi EA untuk mampu melakukan transaksi.

Advertisement

iklan

FirewoodFX

iklan

Pembuatan order supaya Expert Advisor bisa open buy maupun sell adalah suatu syarat bagi EA untuk mampu melakukan transaksi. Tidak mungkin kan EA yang kita ciptakan dengan kekuatan analisis yang hebat tapi tidak ada cara open posisi. Kan percuma saja membuat EA tapi tak bisa order. He he...

Untuk itu, trader forex yang ingin menciptakan sebuah posisi pada EA dengan bahasa pemrograman MQL4 harus tahu dasar rumus yang akan digunakan. Walaupun sudah ada rekan-rekan memberikan contoh dalam pembuatan open posisi, tapi sulit jika hanya diberikan contoh programnya sedangkan rumusnya tidak diberikan. Hasilnya trader yang kebingungan semakin bingung darimana program buy dan sell ini dibuat. Nah disini akan kita ulas dasar-dasarnya supaya Anda bisa lebih tahu secara detail tentang dasar programnya.

 

supaya ea bisa open buy dan sell

 

Ciri untuk membuat open transaksi pasti akan membutuhkan code Order Send. Entah Anda percaya atau tidak, Order Send mutlak pasti ada dalam sebuah EA yang transaksi secara otomatis. Sebagai dasarnya kita lihat bagaimana rumusannya yang bisa dipakai dalam membuat open buy ataupun open sell. Antara lain:

Rumus:

OrderSend(string symbol,int cmd,double volume,
double price,int slippage,double stoploss,
double takeprofit,string comment=NULL,
int magic=0, datetime expiration=0,
color arrow_color=CLR_NONE);

Order Send selalu bernilai bilangan buat. Karena hasil output yang diberikan akan memiliki nilai 1 (buy) dan 0 (sell). Sedangkan supaya EA benar-benar bisa membuka posisi harus dihubungkan dengan fungsi-fungsi yang ditempatkan di dalam kurung. Untuk definisinya bisa dilihat keterangan dibawah ini:

Symbol
Nilai pada simbol tidak terikat pada angka. Jadi simbol yang ingin ditulis langsung dalam bentuk nama harga. Contohnya EURUSD. Namun bila ingin otomatis bisa tulis langsung Symbol (). Biasanya sih begitu langsung ditulis Symbol () supaya tidak repot-repot dilakukan penggantian bila EA ditaruh pada pair lain. Nilai Symbol bertipe String / karakter.

Cmd
Pada parameter ini kita bisa memberikan intruksi berupa open posisi yang difokuskan. Sudah disediakan fungsi default yang mengintruksikan bahwa order memiliki tipe buy. Biasanya trader akan memberikan code OP_BUY. Nilai cmd bertipe integer.

Price
Price berfungsi memberitahukan harga saat ini, jadi saat ingin di-close robot harus tahu harga yang mana nih untuk dijadikan acuan penutupan transaksi. Jadi pemilihan harga dibutuhan parameter price. Bertipe double.

Slippage
Jika robot meleset dalam close, masih ada toleransi yang ditugaskan oleh slippage ini, bertipe int.

Stop Loss
Memberikan fungsi untuk menyetop posisi dan membatasi kerugian bila harga ternyata bergerak ke arah yang berbeda dengan prediksi. Nah, tugas dari parameter Stop Loss adalah menghentikan transaksi. Data bertipe double.

Take Profit
Memiliki tugas untuk menentukan target profit. Data bertipe double.

Comment
Memberikan informasi saat ini apakah sedang open buy atau sell yang terlihat pada chart ataupun di dalam journal. Bertipe string.

Magic
Supaya open posisi EA berbeda dengan open posisi kita. Jadi biar EA tidak salah close posisi. Bertipe int.

Expiration
Misalnya waktu untuk open posisi lebih dari 2 jam atau 1 hari. Nah secara otomatis EA bisa menutup sendiri walaupun TP dan SL-nya belum tersentuh. Bertipe dateime.

Color
Supaya tidak ada campur aduk antara open buy dan sell, EA memberikan warna supaya posisi bisa berbeda. Bertipe color.

Untuk contoh ke dalam program, hasilnya sebagai berikut :

Contoh Order Buy:

OrderSend(Symbol(),OP_BUY,1,Ask,3,
Ask-25*Point,Ask+25*Point,
"My order #2",16384,0,Green);


Untuk mengetahui variasi order lainnya untuk Expert Advisor, simak artikel Tipe-Tipe Order Pada Expert Advisor (EA).

Parmadita mengenal forex mulai tahun 2010. Sejak saat itu, menggali beragam pengetahuan dan pengalaman terkait forex dari berbagai sumber, baik tentang indikator teknikal biasa, psikologi trading, maupun Expert Advisor.

Ahmadifx
selamat siang pak ,,, pak saya mau tanya untuk membuat code open sell ketika ada candle bearish di atas MA100 dan jarak MA dengan harga saat ini berada 100 pip atau lebih di atas MA100bagaimana apakah seperti ini
if ( Close[0]> Ma100&& Ma100<=Ask-100*point){ open Sell........}saya sudah coba seperti ini tetapi belum bisa salahnya di mana ya pak
terima kasih untuk jawabanya
Seputarforex
Selamat pagi juga Pak. Akan kami coba sedikit bantu jelaskan algoritmanya ya.Pertama, saya verifikasi ulang terlebih dahulu parameter-parameter yang ingin Anda gunakan.
1. Candle bearish = Candle yang nilai close-nya lebih rendah daripada nilai open-nya.
2. Jarak close candle dengan MA100 lebih dari 100 pips atau 1000 poin.
Kedua, mari kita analisa mengapa kode yang bapak tuliskan tidak dapat berjalan.
1. if(close[0] > MA100 && MA100<= Ask-100*point)
sebenarnya tidak ada kesalahan logika pada kode yang bapak tuliskan. Hanya saja pada prakteknya pemrograman harus ditulis runtut dan jelas agar dapat dijalankan oleh komputer.
Mungkin bapak bisa mencoba algoritma berikut. Tanda "// "berarti komentar ya Pak.
int jarakma;
//Cek apakah candle bearish atau tidak pada candle sebelum saat ini (1)
if (Close[1] < Open[1])
{
jarakma = Close[1] - MA100;
//cek apakah close candle jaraknya lebih dari 100 pips
if ( jarakma >= 1000)
{
//open sell;
}
}
else
{
//jangan lakukan apa-apa
}
Terima kasih
Mustamin

1. Mas, bagaimana logikanya jika misalnya saya hanya ingin trading atau buka posisi jika batas ketingian tertentu seperti pada Gambar disaat Bintang Merah ini  muncul sy akan OP Sel, atau sebaliknya jika sudah muncul Bintang Biru saya akan OP buy. Artinya sekalipun indikator ini repaint, tetapi paling tidak sy sudah buka OP di ketinggian tertentu sehingga kerugian tidak terlalu banyak.
2. bagaimana jika batas kerugian dan keuntungan juga bisa saya tentukan
Mohonnya pencerahannya Mas dan terimakasih sebelumnya.
Seputarforex
1. Perihal masalah open posisi saat muncul bintang biru maupun merah ini relatif pak. Pertama-tama kita harus menentukan terlebih dahulu patokan tinggi dan rendah harga. Beberapa Ea menentukan harga tertinggi berdasarkan indikator BB, beberapa lagi menggunakan harga murni sebagai patokannya. Jadi sebelum membahas program, sebaiknya tentukan dulu parameter tinggi dan rendahnya suatu harga.
2. Batas keuntungan dan kerugian bisa menggunakan metode risk and reward ratio. semisal Stop Loss di set sejauh 25 pips. Dengan risk reward ratio 1:2, maka TP harus diletakkan sejauh 50 pips. Bisa juga digunakan indikator sebagai patokan SL dan TP.
Mustamin
Wow keren..sudah lama saya baca sana sinni berkaitan hal tersebut diatas, baru terbuka  pemikiran saya dengan membaca tulisan Mas Parmadita, Alhamdulillah Terimakasih, semoga sehat selalu dan bisa menulis yang lebih baik lagi.  Atau kenapa tidak jika ini diwujudkan dalam bentuk video tutorial yag bernilai jula, saya yakin trader trader baru dimasa depan sangat membutuhkannya :-)
Seputarforex
Mohon maaf, yang bersangkutan saat ini sudah tidak aktif dalam menulis di seputarforex.com.
Mengenai requestnya tentu saja akan kami jadikan masukan untuk kedepannya.Terima kasih