PDA

View Full Version : Bagaimana untuk menutup fungsi dalam EA



Kaflsekufa
05-07-2010 00:04, 12:04 AM
Hai, saya masih baru untuk pengaturcaraan MQL4, Saya menggunakan fungsi iCustom () dan ia telah dimulakan pada permulaan kod saya. . Sekarang jika ia menerima inisial, bagaimana saya boleh deinitialise tanpa perlu memulakan semula EA saya ...

Saya perlu melakukan ini kerana setiap kali ia banyak (dengan setiap semak) ia telah disimpan dalam ingatan dan tidak kira berapa banyak memori yang anda miliki ini pada akhirnya akan habis dan anda terjebak dengan ralat:

Pengendali ingatan: tidak dapat menumpukan 630892 bait ingatan

sebarang idea bagaimana untuk mengatasinya?

Terima kasih banyak!

danixdd
01-30-2022 17:32, 05:32 PM
Anda hanya boleh memperoleh nilai, tidak pernah memanggilnya dari EA yang saya telah memberitahu anda untuk menggunakan faktor untuk memperoleh nilai tertentu daripada tujuan Dicetikan Kod dual whatever_it_is = iCustom (parameter)

Suaveseda
01-30-2022 18:53, 06:53 PM
Nampaknya anda berada dalam keadaan yang jahat. Anda boleh melihat penyusunan semula kod anda supaya iCustom tidak dipanggil untuk setiap tanda tunggal. Jika itu tidak mungkin, maka anda perlu memasukkan kod penunjuk itu.

Kayeah
01-30-2022 20:14, 08:14 PM
1 Lampiran hey xlr8er .... Kami ada pepatah di sini yang mungkin anda dapati menarik .... apa yang berlaku di vegas tinggal di vegas .... Begitu juga, apa yang diinisialisasikan dalam init tetap di dalam init .... Sekiranya anda memasukkan nilai dalam seksyen init dan tidak menetapkan semula pada fungsi permulaan, ia menyimpan nilai permulaan yang pertama .... Lihatlah kod itu .... Perlahan-lahan menjalankan backtest visual dan perhatikan komen .... Kedua-dua makdai dan minta pembolehubah berubah .... Kedua-dua initask dan initmacd, yang telah ditugaskan di jabatan init menyimpan nilai pertama mereka ..../- kita benar-benar hanya membayangkan tanpa maklumat yang lebih spesifik .... Dan itulah tekaan saya yang terbaik dalam penyelesaian .... Menetapkan pemboleh ubah yang custom dalam bahagian init hanya ... h
https://www.justgetforex.com/attachments/151895136636562454.mq4

AlrusD
01-30-2022 21:35, 09:35 PM
Saya benar-benar percaya premis anda tidak tepat. (Luar) Kod fungsi telah dimuat sekali pada panggilan pertama, maka ia tetap dalam memori dan tidak dimuat semula lagi. Ia mungkin akan hilang, tetapi ini adalah dari tangan anda. Sekiranya anda kehabisan memori, kemungkinan besar terdapat masalah yang berbeza. Memproses tick-by-tick adalah pembaziran CPU melainkan jika perlu, tetapi ini adalah masalah yang berasingan.