1. Tentang Perceptron
Perceptron adalah algoritma dasar dalam dunia machine learning. Untuk informasi lebih lanjut, kamu bisa mengunjungi halaman ini.
Dalam konteks trading, saya menganggap "Kecerdasan Buatan" sebagai logika dari Perceptron.
2. Algoritma
2.1. Input
Variabel w1, w2, w3, dan w4 adalah bobot yang diatur sesuai dengan hasil optimasi kamu.
input int x1 = 0;//bobot1 input int x2 = 0;//bobot2 input int x3 = 0;//bobot3 input int x4 = 0;//bobot4
2.2. Perceptron
Untuk membuat EA sederhana, ambang batasnya adalah nol. Output tidak berubah: "menembak" 1, "tidak menembak" 0.

double w1 = x1 - 100; double w2 = x2 - 100; double w3 = x3 - 100; double w4 = x4 - 100; //Perceptron sebelum satu bar 2017/03/18 double a11 = ((iRSI(Symbol(), 0, 12,PRICE_MEDIAN,1))/100-0.5)*2; double a21 = ((iRSI(Symbol(), 0, 36,PRICE_MEDIAN,1))/100-0.5)*2; double a31 = ((iRSI(Symbol(), 0, 108,PRICE_MEDIAN,1))/100-0.5)*2; double a41 = ((iRSI(Symbol(), 0, 324,PRICE_MEDIAN,1))/100-0.5)*2; double Current_Percptron = (w1 * a11 + w2 * a21 + w3 * a31 + w4 * a41); //Perceptron sebelum dua bar 2017/03/18 double a12 = ((iRSI(Symbol(), 0, 12,PRICE_MEDIAN,2))/100-0.5)*2; double a22 = ((iRSI(Symbol(), 0, 36,PRICE_MEDIAN,2))/100-0.5)*2; double a32 = ((iRSI(Symbol(), 0, 108,PRICE_MEDIAN,2))/100-0.5)*2; double a42 = ((iRSI(Symbol(), 0, 324,PRICE_MEDIAN,2))/100-0.5)*2; double Pre_Percptron = (w1 * a12 + w2 * a22 + w3 * a32 + w4 * a42);
Saya menggunakan RSI dalam EA ini, tetapi oscillator lain seperti RCI atau W%R juga bisa digunakan.
2.3. Pembukaan dan Penutupan Order
Ketika Perceptron sebelumnya di bawah 0 dan Perceptron saat ini di atas 0, jika ada posisi short, maka posisi tersebut akan ditutup.
EA kemudian mengirimkan order long.
if(Pre_Percptron < 0 && Current_Percptron > 0) //sinyal long { //Jika ada posisi short, kirim perintah tutup if(pos < 0) { ret = OrderClose(Ticket, OrderLots(), OrderClosePrice(), 0); if(ret) pos = 0; //Jika order tutup berhasil, status posisi menjadi Nol } //Jika tidak ada posisi, kirim order long if(pos == 0) Ticket = OrderSend( _Symbol, // simbol OP_BUY, // operasi Lots, // volume Ask, // harga 0, // slippage 0, // stop loss 0, // take profit Trade_Comment, // komentar MagicNumber,// nomor ajaib 0, // masa berlaku order pending Green // warna ); }
Sebaliknya, ketika Perceptron saat ini di bawah 0 dan Perceptron sebelumnya di atas 0, jika ada posisi long, posisi tersebut akan ditutup.
Dan EA mengirimkan order short.
3. Optimasi
Load template "Slime_Mold_RSI_template.set", dan pilih "open price only" untuk Model.


4. Komentar dan Nomor Ajaib
Saya mengatur Nomor Ajaib sesuai dengan durasi yang digunakan untuk optimasi, EA ini menggunakan Nomor Ajaib dalam komentar.
string Trade_Comment = IntegerToString(MagicNumber,5,' ') + "Hari-Optimisasi";

5. Artikel Terkait
Untuk informasi lebih lanjut, kamu bisa membaca artikel terkait di sini: https://qiita.com/Kei-Sanada/items/cd6b8d9c02bc9eea1e01
Postingan terkait
- Memahami Order Processing Visual untuk MetaTrader 4
- MQL5 Wizard: Mengoptimalkan Sinyal Perdagangan dengan Morning/Evening Stars dan MFI
- Membuat Expert Advisor MQL5 untuk Sinyal Trading Berdasarkan Dark Cloud Cover dan Piercing Line dengan RSI
- MQL5 Wizard: Ciptakan Expert Advisor Berdasarkan Pola Candlestick dan MFI
- MQL5 Wizard: Membuat EA dengan Sinyal Trading Berdasarkan Pola Morning/Evening Stars dan Stochastic