The X dan The xCustomEA: Pengujian dan Optimasi

Partial Close and Trailing. Partial closing of positions on rollbacks
Close Minus by Plus, Closing unprofitable positions by searching and closing profitable positions
Partial Close and Trailing. Partial closing of positions on rollbacks
Close Minus by Plus, Closing unprofitable positions by searching and closing profitable positions

The X dan The xCustomEA: Pengujian dan Optimasi
 Video Thumbnail

Deskripsi

The X dan The xCustomEA adalah dua Expert Advisor (EA) unggulan dalam komunitas trading Forex, yang mendapatkan popularitas luas selama lima tahun terakhir. Alat ini dirancang untuk memenuhi kebutuhan trader yang ingin menyesuaikan (customize) strategi trading mereka dan fokus pada pengujian (testing) serta optimasi (optimization) guna meningkatkan kinerja dan beradaptasi dengan berbagai kondisi pasar (market conditions).

Fitur Utama:

  • The X: EA ini adalah pembangun strategi (strategy builder) komprehensif yang memungkinkan pengguna membuat strategi trading menggunakan indikator (indicators) standar MetaTrader. Ini mencakup lebih dari 20 opsi sinyal (signal options) dan berbagai filter (filters), menjadikannya alat yang dapat disesuaikan untuk gaya trading (trading style) apa pun.
  • The xCustomEA: Mengambil langkah penyesuaian lebih jauh, EA ini memungkinkan trader mengembangkan strategi berdasarkan indikator iCustom (iCustom indicators), memberikan fleksibilitas yang lebih besar dalam strategi trading. Ini berarti Anda dapat memasukkan indikator kustom (custom indicator) apa pun ke dalam trading otomatis (automated trading) Anda.

Mengapa Memilih The X dan The xCustomEA?

  • Serbaguna dan Adaptif: Kedua advisor dapat digunakan di berbagai pasangan mata uang (currency pairs), kerangka waktu (timeframes), dan kondisi pasar, menawarkan kemungkinan tak terbatas bagi trader untuk pengembangan strategi (strategy development).
  • Tidak Perlu Coding: Meskipun alat ini sangat dapat disesuaikan (customizable), alat ini dirancang agar mudah digunakan, bahkan oleh mereka yang tidak memiliki latar belakang pemrograman (programming). Cukup pilih indikator dan parameter (parameters) Anda, dan biarkan EA melakukan sisanya.
  • Fungsi Tingkat Lanjut: Kedua Expert Advisor dilengkapi dengan fitur-fitur canggih seperti penentuan ukuran lot dinamis (dynamic lot sizing), trailing stop (trailing stops), level impas (break-even levels), dan banyak lagi. Baik Anda seorang pemula maupun trader berpengalaman, fungsi-fungsi ini memungkinkan manajemen risiko (risk management) dan eksekusi trading (trade execution) yang tepat.

Fleksibilitas

Dengan The X, Anda dapat merancang strategi dari indikator MetaTrader standar, sementara The xCustomEA memungkinkan Anda mengintegrasikan indikator kustom Anda, memberi Anda kekuatan untuk benar-benar mempersonalisasi strategi trading Anda.

EA ini menawarkan paket lengkap bagi siapa saja yang ingin mengotomatiskan (automate) strategi trading mereka, memaksimalkan potensi (maximize potential), dan membuat keputusan berdasarkan informasi melalui analisis teknis (technical analysis) yang canggih.

Kami tidak akan membahas cara menguji atau mengoptimalkan Expert Advisor (EA) di terminal MT4 dan MT5! Kami sudah membahas ini di artikel kami: Pengujian dan Optimasi Expert Advisor.

Dalam artikel ini, saya akan menunjukkan beberapa cara untuk mengoptimalkan Expert Advisor dan fungsi (functions) yang tepat untuk bekerja dengan Expert Advisor.

Kami telah membuat beberapa set pengaturan optimasi (optimization settings) untuk Anda sehingga Anda dapat mulai mengoptimalkan di komputer Anda.

Mulai dari versi 18.008, kami memberikan nama (names) yang sama untuk semua variabel (variables) di versi MT4 maupun MT5. Hal ini dilakukan agar Anda dapat mentransfer file konfigurasi (configuration files) dari satu terminal ke terminal lainnya!

Kami akan menunjukkan contoh strategi trading berdasarkan THE X.

IngatThe X atau The xCustomEA adalah perancang untuk strategi trading. Dengan mengelompokkan dan menerapkan kombinasi fungsi yang berbeda, Anda dapat mencapai hasil (results) yang berbeda.

Anda harus memahami bahwa keajaiban tidak terjadi. Expert Advisor (EA) kami hanyalah instrumen untuk trading di Forex. Trading Forex melibatkan risiko 100%!


XCustomEA Expert Advisor Universal untuk trading Forex dengan indikator kustom.

EA The xCustomEA Universal Trading Expert Advisor (EA) pada indikator iCustom.


The X Expert Advisor Universal untuk trading Forex dengan indikator standar.

The X – Universal Expert Advisor (EA) untuk Forex pada indikator standar.


Fitur fungsional dari Expert Advisor dan deskripsi pengaturannya sudah dibahas dalam artikel kami The X – Advisor Universal untuk Forex MT4 MT5 Instruksi Lengkap.

Dalam artikel ini, kita akan membahas cara mengoptimalkan parameter dari Expert Advisor dan mencapai hasil yang diinginkan.

Kita akan membahas metode pengujian (testing methods), pemilihan strategi optimasi (optimization strategies), dan penyertaan berbagai fungsi untuk trading Forex.

Mulai Langkah Berhenti (Start Step Stop)

Kumpulan pengaturan (settings) tergantung pada deposit (deposit) Anda dan batas penarikan (drawdown limit), pasangan mata uang dan spesifikasi kontrak (contract specifications), serta apakah Anda melakukan trading jangka panjang (long-term trades) atau pipsing (pipsing)!

Tinjauan pengaturan optimasi

Di sini dan selanjutnya saya akan menggunakan nilai-nilai ini:

0-10-100 = berarti bahwa parameter untuk optimasi adalah:

  1. Nilai awal optimasi = 0
  2. Langkah optimasi (optimization step) parameter = 10
  3. Nilai akhir parameter untuk optimasi = 100

Semua parameter yang diukur dalam Poin (Pip) (Stop Loss, Take Profit, Distance, dll.) didasarkan pada kuotasi 4 digit.

  1. Misalnya, EURUSD = 1.2001 berarti broker memiliki kuotasi 4 digit. Dan 1 = 1 poin (point)!
  2. Jika saya menulis 10, itu berarti saya memikirkan 10 Poin (Pip).
  3. Jika broker Anda memiliki kuotasi 5 digit, maka Anda perlu mengalikan rekomendasi saya dengan 10!
  4. Misalnya, EURUSD = 1.20015 berarti broker memiliki kuotasi 5 digit. Dan 1 = 1 poin!
  5. Jika saya menulis 10, itu berarti saya memikirkan 10 Poin (Pip). Tetapi Anda harus mengatur nilainya menjadi 100.

Ingat jawaban atas pertanyaan ini!

Apa nilai dalam parameter dalam poin atau pip?

Dalam poin! Nilai tersebut berasal dari variabel Poin (Point).

  • Jika Anda memiliki broker 5 atau 3 digit, maka 1 poin = 0,00001 atau 0,001
  • Jika Anda memiliki broker 4 atau 2 digit, maka 1 poin = 0,0001 atau 0,01

Persiapan Optimasi Expert Advisor

https://expforex.com/id/testing-and-optimization-of-ea/

Expert Advisor (EA) kami memiliki algoritma sinyal (signal algorithms) dan fungsi yang sama.

Namun, karena perbedaan antara terminal MT5 dan MT4, mungkin ada perbedaan kinerja (performance discrepancies).

Penguji strategi (strategy tester) di terminal MT5 saat ini adalah yang paling canggih dan akurat secara teknologi.

Fitur terpenting dari terminal MetaTrader 5 dan Strategy Tester adalah kemampuan untuk menguji pada tick riil. Spread (spread) dan level stop (stop levels) di MetaTrader 5 bersifat mengambang (floating), yang berarti pengujian di penguji strategi MT5 sedekat mungkin dengan trading langsung (live trading).

Kami tidak akan menjelaskan pengujian dan optimasi di terminal MetaTrader 4! Anda sudah tahu cara mengujinya. Proses optimasi (optimization process) mirip dengan proses MT5 (Pengaturan dan Memulai).

Tetapi fitur utama dari penguji strategi di MT5 adalah, tentu saja, kemampuan untuk mengoptimalkan di cloud (cloud) MQL5 Cloud Network.

Cloud memungkinkan optimalisasi Expert Advisor (EA) menggunakan ribuan komputer lain dengan biaya minimal. Sangat terjangkau dan cepat. Oleh karena itu, saya sangat merekomendasikan penggunaan MQL5 Cloud.

Dalam arsip dengan Expert Advisor, Anda akan menemukan beberapa file dengan pengaturan optimasi. Ini hanyalah contoh, tetapi akan menunjukkan kepada Anda cara mengkonfigurasi optimasi.

Ingat: Setiap pasangan mata uang dan broker (broker) memiliki kondisi trading (trading conditions) mereka sendiri (Spread, swap (swap), komisi (commission), metode penyelesaian (settlement method), eksekusi (execution), jenis akun (account type)), sehingga hasil optimasi mungkin berbeda!

Agar hasil lebih konsisten, Anda perlu menonaktifkan Penundaan Acak (Random Delay). Ini tidak diperlukan untuk optimasi!

Menyiapkan Penguji Strategi:

  1. Pilih Expert Advisor dari daftar.
  2. Atur pasangan mata uang yang akan Anda uji.
  3. TF: Lebih baik memilih M1. (Kerangka Waktu (TF) akan diatur oleh Expert Advisor dari pengaturannya)
  4. Tanggal optimasi: Anda dapat memilih tahun berjalan! Ingat, hasil masa lalu tidak dapat menjamin keuntungan di masa depan! Mengoptimalkan setiap setengah tahun adalah rentang yang paling praktis!
  5. Forward dapat diatur ke 1 bulan, tetapi kami menyarankan untuk mendapatkan hasil bersih terlebih dahulu. Kemudian, kami akan melakukan Uji Maju (Forward Test).
  6. Deposit: Lebih baik mengatur deposit yang akan Anda gunakan untuk memulai trading. Jangan mengatur saldo terlalu kecil, dan juga jangan terlalu besar!
  7. Leverage (Leverage): Atur leverage yang akan Anda gunakan untuk trading.
  8. Optimalkan algoritma Slow Complete.
  9. Dan pastikan: “Setiap tick, berdasarkan tick riil”!
Menyiapkan Penguji Strategi:

Mengkonfigurasi Pengaturan Expert Advisor:

  1. Klik tab Input (Inputs) dan muat file Set kami.
  2. Centang atau hapus centang opsi yang ingin Anda optimalkan. (Secara default, saya menyiapkan file sehingga Anda dapat mengoptimalkan semua parameter penting)
    1. Nilai (Value)—Ini adalah nilai tetap dari parameter. Expert Advisor akan menggunakan nilai ini jika parameter ini tidak dioptimalkan atau selama pengujian!
    2. Mulai (Start) – Nilai awal parameter untuk optimasi.
    3. Langkah (Step) – Langkah perubahan parameter setiap kali pengoptimal (optimizer) berjalan.
    4. Berhenti (Stop) – Nilai akhir parameter untuk optimasi.
  3. Ingat! Semakin banyak parameter dan langkah untuk optimasi, semakin banyak waktu yang dibutuhkan untuk menyelesaikan pengujian dan optimasi!

Aktifkan Optimasi Cloud

Saya sangat merekomendasikan untuk mengaktifkan optimasi cloud!

Dalam kasus ini, saya menonaktifkan penggunaan prosesor saya, sehingga komputer saya tidak melambat selama optimasi. Selain itu, biaya satu kali proses di cloud kurang dari 0,01 sen!

Aktifkan optimasi cloud

Tekan tombol MULAI (START) dan lanjutkan tugas Anda!

Ilustrasi trading Forex

Parameter yang Dapat Disesuaikan untuk Optimasi

Anda dapat mengunduh file untuk optimasi kami untuk The X.

Blok 1: Sinyal Trading dan Filter

Di Expert Advisor (EA) kami, lebih dari 20 strategi trading didasarkan pada indikator standar terminal MetaTrader.

Mengapa Kami Menggunakan Indikator Standar?

Semua indikator pengguna hampir seluruhnya meniru indikator standar yang sudah ada di terminal.

Dengan mengubah parameter dalam kode (code), Anda membuat indikator kustom. Secara logis, indikator kustom terdiri dari 90% indikator standar!

Kami telah menulis lebih dari 5.000 Expert Advisor (EA) menggunakan indikator kustom, dan kami dapat dengan yakin mengatakan bahwa itu tidak masuk akal.

Bekerja dengan indikator standar dapat diprediksi dan, dalam 90% kasus, lebih menguntungkan.

Oleh karena itu, kami menggunakan indikator standar untuk trading. Baca contoh pembukaan posisi berdasarkan indikator standar, serta deskripsi sinyal, dalam artikel: Contoh Operasi Sinyal!

Indikator dan sinyal adalah elemen utama yang perlu dipertimbangkan saat memulai optimasi dan pengujian kita!

Pada saat penulisan ini, kami memiliki 20 sinyal:

  1. NoSignal = 0, // Tidak Ada Sinyal
  2. Ma = 1, // Moving Average (MA)
  3. MACD = 2, // Moving Average Convergence Divergence (MACD)
  4. STOCH = 3, // Stochastic Oscillator
  5. RSI = 4, // Relative Strength Index (RSI)
  6. CCI = 5, // Commodity Channel Index (CCI)
  7. WPR = 6, // Williams Percent Range (WPR)
  8. BB = 7, // Bollinger Bands
  9. Envelopes = 8, // Envelopes
  10. Alligator = 9, // Alligator
  11. OsMA = 10, // Moving Average of Oscillator (OsMA)
  12. AO = 11, // Awesome Oscillator (AO)
  13. ISH = 12, // Ichimoku
  14. AC = 13, // Accelerator Oscillator (AC)
  15. BAR = 14, // BAR BEAR \ BULL
  16. ADX = 15, // Average Directional Index (ADX)
  17. ADXWilder = 19, // ADX Wilder
  18. ZigZag = 17, // ZigZag
  19. MFI = 20, // Money Flow Index (MFI)
  20. Fractals = 21, // Fractals

Setiap sinyal dan strategi adalah strategi standar untuk menggunakan indikator tersebut. Strategi semacam itu dikembangkan oleh para pencipta indikator ini. Kami tidak akan menjelaskan seluruh tujuan dari setiap strategi.

Ini adalah strategi trading standar!

Anda akan memiliki 100.000.000 opsi untuk menggunakan indikator standar, tetapi Anda juga memahami bahwa kami tidak dapat menambahkannya ke Expert Advisor!

Jika Anda ingin menulis strategi atau Expert Advisor (EA) Anda pada indikator Anda, maka Anda memerlukan kode sumber terbuka (open-source code):

  1. Kode sumber terbuka The X untuk MetaTrader5 (Saat ini tidak tersedia)
  2. Kode sumber terbuka The X untuk MetaTrader4 (Saat ini tidak tersedia)
  3. Memprogram Expert Advisor: 10 Langkah Menuju Sukses!

Di Expert Advisor kami, Anda dapat menggabungkan satu sinyal dan hingga lima filter.

Perbedaan Sinyal dan Filter:

Sinyal

  1. Sinyal — terjadi ketika semua kondisi untuk sinyal terpenuhi, misalnya, persilangan garis MA atau munculnya titik ZigZag baru.
  2. Misalnya, persilangan level 70 untuk indikator RSI adalah sinyal. Jika RSI berada di atas level 70, maka ini sudah menjadi filter.
  3. Sinyal adalah apa yang muncul ketika kuotasi (quotes) diterima, ditetapkan pada bar (bar). Expert Advisor (EA) menerima sinyal tersebut.
  4. Misalnya, lampu menyala. Ini adalah sinyal karena lampu baru saja menyala. Saat Anda menyalakan lampu, orang tersebut bangun. Itu adalah sinyal.
  5. Pembukaan posisi (positions) terjadi setelah sinyal dikonfirmasi. Garis-garis bersilangan, dan kemudian posisi dibuka. Jika garis-garis sudah bersilangan sebelumnya, ini bukan sinyal; sinyal sudah berlalu.

Filter:

  1. Filter – Ini adalah posisi saat ini dari indikator, misalnya, posisi saat ini dari garis MA relatif satu sama lain atau puncak terakhir saat ini dari ZIGZAG.
  2. Filter adalah apa yang ditunjukkan oleh indikator saat ini. Ini bukan sinyal. Ini adalah posisi saat ini dari indikator.
  3. Misalnya, lampu sudah menyala. Ini adalah filter karena lampu sudah dinyalakan dan saat ini menyala. Saat lampu menyala, orang tersebut tidak lagi tidur. Ini adalah filter.
  4. Sinyal disaring berdasarkan nilai saat ini dari indikator. Jika MA Cepat (Fast MA) berada di atas MA Lambat (Slow MA), maka hanya posisi BELI (BUY positions) yang boleh dibuka dengan filter ini.

Tips Mengoptimalkan Parameter Sinyal:

string Signal1s = "========= OWN Signal options =========";
typesignals IndSigToTrade = 1;
ENUM_TIMEFRAMES TF_IndSigToTrade1 = PERIOD_CURRENT;
bool Signal_Reverse = false;
bool ClosePositionifChangeOWNSignal = false;
int OWNSIGNAL_shift = 1;
string Signal2s = "========= Filter 1 options =========";
typesignals2 FILTER_IndSigToTrade1 = 0;
ENUM_TIMEFRAMES FILTER_TF_IndSigToTrade1 = PERIOD_CURRENT;
bool Filter1_Reverse = false;
int FILTERSIGNAL1_shift = 1; 

Kami menyarankan Anda untuk tidak menggunakan lebih dari dua filter untuk sinyal, jadi kami telah menyembunyikan tiga filter lainnya di bagian bawah tabel pengaturan (settings table).

Ini karena setiap filter mengurangi jumlah sinyal. Jika Anda menggunakan lebih dari dua filter, sinyal akan menjadi sangat jarang.

Mengapa kami membuat lima filter?

Selama tahap pemrograman dan pembuatan Expert Advisor (EA), pengguna awal kami memberi kami “daftar keinginan” fitur dan permintaan. Kami memenuhi permintaan ini dan membuat lima filter.

Varian Optimasi Blok Sinyal

Parameter IndSigToTrade dapat dioptimalkan! Akan ada 20 opsi untuk parameter ini. Tidak banyak, tetapi Anda dapat memilih hasil terbaik untuk strategi ini atau itu.

Optimasi nilai: 1 – 20 atau Moving Average – Fractals

Parameter TF_IndSigToTrade1 juga dapat dioptimalkan. Namun, kami menyarankan Anda untuk mengatur Kerangka Waktu ke yang biasa Anda gunakan untuk trading.

  1. Ingat: Semakin tinggi Kerangka Waktu, semakin sedikit sinyal yang akan muncul. Semakin tinggi Kerangka Waktu, semakin panjang strategi tersebut.

Parameter Signal_Reverse digunakan untuk membalik strategi! Terkadang, trading menjadi lebih menguntungkan ketika kita membalik strategi.

Tidak masuk akal untuk dioptimalkan.

  1. Namun, untuk menyertakan parameter ini, saya merekomendasikan hanya trading jangka panjang dan penggunaan Stop Loss dan Take Profit yang besar.
  2. Jika Anda menggunakan tanpa rugi (lossless) dan trailing stop serta mengalami kerugian dalam spread, Anda tidak akan dapat trading secara menguntungkan dengan mengaktifkan parameter ini!
  3. Misalnya, jika strategi Anda mencakup Stop Loss = 2000 Poin (Pip) dan Take Profit = 500 Poin (Pip), Anda akan mengalami 100 kerugian dan 1 keuntungan.
  4. Ketika Anda membalik strategi, Anda mendapatkan 100 kemenangan dan 1 kerugian.
  5. Tapi itu semua relatif. Setiap teori perlu diuji! Keajaiban tidak terjadi!

Parameter ClosePositionifChangeOWNSignal memungkinkan penutupan posisi terbuka ketika sinyal utama berubah.

Tidak masuk akal untuk dioptimalkan.

  1. Opsi ini dapat digunakan untuk segera memotong sinyal palsu.
  2. Misalnya, misalkan Anda tidak menggunakan averaging (menampilkan serangkaian trading dalam total profit (profit)) dan menerima bahwa beberapa sinyal akan palsu, yang mengakibatkan kerugian instan saat menutup pada sinyal. Dalam kasus itu, Anda dapat mengaktifkan fungsi ini.

Parameter OWNSIGNAL_shift sangat penting! Ini mengatur penerimaan sinyal dari bar (bar/batang) yang tertutup atau saat ini.

Tidak masuk akal untuk dioptimalkan.

  1. Saya merekomendasikan untuk membiarkannya pada pengaturan default.
  2. 1 – Menerima sinyal dari bar yang sudah ditutup dan terbentuk sepenuhnya.
  3. 0 – Menerima sinyal dari bar saat ini, yang masih dalam proses pembentukan.
  4. Artikel terperinci tentang cara menggunakan sinyal SHIFT.

Parameter opsi Filter N memiliki penjelasan logis yang sama dengan sinyal. Oleh karena itu, kami tidak akan mengulanginya, tetapi kami menyatakan hal berikut:

  1. Anda dapat menggunakan filter dari indikator lain yang berbeda dari sinyal.
  2. Anda dapat menggunakan indikator yang sama seperti pada sinyal tetapi mengatur Kerangka Waktu lebih tinggi dari Kerangka Waktu sinyal. Misalnya, TF sinyal = M15, dan TF filter = H1.
  3. Filter mengurangi jumlah sinyal dan posisi terbuka.
  4. Satu filter mungkin tidak berfungsi dengan sinyal lain. Semuanya tergantung pada strategi yang Anda atur. Beberapa filter dan sinyal dapat bertentangan satu sama lain.
  5. Misalnya, Moving Average menunjukkan sinyal BELI, sementara Filter RSI hanya menunjukkan JUAL pada saat itu. Konflik semacam itu pernah ditemui.
  6. Jika Anda tidak membuka posisi menggunakan filter, matikan filter dan selidiki masalah ini. Mungkin dua indikator bertentangan.

Blok 2: Opsi Sinyal

Di blok ini, kami menambahkan parameter yang dapat membantu dalam penyempurnaan blok sinyal.

Parameter ini bersifat tambahan, dan saya tidak merekomendasikan untuk mengoptimalkannya.

bool Show_alert_without_opening_positions = false;
bool OpenBarControlOnly = false;
bool ControlNewBarforSIGNAL = true;
bool ReverseSignal = false;

Parameter Show_alert_without_opening_positions memungkinkan untuk menonaktifkan pembukaan posisi aktual. Sebaliknya, Expert Advisor (EA) menampilkan informasi di layar ketika sinyal tiba.

Tidak masuk akal untuk dioptimalkan.

  1. Expert Advisor (EA) tidak membuka posisi.
  2. Informasi tentang sinyal dengan parameter yang dihitung ditampilkan.
  3. Anda dapat mengaktifkan atau menonaktifkan pembukaan posisi untuk sinyal ini.

Parameter OpenBarControlOnly hanya digunakan untuk model pengujian dalam bentuk Harga Pembukaan Saja (Open Prices Only).

Tidak masuk akal untuk dioptimalkan.

  1. Ini memungkinkan Expert Advisor (EA) untuk beroperasi pada bar terbuka di grafik riil.
  2. Ketika parameter ini diaktifkan, seluruh algoritma Expert Advisor hanya dieksekusi sekali ketika bar baru dibuka.
  3. Hasilnya ketika Anda mengaktifkan opsi ini mirip dengan hasil pengujian dalam mode Harga Pembukaan Saja.

Parameter ControlNewBarforSIGNAL – Parameter yang menyertakan pemrosesan sinyal hanya sekali pada bar baru.

Tidak masuk akal untuk dioptimalkan.

  1. Ini memungkinkan Anda untuk secara signifikan mengurangi beban pada komputer Anda saat mengoptimalkan Expert Advisor (EA).
  2. Meningkatkan kecepatan pengujian di penguji strategi.
  3. Digunakan hanya untuk SHIFT > 0.

Parameter ReverseSignal – membalik sinyal umum untuk membuka posisi.

Optimasi nilai: True – False

  1. Berbeda dengan Signal_Reverse, Anda dapat membalik sinyal utama untuk pembukaan, termasuk sinyal dan filter.

Blok 3: Opsi Filter Pembukaan

Blok ini berisi parameter yang memungkinkan Anda untuk menyaring pembukaan posisi berdasarkan batasan teknis.

string oo_121 = "========= Opening Filter options =========";
TypeTrade TypeTradeBUYSELL = 0;
int MinuteToOpenNextPosition = 0;
bool OpenOppositePositionAfterStoploss = false;
bool OnlyOnePosbySignal = true;
bool OnePosPerDirection = true;
bool OnlyOnePositionPerMagic = false;
bool OnlyAlternateSignals = false;
int MAX_BUY_POSITION = 0;
int MAX_SELL_POSITION = 0;
int MaxSpreadToNotTrade = 0;
int MinSpreadToNotTrade = 0;

Parameter TypeTradeBUYSELL – mengaktifkan kemampuan untuk trading hanya dalam satu arah.

Tidak masuk akal untuk dioptimalkan.

  1. Ini berguna ketika Anda mengelola Expert Advisor (EA) secara manual, misalnya, saat menganalisis berita.
  2. Atau ketika Anda menggunakan sarana tambahan untuk menentukan sinyal, misalnya, garis tren.
  3. Saya merekomendasikan fitur ini hanya ketika Anda yakin bahwa tren memiliki arah.

Parameter MinuteToOpenNextPosition – melarang pembukaan posisi tambahan pada sinyal.

Tidak masuk akal untuk dioptimalkan.

  1. Ini memungkinkan Anda untuk menyempurnakan pengaturan trading pada sinyal ketika trader yakin dengan kekuatan sinyal.
  2. Digunakan dengan OnlyOnePosbySignal = false.
  3. Membatasi pembukaan posisi pada sinyal yang sama.

Parameter OpenOppositePositionAfterStoploss – membuka posisi berlawanan jika posisi sebelumnya ditutup oleh stop loss (rugi).

Tidak masuk akal untuk dioptimalkan.

  1. Ini adalah opsi eksperimental dan hanya dapat digunakan oleh trader yang memahami esensi pekerjaannya.

Parameter OnlyOnePosbySignal – memungkinkan Expert Advisor (EA) untuk membuka hanya satu posisi untuk pasangan mata uang dan nomor magic yang dipilih.

Anda dapat mengatur parameter ini ke True atau False saat menggunakan OnePosPerDirection = true.

  1. Menonaktifkan fungsi ini memungkinkan Anda untuk “mengumpulkan” posisi pada sinyal yang sama dalam arah yang sama.
  2. Saya tidak merekomendasikan mengubah parameter ini.

Parameter OnePosPerDirection – memungkinkan Expert Advisor (EA) untuk membuka posisi hanya dalam satu arah atau mengaktifkan kemungkinan trading dalam dua arah sekaligus.

Tidak masuk akal untuk dioptimalkan.

  1. Bekerja hanya ketika OnlyOnePosbySignal = false.
  2. Saya tidak merekomendasikan mengubah parameter ini.

Parameter OnlyOnePositionPerMagic memungkinkan Anda untuk mengontrol posisi terbuka dari semua Expert Advisor (EA) yang memiliki MAGIC yang sama.

Tidak masuk akal untuk dioptimalkan.

  1. Bekerja hanya ketika OnlyOnePosbySignal = false.
  2. Saya tidak merekomendasikan mengubah parameter ini.

Parameter OnlyAlternateSignals – memungkinkan Anda untuk membuka posisi hanya dalam arah yang berlawanan dari posisi terakhir yang ditutup.

Tidak masuk akal untuk dioptimalkan.

  1. Ini secara signifikan mengurangi jumlah sinyal.
  2. Saya tidak merekomendasikan mengubah parameter ini.

Parameter MAX_BUY_POSITION dan MAX_SELL_POSITION – memungkinkan Anda untuk membatasi jumlah transaksi (posisi) yang dibuka secara bersamaan.

Tidak masuk akal untuk dioptimalkan.

  1. Bekerja hanya ketika OnlyOnePosbySignal = false.
  2. Saya tidak merekomendasikan mengubah parameter ini.
  3. Parameter ini dibuat untuk trading dalam arah yang berbeda tanpa membatasi jumlah sinyal.
  4. Ini memungkinkan Anda untuk membatasi pembukaan posisi secara bersamaan pada satu sinyal atau menemukan posisi terbuka di pasar.

Parameter MaxSpreadToNotTrade dan MinSpreadToNotTrade memungkinkan Anda untuk membatasi pembukaan posisi pada sinyal ketika broker sering mengubah spread.

Tidak masuk akal untuk dioptimalkan.

  1. Saya tidak merekomendasikan mengubah parameter ini.
  2. Parameter ini sebaiknya diatur hanya pada grafik riil.
  3. Mereka memungkinkan Anda untuk membatasi sinyal selama rilis berita penting dan lonjakan tajam dalam spread, di mana Expert Advisor (EA) dapat mengatur stop yang besar.

Blok 4: Opsi Penutupan

Blok ini berisi parameter yang memungkinkan Anda menutup posisi dalam situasi tertentu.

input string oo_123 = "========= Close options =========";
input bool ClosePosIfChange = true;
input bool CloseChangeOnlyInProfit = true;
input int ClosePosition_After_X_Minutes = 0;

Parameter ClosePosIfChange – menutup posisi berlawanan saat mengubah sinyal untuk membuka.

Optimasi nilai: True – False

  1. Ini berguna ketika Anda ingin mengubah sinyal saat ini jika ternyata salah atau ketika sinyal baru muncul.
  2. Ini memungkinkan Anda untuk memperbaiki keuntungan atau kerugian saat mengubah sinyal dari indikator.

Parameter CloseChangeOnlyInProfit – memungkinkan Anda untuk menutup hanya posisi yang menguntungkan.

Jika sinyal diterima untuk membuka posisi berlawanan, itu akan ditutup hanya ketika posisi saat ini dalam keuntungan.

Optimasi nilai: True – False

  1. Ini memungkinkan Anda untuk mengunci keuntungan saat mengubah sinyal dari indikator.
  2. Bekerja hanya dengan ClosePosIfChange = true.

Parameter ClosePosition_After_X_Minutes – menutup posisi setelah waktu tertentu.

Optimasi nilai: Disarankan untuk mengatur angka yang merupakan kelipatan dari Kerangka Waktu (TF) Anda.

Misalnya, saat menggunakan Expert Advisor (EA) pada Kerangka Waktu M15, atur nilainya: mulai 0, langkah 15, berhenti 75.

  1. Untuk memperbaiki waktu secara ketat ketika Expert Advisor (EA) diizinkan untuk trading.
  2. Ini memungkinkan Anda untuk menutup posisi yang dibuka oleh sinyal. Misalnya, 15 menit setelah pembukaan.
  3. Tergantung dan bekerja pada parameter CloseChangeOnlyInProfit:
  4. Jika CloseChangeOnlyInProfit = true, maka posisi ditutup jika mereka memiliki keuntungan.

Blok 5: Opsi Perintah Tertunda (Pending Orders)

Di blok ini, parameter untuk mengelola perintah tertunda dijelaskan.

input StopOrderType StopOrderUSE = 0;
input int StopOrderDeltaIfUSE = 0;
input int StopOrderDayToExpiration = 0;
input int StopOrderBarToExpiration = 0;
input bool ReInstallStopOrdersNewSignalAppears = true;

Parameter StopOrderUSE – memungkinkan Anda untuk membuka perintah tertunda atau limit alih-alih posisi.

Optimasi nilai: False – Gunakan Perintah Stop (Use Stop Orders).

  1. Ini memungkinkan Anda untuk menyaring sinyal berdasarkan jarak operasi tambahan.
  2. Gunakan Perintah Stop: Jika Expert Advisor (EA) menerima sinyal dan kami membuka perintah tertunda pada jarak 100 poin (pip), jika harga telah melewati 100 poin (pip) ke arah kami dan memicu perintah tertunda, maka sinyal dianggap dikonfirmasi.
  3. Gunakan Perintah Limit: Jika Expert Advisor (EA) menerima sinyal dan kami membuka perintah limit pada jarak 100 poin (pip), jika harga telah melewati 100 poin (pip) ke arah yang berlawanan dan memicu perintah limit, maka sinyal dianggap sebagai pantulan. Sebaiknya pastikan akan ada pantulan.
  4. Saya tidak merekomendasikan optimasi untuk Gunakan Perintah Limit (Use Limit Orders).
  5. Nilai Gunakan Perintah Stop hanya masuk akal untuk trading jangka panjang.

Parameter StopOrderDeltaIfUSE adalah jarak ke perintah stop atau limit tertunda.

Optimasi nilai: Disarankan untuk mengatur parameter secara individual untuk setiap pasangan.

  1. Misalnya, jika ini adalah pasangan mata uang EURUSD dan Anda trading pada kerangka waktu M30. Pergerakan harga rata-rata dalam periode tersebut, misalnya, 50 bar = 7500 poin (pip), maka atur parameter ini untuk optimasi sebagai mulai 0, langkah 100, dan berhenti 1000.
  2. Misalnya: Jika ini adalah pasangan mata uang XAUUSD dan Anda trading pada kerangka waktu M1 dan pergerakan harga rata-rata dalam periode tersebut, misalnya, 50 bar = 100 poin (pip), maka atur parameter ini untuk optimasi sebagai: mulai 0, langkah 10, berhenti 100.
  3. Misalnya, Anda memerlukan konfirmasi sinyal pembukaan dan pergerakan harga rata-rata dalam periode tersebut. Misalnya, 100 bar = 1000 poin (pip), maka mulai 0, langkah 50, dan berhenti 500.

Parameter StopOrderDayToExpiration – menghapus perintah tertunda jika tidak dieksekusi dalam jumlah hari yang ditetapkan.

Tidak masuk akal untuk dioptimalkan.

Parameter StopOrderBarToExpiration menghapus perintah tertunda jika tidak dieksekusi dalam jumlah bar yang ditetapkan (tergantung pada kerangka waktu Anda).

Opsi optimasi: mulai 0, langkah 1, berhenti 10

  1. Memungkinkan Anda untuk menghapus perintah tertunda jika harga tidak menembus level pengaturan Perintah Tertunda (StopOrder).

Parameter ReInstallStopOrdersNewSignalAppears – mengatur ulang perintah tertunda ketika sinyal diperbarui.

Tidak masuk akal untuk dioptimalkan.

  1. Ini memungkinkan Anda untuk mengatur perintah tertunda setiap kali sinyal baru muncul.
  2. Saya tidak merekomendasikan mengubah pengaturan ini.

Blok 6: Opsi Trading

Di blok ini, parameter yang diatur pada saat eksekusi posisi dikumpulkan.

Tidak masuk akal untuk dioptimalkan.

Blok 7: Opsi Stop

Blok untuk bekerja dengan stop loss dan take profit.

input string oo5 = "========= Stops options =========";
input bool VirtualStops = false;
input bool ForcedModifySLTP = false;
input minlevel SetMinStops = 0;
input int StopLoss = 2000;
input int TakeProfit = 0;
input bool Include_Commission_Swap = true;

Parameter ForcedModifySLTP, SetMinStops, Include_Commission_Swap – Saya tidak merekomendasikan untuk diubah. Tidak masuk akal untuk dioptimalkan.

Parameter VirtualStops – mengaktifkan kemampuan untuk memasang stop loss dan take profit virtual tanpa modifikasi aktual posisi (stop loss dan take profit dalam posisi akan = 0).

Optimasi nilai: True – False

  1. Semua level StopLoss dan TakeProfit disimpan dalam variabel global dan di grafik.
  2. Ada eksekusi virtual StopLoss dan TakeProfit.
  3. Masuk akal untuk diterapkan hanya ketika Anda perlu memasang level stop yang sangat kecil (kurang dari level minimum yang mungkin di server).
  4. Ini memungkinkan Anda untuk menyembunyikan level stop Anda dari broker, sehingga mempersulit pemahaman logika strategi Anda.

Parameter StopLoss – stop loss untuk posisi.

Optimasi nilai: Disarankan untuk mengatur parameter secara individual untuk setiap pasangan.

  1. Misalnya, jika ini adalah pasangan mata uang EURUSD dan Anda trading pada kerangka waktu M30. Pergerakan harga rata-rata dalam periode tersebut, misalnya, 50 bar = 7500 poin (pip), maka atur parameter ini untuk optimasi sebagai mulai 0, langkah 100, dan berhenti 1000.
  2. Misalnya: Jika ini adalah pasangan mata uang XAUUSD dan Anda trading pada kerangka waktu M1 dan pergerakan harga rata-rata dalam periode tersebut, misalnya, 50 bar = 100 poin (pip), maka atur parameter ini untuk optimasi sebagai: mulai 0, langkah 10, berhenti 100.
  3. Ini tergantung pada batasan Anda untuk setiap posisi.
  4. Semakin besar StopLoss, semakin lama waktu penahanan posisi, dan semakin besar peluang untuk berharap harga akan kembali ke posisi terbuka.
  5. Semakin kecil StopLoss, semakin cepat sinyal palsu akan ditutup.
  6. Tidak masuk akal menggunakan StopLoss kecil, yang lebih kecil dari DistanceAdditionalOpening.

Parameter TakeProfit – take profit untuk posisi.

Optimasi nilai: Disarankan untuk mengatur parameter secara individual untuk setiap pasangan.

  1. Misalnya: Jika ini adalah pasangan mata uang EURUSD dan Anda trading pada kerangka waktu M30 dan pergerakan harga rata-rata dalam periode tersebut, misalnya, 50 bar = 7500 poin (pip), maka atur parameter ini untuk optimasi sebagai: mulai 0, langkah 25, berhenti 500.
  2. Misalnya: Jika ini adalah pasangan mata uang XAUUSD dan Anda trading pada kerangka waktu M1 dan pergerakan harga rata-rata dalam periode tersebut, misalnya, 50 bar = 100 poin (pip), maka atur parameter ini untuk optimasi sebagai: mulai 0, langkah 5, berhenti 100.
  3. Anda dapat mengatur take profit dalam perhitungan StopLoss / 2 atau StopLoss / 3.
  4. Semakin besar TakeProfit, semakin lama waktu penahanan posisi. Anda dapat melewatkan posisi profit jika tidak mencapai target TakeProfit.
  5. Semakin kecil TakeProfit, semakin cepat sinyal yang menguntungkan akan ditutup.
  6. Tidak masuk akal menggunakan TakeProfit kecil, yang lebih kecil dari DistanceAdditionalOpening.

Blok 8: Opsi Lot

Blok untuk bekerja dengan lot tetap dan lot otomatis.

input string oo4 = "========= Lots options =========";
input double Lots = 0.01;
input bool DynamicLot = false;
input double LotBalancePercent = 0.01;
input double RiskRate = 0;
input double MaxLot = 999;
input double Martingale = 1;

Saya tidak merekomendasikan mengubah parameter MaxLot dan RiskRate. Tidak masuk akal untuk dioptimalkan.

Parameter Lots – menyesuaikan volume posisi.

Optimasi nilai: Tergantung pada deposit Anda. Misalnya: Untuk lot langkah 0,01 dan deposit $1000: mulai 0,01, langkah 0,01, berhenti 0,1

  1. Parameter ini lebih baik dioptimalkan setelah optimasi parameter strategi lainnya.
  2. Ketika Anda meningkatkan lot, Anda meningkatkan profit yang diperoleh dari satu posisi.
  3. Dengan peningkatan lot, Anda bisa menghabiskan deposit.
  4. Tidak masuk akal untuk dioptimalkan dengan DynamicLot = true.
  5. Hitung lot sehingga ketika Anda membuka posisi dengan lot ini, Anda hanya menggunakan 1-2% dari Saldo (Balance). Misalnya:
  • Untuk membuka satu posisi dengan lot 0,01, Anda memerlukan margin bebas $10.
  • Jika Anda menggunakan 100 poin stop (pip) (di mana harga 1 poin = $0,1), Anda akan menerima kerugian $10. Ini adalah 1% dari $1000.

Parameter DynamicLot dan LotBalancePercent – menyesuaikan perhitungan otomatis lot posisi.

Optimasi nilai: DynamicLot = true dan LotBalancePercent dengan parameter: mulai 0.1, langkah 0.1, berhenti 1

  1. Parameter ini lebih baik dioptimalkan setelah optimasi parameter strategi lainnya.
  2. Ini memungkinkan Anda untuk meningkatkan lot ketika menghasilkan profit dalam progresi geometris.
  3. Ini dapat mempengaruhi profit akhir.
  4. Saya tidak merekomendasikan penggunaan nilai lebih tinggi dari 1%.

Parameter Martingale – mengaktifkan Martingale saat menutup pada stop loss.

Optimasi nilai: mulai 0.1, langkah 0.2, berhenti 2

  1. Masuk akal untuk digunakan hanya dengan nilai StopLoss > 0.
  2. Jika Martingale kurang dari 1, maka setiap posisi berikutnya dan lotnya akan lebih kecil dari yang sebelumnya.
  3. Jika nilainya kurang dari 1, masuk akal untuk digunakan hanya ketika lot posisi lebih tinggi dari lot minimum di server.
  4. Jika Martingale lebih besar dari 1, maka setiap posisi berikutnya dan lotnya akan lebih besar dari yang sebelumnya.
  5. Semakin tinggi nilai Martingale, semakin berbahaya trading Expert Advisor (EA) tersebut.
  6. Martingale adalah strategi yang sangat sederhana dan berbahaya.
  7. Saya merekomendasikan untuk memeriksa dan membaca tentang strategi trading Martingale kami: Two Sides.

Blok 9: Opsi Averager

Blok untuk bekerja dengan pembukaan melawan tren. Posisi rata-rata (averaging).

input string oo2 = "========= Averager options =========";
input bool AverageUSE = true;
input bool OnlyModify = false;
input int TakeProfitALL = 200;
input int Distance = 500;
input double DistanceMartingale = 1;
input double LotsMartingale = 1;
input int MaxOrdersOpen = 5;

Parameter OnlyModify – Saya tidak merekomendasikan untuk diubah. Tidak masuk akal untuk dioptimalkan.

Parameter AverageUSE mengaktifkan fungsi averaging. Hanya dengan AverageUSE diatur ke true, parameter lain dapat dioptimalkan!

Optimasi nilai: True – False

  1. Posisi averaging dapat membebani akun Anda dengan posisi tambahan.
  2. Strategi averaging membutuhkan saldo yang setidaknya tiga kali lebih besar dari deposit standar (tanpa averaging).
  3. Posisi averaging adalah upaya untuk mempertahankan posisi yang merugi menjadi profit.
  4. Jika Anda menggunakan deposit yang direkomendasikan, Anda dapat meningkatkan jumlah trading yang menguntungkan hingga 70-90%.
  5. Saat menggunakan averaging, Expert Advisor (EA) akan mencoba membawa sinyal palsu menjadi profit. Sinyal lain akan diabaikan sampai seri averaging ditutup.

Parameter TakeProfitALL memodifikasi take profit semua posisi dengan satu level.

Optimasi nilai: 10-50-1000 (mulai = 10, langkah = 50, berhenti = 1000)

  1. Ini berfungsi sebagai perlindungan tambahan untuk posisi jika Anda telah menonaktifkan averaging.
  2. Ini berguna jika Anda tidak menggunakan parameter AdditionalOpening yang diatur ke false.

Parameter Distance menentukan jarak di mana posisi tambahan dibuka melawan tren.

Optimasi nilai: Disarankan untuk mengatur parameter secara individual untuk setiap pasangan mata uang.

  1. Misalnya, jika ini adalah pasangan mata uang EURUSD dan Anda trading pada kerangka waktu M30 dengan pergerakan harga rata-rata 50 bar = 7500 poin (pip), atur parameter ini untuk optimasi sebagai berikut: mulai = 0, langkah = 25, berhenti = 500.
  2. Misalnya, jika ini adalah pasangan mata uang XAUUSD dan Anda trading pada kerangka waktu M1 dengan pergerakan harga rata-rata 50 bar = 100 poin (pip), atur parameter ini untuk optimasi sebagai berikut: mulai = 0, langkah = 5, berhenti = 100.
  3. Cara lain untuk mengoptimalkan parameter ini adalah dengan menggunakan spread rata-rata untuk pasangan mata uang yang dipilih. Kami menggunakan metode ini di Expert Advisor (EA) TickSniper kami.
  4. Misalnya, jika spread rata-rata untuk pasangan mata uang adalah 3 poin (pip), maka Jarak (Distance) averaging = 50 * 3 = 150 poin (pip). Dalam kasus ini, optimasi dapat diatur sebagai berikut: 100-25-250.
  5. Baca lebih lanjut tentang rekomendasi mengenai Jarak averaging: Averager untuk MT4 dan MT5
  6. Semakin tinggi nilai jarak, semakin lama Expert Advisor (EA) membawa seri posisi ke total profit.
  7. Semakin kecil nilai Jarak averaging, semakin besar beban pada saldo akun Anda. Lebih banyak posisi terbuka berarti Anda dapat mencapai profit lebih cepat, tetapi akun trading Anda akan sangat terbebani!

Parameter DistanceMartingale meningkatkan jarak di setiap posisi tambahan.

Optimasi nilai: Hanya dalam kasus ekstrem, 1-0.1-2

  1. Parameter ini harus dioptimalkan jika Anda perlu meningkatkan Jarak untuk setiap posisi baru dalam seri.
  2. Jika Jarak terlalu kecil, maka DistanceMartingale memungkinkan Anda untuk meningkatkan langkah grid averaging.
  3. Jika DistanceMartingale kurang dari 1, langkah grid averaging dan Jarak akan berkurang dengan setiap posisi averaging tambahan yang dibuka!
  4. Jika DistanceMartingale lebih besar dari 1, langkah grid averaging dan Jarak akan meningkat dengan setiap posisi averaging tambahan yang dibuka!

Parameter LotsMartingale meningkatkan ukuran lot untuk setiap posisi tambahan!

Optimasi nilai: Hanya dalam kasus ekstrem, 1-0.1-2

  1. Ini memungkinkan Anda untuk mengurangi waktu bagi serangkaian posisi untuk bergerak ke profit.
  2. Ini dapat meningkatkan beban pada akun trading dan saldo Anda.
  3. Disarankan untuk digunakan hanya dengan saldo yang cukup!
  4. Jika LotsMartingale kurang dari 1, ukuran lot dari posisi tambahan berikutnya akan berkurang dengan setiap posisi averaging tambahan yang dibuka.
  5. Jika LotsMartingale lebih besar dari 1, ukuran lot dari posisi tambahan berikutnya akan meningkat dengan setiap posisi averaging tambahan yang dibuka.

Parameter MaxOrdersOpen membatasi jumlah posisi averaging tambahan yang melawan tren!

Optimasi nilai: Hanya dalam kasus ekstrem, 0 – 1 – 10

  1. Memungkinkan Anda untuk membatasi beban pada akun dengan membatasi jumlah posisi tambahan baru.
  2. Saya menggunakan nilai 5. Namun, Anda dapat mengoptimalkan nilai ini untuk hasil yang lebih baik.

Blok 10: Pembukaan Tambahan

Blok ini menangani posisi pembukaan searah tren (trend). Analisis tambahan.

input string oo10 = "========= Additional opening ================================== ======= ";
input bool AdditionalOpening = false;
input bool OnlyModifyAdditionalOpening = false;
input int StopLossALL = 0;
input int DistanceAdditionalOpening = 100;
input double LotsMartinAdditionalOpening = 1;
input int MaxOrdersOpenAdditionalOpening = 0;
  

Parameter OnlyModifyAdditionalOpening tidak direkomendasikan untuk diubah! Tidak masuk akal untuk dioptimalkan.

Parameter AdditionalOpening mengaktifkan fungsi pembukaan tambahan berdasarkan tren. Hanya ketika AdditionalOpening diatur ke true, parameter lain dapat dioptimalkan!

Optimasi nilai: True – False

  1. Pembukaan posisi tambahan memungkinkan Anda mencapai lebih banyak profit jika sinyal sangat menguntungkan.
  2. Posisi tambahan dapat menimbulkan kerugian dan mengurangi profit dari seri asli.
  3. Memungkinkan Anda membangun grid posisi searah profit.
  4. Masuk akal untuk digunakan bersama dengan Stop Absolut (Absolute Stop) atau Trailing Stop.

Parameter StopLossALL memodifikasi StopLoss semua posisi dengan satu level.

Nilai optimasi: 10-50-1000 (mulai = 10, langkah = 50, berhenti = 1000)

  1. Ini berfungsi sebagai pembukaan posisi tambahan jika Anda telah menonaktifkannya.
  2. Masuk akal jika Anda tidak menggunakan Averaging: AverageUSE = false.

Parameter DistanceAdditionalOpening menentukan jarak di mana posisi tambahan dibuka searah tren.

Nilai optimasi: Disarankan untuk mengatur parameter secara individual untuk setiap pasangan mata uang.

  1. Misalnya, jika ini adalah pasangan mata uang EURUSD dan Anda trading pada kerangka waktu M30 dengan pergerakan harga rata-rata 50 bar = 7500 poin (pip), atur parameter ini untuk optimasi sebagai berikut: mulai = 0, langkah = 25, berhenti = 500.
  2. Misalnya, jika ini adalah pasangan mata uang XAUUSD dan Anda trading pada kerangka waktu M1 dengan pergerakan harga rata-rata 50 bar = 100 poin (pip), atur parameter ini untuk optimasi sebagai berikut: mulai = 0, langkah = 5, berhenti = 100.
  3. Cara lain untuk mengoptimalkan parameter ini adalah dengan menggunakan spread rata-rata untuk pasangan mata uang yang dipilih.
  4. Misalnya, jika SPREAD rata-rata untuk pasangan mata uang adalah 3 poin (pip), maka jarak averaging = 50 * 3 = 150 poin (pip). Dalam kasus ini, optimasi dapat diatur sebagai berikut: 100-25-250.

Parameter LotsMartinAdditionalOpening meningkatkan ukuran lot untuk setiap posisi tambahan.

Nilai optimasi: Hanya dalam kasus ekstrem, 1-0.1-2

  1. Ini dapat mempengaruhi akun trading dan saldo Anda.
  2. Disarankan untuk digunakan hanya dengan saldo yang cukup.
  3. Jika LotsMartinAdditionalOpening kurang dari 1, ukuran lot dari posisi tambahan berikutnya akan berkurang dengan setiap posisi tambahan yang dibuka.
  4. Jika LotsMartinAdditionalOpening lebih besar dari 1, ukuran lot dari posisi tambahan berikutnya akan meningkat dengan setiap posisi tambahan yang dibuka.

Parameter MaxOrdersOpenAdditionalOpening membatasi jumlah posisi tambahan searah tren.

Nilai optimasi: Hanya dalam kasus ekstrem, 0 – 1 – 10

Blok 11: Opsi BreakEven Tanpa Rugi

Blok BreakEven.

input string MovingInWLUSE_ = "========= BreakEven Without LOSS options =========";
input bool MovingInWLUSE = false;
input int LevelWLoss = 0;
input int LevelProfit = 0;
  

Parameter MovingInWLUSE mengaktifkan pemasangan Stop-Loss pada titik impas. Hanya ketika MovingInWLUSE diatur ke true, parameter lain dapat dioptimalkan!

Optimasi nilai: True – False

Parameter LevelWLoss mengatur level untuk menyesuaikan stop loss ke profit. Parameter LevelProfit mendefinisikan nilai profit dalam poin (pip) ketika break-even mulai bekerja.

Optimasi nilai: 0-5-50

  1. Parameter LevelProfit harus selalu lebih besar dari LevelWLoss.
  2. Anda dapat mengatur optimasi LevelProfit ke 25-5-100 dan LevelWLoss ke 0-5-50.
  3. Semakin tinggi nilai LevelProfit, semakin banyak posisi perlu bergerak ke profit agar Expert Advisor (EA) mengatur titik impas. Ini melindungi dari kerugian kecil, tetapi Anda mungkin kehilangan profit.
  4. Semakin besar perbedaan antara LevelProfit dan LevelWLoss, semakin kurang sensitif ambang batas break-even.

Blok 12: Opsi Trailing Standar

Unit untuk trailing stop standar.

input string Trailing_ = "========= Standard Trailing options =========";
input bool TrailingStopUSE = true;
input bool IfProfTrail = true;
input int TrailingStop = 100;
input int TrailingStep = 1;
input bool SaveTPafterTrailingStop = false;
  

IfProfTrail, TrailingStep, dan parameter SaveTPafterTrailingStop tidak direkomendasikan untuk diubah! Tidak masuk akal untuk dioptimalkan.

Parameter TrailingStopUSE mengaktifkan dukungan dan modifikasi Stop-Loss ke profit. Hanya ketika TrailingStopUSE diatur ke true, parameter lain dapat dioptimalkan!

Optimasi nilai: True – False

  1. Perbedaan antara TrailingStop dan BreakEven adalah bahwa trailing stop mengatur titik BreakEven dan kemudian menyesuaikan stop loss ke profit jika kondisi pasar memungkinkan.
  2. Anda dapat menggunakan nilai parameter yang berbeda untuk TrailingStop dan BreakEven. Tidak masuk akal menggunakan parameter yang sama untuk keduanya.

Parameter TrailingStop mendefinisikan jarak stop loss dari harga saat ini. Dalam kasus ini, posisi harus mengakumulasi profit TrailingStop pip.

Optimasi nilai: 0-10-100 (Dengan pergerakan pasangan mata uang rata-rata 200-300 poin (pip) per hari)

  1. Semakin tinggi nilai TrailingStop, semakin banyak posisi perlu bergerak ke profit agar Expert Advisor (EA) membuat titik impas dan melanjutkan trailing posisi. Ini melindungi dari kerugian kecil, tetapi Anda mungkin kehilangan profit yang lebih besar.

Blok 13: Trailing Stop berdasarkan SAR

Unit trailing stop berdasarkan indikator SAR.

input period periods6 = "========= TrailingStop by SAR ================================= ==== ";
input bool TrailingStopSAR = false;
input ENUM_TIMEFRAMES TrailingStopSAR_TimeFrame = PERIOD_CURRENT;
input double step = 0.02;
input double maximum = 0.2;
  

Parameter TrailingStopSAR_TimeFrame, step, dan maximum tidak direkomendasikan untuk diubah! Tidak masuk akal untuk dioptimalkan.

Parameter TrailingStopSAR mengaktifkan dukungan dan modifikasi Stop-Loss ke profit berdasarkan poin (pip) dari indikator Parabolic SAR. Hanya ketika TrailingStopSAR diatur ke true, parameter lain dapat dioptimalkan!

Optimasi nilai: True – False

  1. Ini memungkinkan Anda untuk mengatur Stop-Loss berdasarkan ekstrem indikator.
  2. Selalu pertahankan jarak dari harga saat ini ke ekstremum dengan menghitung jarak secara otomatis.
  3. Tidak masuk akal untuk digunakan dengan TrailingStopUSE diatur ke true.

Blok 14: Opsi Waktu Trading

Unit manajemen waktu dari Expert Advisor (EA).

input string oo6 = "========= Time Trade options ================================= ======= ";
input bool TradeStartStopbyTime = false;
input string SeveralTimeWork = "";
input string of_times41 = "=== Time Trade Start / Stop Time ============================";
input int OpenHour = 0;
input int OpenMinute = 0;
input int ClosePeriod_Minute = 0;
input int CloseHour = 23;
input int CloseMinute = 59;

input typeofclosebyouttime CloseAllTradesByOutOfTime = NotUse;
input string period43 = "=== Time Trade Days ============================";
input bool TradeByDays = false;
input string Days = "1,2,3,4,5,6,0";
input int DayForOptimization = 0;
input string period42 = "=== Time Trade Monday ============================";
input bool TradeStartbyTimeMonday = false;
input int OpenHourMonday = 0;
input int OpenMinuteMonday = 0;
input string of_periods44 = "=== Time Trade Friday ============================";
input bool TradeStartStopbyTimeFriday = false;
input int OpenHourFriday = 0;
input int OpenMinuteFriday = 0;
input int CloseHourFriday = 23;
input int CloseMinuteFriday = 59;
input bool CloseFriday = false;
  

Blok ini berisi banyak parameter, sehingga memakan waktu untuk mengoptimalkan semuanya.

Anda dapat mengoptimalkan pengaturan waktu setelah mengoptimalkan semua blok lain untuk meningkatkan hasil tes.

Hanya ketika TradeStartStopbyTime diatur ke true, masuk akal untuk mengoptimalkan parameter yang tersisa!

Saya merekomendasikan untuk mengoptimalkan hanya parameter ini:

  1. OpenHour = 0-1-23
  2. CloseHour = 0-1-23
  3. TradeByDays = True-False
  4. DayForOptimization = 0-1-6

Blok 15: Opsi Tutup Semua Saat Profit atau Rugi

Blok untuk penutupan berdasarkan total profit.

input string CloseProfitLoss = "========= CloseALL when Profit or LOSS options =========";
input typeprofloss TypeofClose = 1;
input bool CloseProfit = false;
input double prifitessss = 10;
input bool CloseLoss = false;
input double lossss = -10;
input double TrailOptions = 0;
input double TrailOptionsStep = 0;
input double BalanceStart = 0;
input bool ForcedClose = true;
input bool MailSend;
input bool Orderdelete = true;
input bool OFFAfterClosePROF = false;
input bool OFFAfterCloseLOSS = false;
input bool CloseTerminalAfterClosePROF = false;
input bool CloseTerminalAfterCloseLOSS = false;
  

Blok individual. Anda dapat mengoptimalkan parameter hanya jika diperlukan untuk strategi Anda.

Misalnya, ketika Anda membuka beberapa posisi atau terlibat dalam pembukaan posisi yang kacau.

Masuk akal untuk mengoptimalkan parameter berikut ketika TypeofClose diatur ke PercentBalance:

  1. CloseProfit = True-False;
  2. prifitessss = 0.1-0.1-1
  3. CloseLoss = True-False;
  4. lossss = (-0.1) – (-0.1) – (-1)

Opsi untuk Memanggil OnTester_Custom_max:

Parameter pertama adalah formula umum untuk mendapatkan hasil proses optimizer!

Secara default: (Profit * Jumlah Trading) / Persentase Drawdown Dana yang Tersedia

OnTester_Custom_maxKriteria Anda sendiri untuk optimasi genetik.
Informasi lebih lanjut tentang hasil tes: Statistik
Dicatat dalam bentuk formula. Misalnya: OnTester_Custom_max = “STAT_PROFIT * STAT_TRADES / STAT_EQUITY_DD”
Pastikan untuk menentukan nama variabel seperti dalam referensi!

Opsi untuk Memanggil OnTester_****:

OnTester_Min_TradesMin Transaksi untuk OptimasiSaldo Minimum (dalam mata uang deposit) pada akhir pengujian untuk hasil optimasi yang berhasil.
Misalnya, 1000 (Sama dengan deposit awal) = Jika Saldo dalam proses optimizer ini kurang dari deposit awal, maka hasil ini akan sama dengan 0.
OnTester_Min_ProfitMin Profit untuk OptimasiDana Bebas Minimum (dalam mata uang deposit) pada akhir pengujian untuk hasil optimasi yang berhasil.
Misalnya, 500 = Jika Ekuitas dalam proses optimizer ini kurang dari 500 (dalam mata uang deposit), maka hasil ini akan sama dengan 0.
OnTester_Min_ProfitFactorMin ProfitFactor untuk OptimasiFaktor Profit Minimum yang diperlukan untuk hasil optimasi yang berhasil.
Misalnya, 1.5 = Jika Faktor Profit dalam proses optimizer ini kurang dari 1.5, maka hasil ini akan sama dengan 0.
OnTester_Min_BalanceMin Saldo untuk OptimasiSaldo Minimum (dalam mata uang deposit) pada akhir pengujian untuk hasil optimasi yang berhasil.
Misalnya, 1000 (Sama dengan deposit awal) = Jika Saldo dalam proses optimizer ini kurang dari deposit awal, maka hasil ini akan sama dengan 0.
OnTester_Min_EquityMin Ekuitas untuk OptimasiJumlah trading minimum yang dibuka oleh Expert Advisor (EA) untuk hasil optimasi yang berhasil.
Misalnya, 50 = Jika jumlah trading dalam proses optimizer ini kurang dari 50, maka hasil ini akan menjadi 0.
OnTester_Max_Balance_DDMax Drawdown Saldo % untuk OptimasiDrawdown maksimum pada Saldo (dalam mata uang deposit) yang diizinkan untuk hasil optimasi yang berhasil.
Misalnya, 20% = Jika Drawdown Saldo dalam proses optimizer ini melebihi 20%, maka hasil ini akan sama dengan 0.
OnTester_Max_Equity_DDMax Drawdown Ekuitas % untuk OptimasiDrawdown maksimum pada Ekuitas (dalam mata uang deposit) yang diizinkan untuk hasil optimasi yang berhasil.
Misalnya, 15% = Jika Drawdown Ekuitas dalam proses optimizer ini melebihi 15%, maka hasil ini akan sama dengan 0.

Kesimpulan

Optimasi dan pengujian Expert Advisor (EA) adalah upaya berkelanjutan.

Anda mungkin berpikir bahwa optimasi itu rumit dan mahal. Tetapi apakah Anda berencana untuk menghasilkan jutaan dolar?

Anda harus memahami bahwa Forex tidak mudah. Setiap EA hanyalah algoritma yang dibangun ke dalam kode.

Kami telah bekerja selama lebih dari 10 tahun dan memahami apa yang dibutuhkan oleh para ahli trading.

Dengan keyakinan, kami dapat mengatakan bahwa mengoptimalkan dan mengkonfigurasi satu EA jauh lebih mudah daripada mencari dan mengoptimalkan ribuan robot lainnya.

  1. Uji dan temukan opsi trading yang paling sesuai untuk Anda!
  2. Optimalkan setiap enam bulan!
  3. Pantau Expert Advisor (EA), pelajari log, dan tetap perhatikan EA!
  4. Sesuaikan parameter Expert Advisor (EA) berdasarkan berita.

Pelajari materi tentang trading Forex.

Pertanyaan?

Jika Anda memiliki pertanyaan, silakan ajukan. Kami tidak menjual kucing dalam karung.

Setiap produk kami dapat diperiksa sebelum pembelian.

Kami menghargai umpan balik dan keinginan Anda untuk produk kami dan berusaha untuk mempertahankan standar kualitas tinggi.

Terima kasih telah bersama kami!

Do you have a question?

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Postingan ini juga tersedia dalam: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어 العربية Indonesian ไทย Tiếng Việt


    Please wait, contacting ...

    Peringatan Risiko:


    Kinerja perdagangan masa lalu tidak menjamin hasil di masa depan.

    Perdagangan valuta asing dengan margin membawa tingkat risiko yang tinggi dan mungkin tidak cocok untuk semua investor.

    Harap diperhatikan bahwa penggunaan robot perdagangan (trading robots) melibatkan risiko yang signifikan, dan Anda bisa kehilangan lebih dari investasi awal Anda.

    Silakan lanjutkan dengan hati-hati, evaluasi situasi keuangan Anda dengan cermat, dan pertimbangkan untuk mencari nasihat dari profesional yang berkualitas.

    Disclaimer

    Situs web ini menggunakan cookie untuk meningkatkan pengalaman Anda. Dengan menggunakan situs web ini, Anda menyetujui Kebijakan Perlindungan Data dan Penafian kami.
    Baca Selengkapnya