Ide oleh: Vladimir Pastushak.
Kode MQL5 oleh: Vladimir Karputov.
EA ini menggunakan indikator Moving Average, dengan semua fungsi persiapan dan trading yang diimplementasikan dalam kelas trading CMoving yang terpisah dalam file Moving.mqh.
Input yang Tersedia
- magic number - identifikasi unik untuk EA;
- Lots - volume posisi (volume posisi di atas nol atau ukuran risiko di atas nol dapat ditentukan);
- Risk - risiko dalam persen dari margin bebas per trade (volume posisi di atas nol atau ukuran risiko di atas nol dapat ditentukan);
- MA: period - indikator Moving Average: Timeframe;
- MA: averaging period - indikator Moving Average: Periode rata-rata;
- MA: horizontal shift - indikator Moving Average: Perpindahan horizontal;
- MA: smoothing type - indikator Moving Average: Metode rata-rata;
- MA: type of price - indikator Moving Average: Jenis harga yang digunakan untuk perhitungan indikator;
- Take Profit - Level Take Profit (untuk kasus di mana satu posisi terbuka);
- Lot multiplier untuk serangkaian Posisi - meningkatkan volume posisi untuk serangkaian posisi;
- Distance from Moving Average - jarak dari indikator Moving Average;
- Additive jika ada profit umum - menambahkan indentasi jika terdapat profit umum.
EA ini menggunakan prinsip swing, dengan kemungkinan untuk meningkatkan jumlah lot; strategi sederhana digunakan dalam operasionalnya:
- Jika harga berada di atas indikator Moving Average pada Distance from Moving Average yang telah ditentukan, kita akan membuka posisi BUY;
- Jika harga bergerak turun dari indikator Moving Average pada Distance from Moving Average yang telah ditentukan, kita akan membuka posisi SELL dengan lot yang sama;
- Jika harga bergerak naik dari posisi BUY dengan harga tertinggi pada Distance from Moving Average yang telah ditentukan, kita akan membuka posisi BUY berikutnya;
- Jika harga bergerak turun dari posisi BUY dengan harga terendah pada Distance from Moving Average yang telah ditentukan, kita akan membuka posisi SELL berikutnya;
Kelas CMoving
| Parameter Pengaturan | |
Initialization |
Inisialisasi utama - parameter berikut disetel:
|
GetFlag |
Memeriksa status flag inisialisasi. Ini digunakan sebagai fungsi tambahan saat memanggil dari EA dasar untuk memeriksa status variabel internal m_init kelas CMoving. |
LotsOrRisk |
Menentukan jenis perhitungan lot posisi: Baik secara manual (parameter lots di atas nol) atau dalam persen margin bebas per trade (parameter risk di atas nol). |
CreateMA |
Membuat indikator Moving Average. |
TakeProfit |
Menentukan parameter Take Profit. |
Multiplier |
Menentukan parameter peningkatan lot. |
DistanceMA |
Menentukan jarak dari indikator Moving Average. |
ProfitPlus |
Menentukan indent tambahan saat ada profit umum. |
| Fungsi Utama | |
Processing |
Fungsi utama, di mana semua perhitungan dilakukan. |
| Fungsi Kelas dengan Spesifikasi Akses Terproteksi | |
RefreshRates |
Memperbarui kutipan untuk simbol. |
CheckVolumeValue |
Memeriksa kebenaran volume posisi yang dimasukkan (pemeriksaan digunakan saat menentukan ukuran posisi secara manual). |
IsFillingTypeAllowed |
Memeriksa mode pengisian order. |
iMAGet |
Mendapatkan nilai indikator Moving Average pada bar dengan indeks index. |
CalculateAllPositions |
Mendapatkan informasi tentang posisi per panggilan:
|
Prices |
Mendapatkan harga referensi untuk posisi BUY dan SELL, mempertimbangkan Distance from Moving Average yang telah ditentukan. |
LotCheck |
Memeriksa dan menormalkan volume posisi (digunakan saat menentukan ukuran posisi secara manual). |
OpenBuy |
Membuka posisi BUY. |
OpenSell |
Membuka posisi SELL. |
PrintResult |
Mencetak hasil dari operasi trading untuk membuka posisi. |
SetTakeProfit |
Menetapkan level Take Profit untuk posisi atau menghapus semua level Take Profit dan Stop Loss (di mana parameter delete_take_profit sama dengan "true"). |
CompareDoubles |
Membandingkan dua angka real untuk kesetaraan. |
AwerageTakeProfit |
Menghitung dan menetapkan level Take Profit tunggal untuk posisi jenis tertentu pos_type. |
Contoh penggunaan: GBPUSD, H1, "Setiap tick berdasarkan tick nyata."

Komentar 0