Strategi Trading dengan EA Moving Average di MetaTrader 5

Mike 2018.06.16 19:15 27 0 0
Lampiran

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:

  • symbol - nama simbol yang akan digunakan EA
  • magic - identifikasi unik untuk EA
  • slippage - slippage.
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:

  • count_buys - jumlah posisi BUY;
  • price_highest_buy - harga dari posisi BUY tertinggi;
  • price_lowest_buy - harga dari posisi BUY terendah;
  • lot_highest_buy - volume dari posisi BUY tertinggi;
  • lot_lowest_buy - volume dari posisi BUY terendah;
  • total_lots_buy - total volume posisi BUY;
  • count_sells - jumlah posisi SELL;
  • price_lowest_sell - harga dari posisi SELL terendah;
  • price_highest_sell - harga dari posisi SELL tertinggi;
  • lot_lowest_sell - volume dari posisi SELL terendah;
  • lot_highest_sell - volume dari posisi SELL tertinggi;
  • total_lots_sell - total volume posisi SELL.
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."

VR---MUVING

Daftar
Komentar 0