Kesalahan OrderModify
Halaman 1 dari 464 123 ... TerakhirTerakhir
Results 1 to 10 of 31

Thread: Kesalahan OrderModify

  1. #1
    Saya terjebak dan tidak yakin apa yang saya lakukan salah.
    EA saya melaporkan kesalahan OrderModify 1 pada hampir setiap centang.
    Saya mencoba untuk mendapatkan EA untuk mengubah pesanan ketika variabel entri berubah dari OrderOpenPrice (), yang awalnya dibuka menggunakan entri.

    EA bekerja dengan benar dan akan mengubah urutan ke titik yang benar, namun, ia mencoba memodifikasinya bahkan ketika variabel entri == ke dirinya sendiri, atau OrderOpenPrice ().

    Di masa lalu untuk memeriksa nilai, saya telah menempatkan Print (entri); dan Cetak (OrderOpenPrice ()); langsung setelah if (entri! = OrderOpenPrice ()) {dan masih mencoba mengeksekusi pernyataan ordermodify saya bahkan ketika keduanya == untuk satu sama lain

    Apa yang saya lakukan salah?
    Terima kasih
    Berikut adalah kode yang saya miliki untuk masalah ini


    Kode yang dimasukkan ke totalorders = OrdersTotal (); untuk (int i = totalorders-1; igt; = 0; i--) {OrderSelect (i, SELECT_BY_POS); if (OrderSymbol () == Symbol () OrderType () == OP_SELLSTOP RiskManagement == true) {if (entry! = OrderOpenPrice ()) {OrderModify (OrderTicket (), entri, stoploss, takeprofit, 0,0); }} if (OrderSymbol () == Symbol () OrderType () == OP_SELLSTOP RiskManagement == false) {if (entry! = OrderOpenPrice ()) {OrderModify (OrderTicket (), entri, entri (StopLossPips * Point), entri - (TakeProfitPips * Point), 0,0); }

    Saya menemukan jawaban untuk kesalahan saya, ketika membandingkan ganda, yang terbaik adalah menggunakan lt; gt; bukannya! =.
    Orang-orang di forum MQL4 membantu saya mengatasi masalah ini.
    Terima kasih

  2. #2
    Periksa nilai variabel Anda selama program dijalankan.

  3. #3

    Quote Originally Posted by ;
    Periksa nilai variabel Anda selama program dijalankan.
    Saya melakukan itu dan ini adalah apa yang mengembalikan 10:53:11 2008.11.13 12:00 kerja181 GBPUSD, H4: 1.5494 10:53:11 2008.11.13 12:00 kerja181 GBPUSD, H4: 1.5494 10:53:11 2008.11 .13 12:00 kerja181 GBPUSD, H4: OrderModify error 1 1.5494 adalah entri dan openorderharga. fungsi saya di bawah ini: if (NormalizeDouble (entri, 4)! = OrderOpenPrice ()) {OrderModify (OrderTicket (), entri, stoploss, takeprofit, 0,0); masih mencapai pernyataan fungsi if pada setiap tick ketika seharusnya tidak karena kedua entry dan orderopenprice () persis sama. Saya tidak tahu mengapa melakukan ini.

  4. #4
    Saya tidak yakin bagaimana harga 'entri' dihitung, tetapi perluas lebih banyak desimal, lakukan hal yang sama untuk harga entri pesanan. Saya menduga akan ada perbedaan kecil di sana yang akan membutuhkan kedua nilai untuk dinormalisasi.

  5. #5
    Mengapa NormalizeDouble (entri, 4) ...? Mengapa tidak NormalizeDouble (entri, Digit) ...? Apakah Anda yakin itu akun 4 digit? Adapun variabel OrderOpenPrice (), saya akan menganggap itu ditentukan dalam Digit tetapi, saya bisa salah?

  6. #6

    Quote Originally Posted by ;
    Saya tidak yakin bagaimana harga 'entri' dihitung, tetapi perluas lebih banyak desimal, lakukan hal yang sama untuk harga entri pesanan. Saya menduga akan ada perbedaan kecil di sana yang akan membutuhkan kedua nilai untuk dinormalisasi.
    entri dan entri1 dihitung oleh beberapa ruangan. Saya tidak yakin mengapa ini tidak berhasil, jika Anda melihat kode di bawah ini. pesanan sellstop saya tidak mencapai fungsi cetak saat entri == orderopenprice (). lt; --- jadi ini berarti ia berfungsi dengan benar untuk perintah sellstop. ketika program mencapai pesanan buystop itu mencapai fungsi cetak bahkan ketika entri1 == orderopenprice (). lt; --- ini tidak berfungsi dengan benar. Kode yang dimasukkan # 91; color = # 0000ff # 93; int # 91;color # 93; totalorders = # 91; color = # 8a2be2 # 93; OrdersTotal # 91;color # 93; (); # 91; color = # 0000ff # 93; untuk # 91;color # 93; (# 91; color = # 0000ff # 93; int # 91;color # 93; i = totalorders- # 91; color = # 008000 # 93; 1 # 91;color # 93 ;; igt; = # 91; color = # 008000 # 93; 0 # 91;color # 93 ;; i--) {# 91; color = # 8a2be2 # 93 ; OrderSelect # 91;color # 93; (i, SELECT_BY_POS); # 91; color = # 0000ff # 93; jika # 91;color # 93; (OrderSymbol () == # 91; color = # 8a2be2 # 93; Symbol # 91;color # 93; () OrderType () == OP_SELLSTOP RiskManagement == true) {# 91; color = # 0000ff # 93; jika # 91;color # 93; (# 91; color = # 8a2be2 # 93; NormalizeDouble # 91;color # 93; (entri, # 91; color = # 008000 # 93; 4 # 91;color # 93! = OrderOpenPrice ()) { # 91; color = # 8a2be2 # 93; Cetak # 91;color # 93; (# 91; color = # 8a2be2 # 93; NormalizeDouble # 91;color # 93; (entri, # 91; warna = # 008000 # 93; 4 # 91;color # 93); # 91; color = # 8a2be2 # 93; Print # 91;color # 93; (OrderOpenPrice ()); OrderModify (OrderTicket (), entri, stoploss, takeprofit, # 91; color = # 008000 # 93; 0 # 91;color # 93;, # 91; warna = # 008000 # 93; 0 # 91;color # 93 ; }} # 91; color = # 0000ff # 93; jika # 91;color # 93; (OrderSymbol () == # 91; color = # 8a2be2 # 93; Symbol # 91;color # 93; () OrderType () == OP_SELLSTOP Manajemen Risiko == false) {# 91; warna = # 0000ff # 93; jika # 91;color # 93; (# 91; color = # 8a2be2 # 93; NormalizeDouble # 91;color # 93; (entri, # 91; color = # 008000 # 93; 4 # 91;color # 93! = OrderOpenPrice ()) { OrderModify (OrderTicket (), entri, entri (StopLossPips * # 91; warna = # 8a2be2 # 93; Poin # 91;warna # 93, entri- (TakeProfitPips * # 91; warna = # 8a2be2 # 93; Poin # 91;color # 93, # 91; color = # 008000 # 93; 0 # 91;color # 93;, # 91; color = # 008000 # 93; 0 # 91;color # 93; }} # 91; color = # 0000ff # 93; jika # 91;color # 93; (OrderSymbol () == # 91; color = # 8a2be2 # 93; Symbol # 91;color # 93; () OrderType () == OP_BUYSTOP RiskManagement == true) {# 91; color = # 0000ff # 93; jika # 91;color # 93; (# 91; color = # 8a2be2 # 93; NormalizeDouble # 91;color # 93; (entry1, # 91; color = # 008000 # 93; 4 # 91;color # 93! = OrderOpenPrice ()) { # 91; color = # 8a2be2 # 93; Cetak # 91;color # 93; (# 91; color = # 8a2be2 # 93; NormalizeDouble # 91;color # 93; (entri1, # 91; warna = # 008000 # 93; 4 # 91;color # 93); # 91; color = # 8a2be2 # 93; Print # 91;color # 93; (OrderOpenPrice ()); OrderModify (OrderTicket (), entri1, stoploss1, takeprofit1, # 91; warna = # 008000 # 93; 0 # 91;warna # 93;, # 91; warna = # 008000 # 93; 0 # 91;warna # 93 ; }} # 91; color = # 0000ff # 93; jika # 91;color # 93; (OrderSymbol () == # 91; color = # 8a2be2 # 93; Symbol # 91;color # 93; () OrderType () == OP_BUYSTOP Manajemen Risiko == false) {# 91; warna = # 0000ff # 93; jika # 91;color # 93;(# 91; color = # 8a2be2 # 93; NormalizeDouble # 91;color # 93; (entry1, # 91; color = # 008000 # 93; 4 # 91;color # 93! = OrderOpenPrice ()) { OrderModify (OrderTicket (), entri1, entri1- (StopLossPips * # 91; warna = # 8a2be2 # 93; Poin # 91;warna # 93, entri1 (TakeProfitPips * # 91; warna = # 8a2be2 # 93; Poin # 91;color # 93, # 91; color = # 008000 # 93; 0 # 91;color # 93;, # 91; color = # 008000 # 93; 0 # 91;color # 93; }}

  7. #7

    Quote Originally Posted by ;
    Mengapa NormalizeDouble (entri, 4) ...? Mengapa tidak NormalizeDouble (entri, Digit) ...? Apakah Anda yakin itu akun 4 digit? Adapun variabel OrderOpenPrice (), saya akan menganggap itu ditentukan dalam Digit tetapi, saya bisa salah?
    ini adalah akun 4 digit, jadi digit atau 4 keduanya harus berfungsi. Saya hanya mencoba program selama seminggu sekarang dan saya tidak akrab dengan semua fungsi yang berbeda yang tersedia.

  8. #8
    Oh, pada titik apa Anda mengatakan entri = OrderOpenPrice () ...? Karena begitu Anda melakukannya, maka keduanya harus tepat (atau, saya tidak pernah punya masalah di sini), dan seharusnya tidak perlu menormalkan itu. Dan, tentu saja begitu Anda melakukannya, ada peluang bagus bahwa mereka tidak lagi tepat, dan ini bisa menjadi penyebab kesalahan. Juga, ketika Anda menormalkannya, itu membulatkan angka ke atas atau ke bawah, dan jika variabel OrderOpenPrice () dilakukan lebih lanjut, maka Anda akan memiliki masalah.

  9. #9

    Quote Originally Posted by ;
    Oh, pada titik apa Anda mengatakan entri = OrderOpenPrice () ...? Karena begitu Anda melakukannya, maka keduanya harus tepat (atau, saya tidak pernah punya masalah di sini), dan seharusnya tidak perlu menormalkan itu. Dan, tentu saja begitu Anda melakukannya, maka mereka tidak akan tepat, dan ini bisa menjadi penyebab kesalahan.
    Maaf saya bisa melihat bagaimana kata-kata saya di posting terakhir bisa membingungkan. apa yang saya katakan adalah bahwa jika variabel entri saya sama dengan harga buka pesanan yang dipilih maka fungsi di bawah ini tidak boleh beralih ke pernyataannya. (betul ??) if (NormalizeDouble (entri, 4)! = OrderOpenPrice ()) Sekarang ini berfungsi dengan baik pada pesanan sellstop, namun ketika program mencapai pesanan buystop dengan fungsi yang sama persis dengan pengecualian variabel, yaitu diubah menjadi entry1, ia melihat apakah (NormalizeDouble (entry1,4)! = OrderOpenPrice ()) dan beralih ke pernyataan yang mengubah urutan pada setiap centang, karena bagian dari urutan yang diubah adalah entri1 dan entri1 sudah sama dengan dirinya sendiri mengembalikan kesalahan 1 harap ini masuk akal

  10. #10
    Mengapa Anda tidak mencoba saja ... if (entri! = OrderOpenPrice () ...? Jika seperti yang Anda katakan, keduanya adalah 4 digit, tidak perlu untuk menormalkannya. Atau, jika mereka bukan 4 digit (dan lebih besar), maka dengan mendeklarasikan entri = OrderOpenPrice () harus menutupinya. Tentu saja itu tidak berarti tidak ada contoh di mana Anda mungkin perlu menormalkan angka, tetapi tidak di sini saya tidak berpikir. Atau, mungkin Ronald benar, dan Anda harus melakukan sesuatu seperti ... if (NormalizeDouble (entry, 4)! = NormalizeDouble (OrderOpenPrice (), 4)) ...? Atau, mungkin lebih baik untuk melakukannya ke digit berikutnya jika , seperti katanya, ada variasi sedikit di antara keduanya.

Similar Threads

  1. Kesalahan Metatrade MT4?
    By Hans45 in forum Pembicaran Bitcoin dan Mata Uang Kripto
    Balasan: 3
    Postingan Terakhir: 03-09-2022 18:56, 06:56 PM
  2. Kesalahan Email
    By Hohyasochamok in forum Pendidikan Forex
    Balasan: 3
    Postingan Terakhir: 12-09-2021 15:43, 03:43 PM
  3. Log kesalahan MT4
    By Issi0004 in forum Pendidikan Forex
    Balasan: 4
    Postingan Terakhir: 11-17-2021 06:00, 06:00 AM
  4. Kesalahan DLL 126
    By jenwavi in forum Pembicaran Bitcoin dan Mata Uang Kripto
    Balasan: 1
    Postingan Terakhir: 06-17-2021 16:11, 04:11 PM
  5. Log kesalahan MT4
    By Issi0004 in forum Pembicaran Bitcoin dan Mata Uang Kripto
    Balasan: 4
    Postingan Terakhir: 05-17-2018 19:43, 07:43 PM

Izin Posting

  • Anda tidak boleh memposting thread baru
  • Anda tidak boleh memposting balasan
  • Anda tidak boleh memposting lampiran
  • Anda tidak boleh menyunting postingan Anda
  •  
  • Kode BB Aktif
  • Smilies Aktif
  • Kode [IMG] Aktif
  • Kode [VIDEO] Aktif
  • Kode HTML tidak aktif
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.