Sebarang petua untuk melaksanakan EA dengan pantas?
Halaman 1 daripada 1132 12 TerakhirTerakhir
Results 1 to 10 of 12

Thread: Sebarang petua untuk melaksanakan EA dengan pantas?

  1. #1
    Howdy,

    Saya tertanya-tanya sama ada sesiapa akan mempunyai keupayaan untuk memberikan beberapa petua atau cadangan untuk membuat kod anda berfungsi lebih pantas. Saya tidak cuba untuk membina HFT algo supaya pelaksanaan masa nyata adalah menengah (tetapi tentu saja selalu bonus). Sebaliknya, saya cuba mengurangkan masa penguji egi antara setiap pas.
    Ini mungkin mempunyai manfaat yang jelas untuk penggunaan masa apabila menjalankan pengoptimuman yang besar (kerana saya).

    Saya bekerja dalam persekitaran MetaTrader tetapi mengalu-alukan perbualan dengan mana-mana bahasa yang seseorang mungkin menggunakan.
    Saya mempunyai idea-idea ini yang telah kami laksanakan:

    MetaTrader 5 (64 bit dan menggunakan semua teras)
    CPU yang lebih kuat (dalam anggaran)
    Penggunaan Integer
    Pemrograman Berorientasikan Objek (Saya tidak 100% mengenai perkara ini tetapi nampaknya logik bahawa pelbagai jumlah yang lebih kecil .mqh dokumen akan menjadi lebih cepat daripada satu dokumen .mq5 gergasi - idea?)

    Petua lain?

    Terima kasih banyak!

  2. #2

    Quote Originally Posted by ;
    Pemrograman Berorientasikan Objek (Saya tidak 100% pada ini tetapi nampaknya logik bahawa sejumlah fail yang lebih kecil .mqh akan lebih cepat daripada satu fail .mq5 yang besar - idea?)
    Mungkin tidak. Itu bukan bagaimana komputer berfungsi ... Kod itu akan disusun lagi.

  3. #3
    Terima kasih atas penjelasannya.
    Saya tidak mempunyai latar belakang dalam komputer tetapi telah mengajar pengaturcaraan saya buat sementara waktu hari ini, jadi akan ada fasa besar pemahaman sains komputer saya menghadapinya. Maaf jika ini adalah kesilapan yang jelas. Mencari tabiat yang baik untuk dijemput, tidak sabar untuk mengetahui.

  4. #4
    Quote Originally Posted by ;
    Terima kasih kerana penjelasannya.
    bahawa saya tidak mempunyai latar belakang dalam komputer tetapi telah mengajar pengaturcaraan saya buat sementara waktu hari ini, jadi akan ada bab-bab besar pemahaman sains komputer peribadi saya yang menghadap. Maaf jika ini adalah kesilapan yang jelas. Mencari kebiasaan yang baik untuk dipilih, tidak sabar untuk mengetahui.
    Peningkatan tenaga pengiraan adalah langkah terakhir yang perlu anda ambil. Dalam mengoptimumkan pengiraan, pengiraan pengiraan sebenar datang. Anda dapat melihat kesan pengoptimuman algoritma dengan baik jika anda cuba mengira nombor Fibonacci iteratif vs rekursif. Salah satu daripada ini diperlukan. Editor mql45 mempunyai binaan dalam alat profil yang harus memberikan anda pemahaman asas mengenai bahagian algoritma yang memerlukan masa yang lama. Berapa kerapkah kod anda dilaksanakan? Adakah ia benar-benar penting bagi setiap tanda untuk meniru atau adakah cukup untuk menguji hanya pembukaan pub? Ini akan memberi anda pengurangan masa backtesting. Adakah terdapat sebahagian besar kod yang tidak perlu dilaksanakan berulang kali? Adakah anda akan mengarang sekiranya cek dan mengabaikan banyak pengiraan setiap kitaran? Pengoptimuman mikro (jika anda benar-benar mahukan yang boleh dilakukan mql4 bit terakhir) seperti pemetaan nilai yang sering digunakan dan bukannya mengira mereka berulang kali. Pemboleh ubah bersudut penambakan bersyarat. Saya fikir faktor tempatan agak lebih cepat dan juga antarabangsa. Jadi, anda dapat menyimpan sebilangan kecil seketika di sana. Menggunakan peralihan kecil dan bukan cawangan. Cuba untuk menghindari modulo dan sebagainya .... Walau bagaimanapun, ini adalah jenis yang berlebihan untuk anda yang saya rasa.

  5. #5
    Halo, Daripada apa yang saya tahu: MT5 multicore boleh baik-baik saja, tetapi anda perlu program begitu. Ini bermakna membahagikan kod anda dalam benang yang boleh dilaksanakan secara serentak. CPU yang lebih kuat, ya, yang akan mempercepatkan masa pelaksanaan anda, tetapi jika tempoh penghantaran anda (internet) lambat yang tidak masuk akal. Penggunaan integer? Saya tidak tahu ini, anda mahu menukar beregu kepada bilangan bulat dan sebaliknya? Tempoh penukaran akan membuat anda kehilangan keuntungan menggunakannya melainkan anda membuat pengiraan yang agak berat. OOP, tidak, yang membenarkan kod dekode sahaja, binary yang dihasilkan tidak lebih cepat daripada kod prosedur. Dan tempoh fail header atau mempunyai banyak fail header selain satu besar tidak ada hubungannya dengan kelajuan pelaksanaan. BT

  6. #6
    Quote Originally Posted by ;
    Terima kasih atas penjelasannya.
    bahawa saya tidak mempunyai latar belakang dalam komputer tetapi telah mengajar pengaturcaraan saya buat sementara waktu sekarang, jadi akan ada fasa besar pengetahuan sains komputer peribadi saya yang menghadap. Maaf jika ini adalah kesilapan jelas. Pada mencari kebiasaan yang baik untuk memilih, ingin mengetahui.
    Saya tidak tahu banyak tentang MQL, saya baru masuk ke dalamnya pada hujung minggu. Saya mempunyai banyak pengetahuan tentang bahasa lain. Masalahnya ialah: bahasa reka bentuk tidak dicipta untuk komputer, ia dibuat untuk manusia. Komputer membaca versi diterjemahkan - yang dihasilkan oleh pengkompil. Keluaran penyusun tidak mempunyai persamaan dengan apa yang anda lihat dalam editor anda. Pengkompil akan mengubah (Meningkatkan) banyak, seperti inlining kod yang kemudian akan menjadikan kod tersebut lebih besar daripada yang lebih kecil. Maklumat am: Jangan pergi ke pengoptimuman mikro sehingga kod anda benar-benar berfungsi. Ia adalah satu pembaziran masa. Mengatasi struktur keseluruhan program, logik dan pengiraan anda (sekiranya anda sangat bergantung kepada mereka). Hanya dengan melihat pembinaan EA sebagai contoh, agak jelas bahawa pengiraan banyak (tidak perlu) di OnTick () adalah idea yang buruk kerana rutin itu dipanggil sangat kerap.

  7. #7

    Quote Originally Posted by ;
    petikan Kuasa pengiraan yang semakin meningkat adalah langkah terakhir yang perlu anda ambil. Penurunan pengiraan sebenar datang dalam mengoptimumkan algoritma. Anda mungkin melihat kesan pengoptimuman algoritma dengan baik jika anda cuba mengira nombor Fibonacci iteratif vs rekursif. Salah satu daripada ini mengambil minit yang lain hanya miliseconds. Editor mql45 mempunyai alat terbina dalam yang harus memberi anda pemahaman asas mengenai bahagian algoritma yang memerlukan seketika. Berapa kerapkah kod anda dilaksanakan? Adakah ia benar-benar penting untuk setiap tanda ...
    Hi Kilian, Terima kasih atas balasannya. Iteratif vs Fibonacci rekursif: Tidak pernah mendengar tentang ini dan adalah sesuatu yang saya akan terus membaca. Menemui beberapa perkara pada stackoverflow. Alat pengedit editor Mql5: Bukan sesuatu yang saya gunakan sebelum ini, terdapat beberapa atan di dalamnya dan membaca tentangnya hari ini. Penyelesaian yang jelas, terima kasih! OnTick: Saya sangat memperhatikan dan cuba untuk mengekalkan sebahagian besar tugas OnBar tetapi ya salah satu daripada jenis transaksi adalah OnTick yang sedang memakan masa pemprosesan. Ini kelihatan seperti beberapa buah gantung rendah. Bahagian kod yang dieksekusi berulang-ulang kali? : Ini bukan bidang yang telah saya pertimbangkan dan akan menyelidikinya. Saya percaya anda betul ada beberapa kecekapan hebat yang ada di sini. Pengoptimuman mikro: Suka cadangan dan apabila saya sampai sejauh ini, saya pasti akan mencuba sesuatu (bagus untuk pembelajaran saya tidak kira). Sangat dihargai.

  8. #8

    Quote Originally Posted by ;
    Halo, Dari apa yang saya tahu: MT5 multicore mungkin baik-baik saja, tetapi anda perlu program begitu. Ini biasanya bermakna membahagikan kod anda dalam benang yang boleh dilaksanakan secara serentak. CPU yang lebih kuat, ya, yang boleh mempercepatkan masa pelaksanaan anda, tetapi jika tempoh penghantaran anda (bersih) lambat yang tidak masuk akal. Penggunaan integer? Saya tidak tahu ini, anda ingin menukarkan beregu kepada bilangan bulat dan sebaliknya? Tempoh penukaran akan membuat anda menghapuskan keuntungan menggunakannya jika anda tidak membuat pengiraan yang agak berat. OOP, tidak, yang membenarkan hanya menyusun semula ...
    Hei Broketrader, MT5 multicoreI tidak menyadari bahwa mungkin untuk memisahkan kode Anda ke berbagai thread seperti itu. Ini mungkin memberi impak. Pada masa ini anda mendapat kelebihan multicore apabila mengendalikan pengoptimal. (yang merupakan perbezaan epik berbanding mt4). CPU: Saya mempertimbangkan untuk mendapatkan mesin baru pada masa ini. Cip Haswell baru kelihatan cantik licin. Kelajuan sambungan internet bukan masalah. Saya hanya tertumpu pada pelaksanaan kod. Integers: Saya boleh benar-benar salah tetapi dengan pemahaman saya yang terbatas Integer adalah lebih mudah untuk mesin untuk dikira daripada mengatakan Dual. Cth. hanya berfungsi dalam pips atau _Points apabila mengira perkara seperti berhenti dan matlamat. Tidak menimbangkan untuk menukar bilangan bulat dan muncul kembali ke belakang. Int StopLoss = 300;/StopLoss di _Points tidak dapat dijalankan di mana-mana, di mana peluang itu muncul. Terima kasih kerana semua input anda sangat dihargai.

  9. #9

    Quote Originally Posted by ;
    sebut saya tidak tahu banyak tentang MQL, saya baru sampai pada hujung minggu. Saya mempunyai banyak pengetahuan tentang bahasa lain walaupun. Masalahnya ialah: bahasa reka bentuk tidak dibuat untuk komputer, ia dibuat untuk manusia. Komputer membaca versi diterjemahkan - yang dihasilkan oleh pengkompil. Keluaran penyusun tidak mempunyai persamaan dengan apa yang anda lihat dalam editor anda. Pengkompil akan mengubah (Meningkatkan) banyak, seperti inlining kod yang kemudiannya akan membuat kod lebih besar daripada lebih kecil. Nasihat umum: Jangan pergi ke blog mikro ...
    Terima kasih atas maklumat umum. Saya akan membuat benda tersebut. Mengatasi masalah yang lebih besar (struktur, pengiraan dan logik) dan kemudian berjalan ke tahap mikro. OnTick () kelihatan seperti tempat yang hebat untuk memulakan keuntungan yang mudah. Baru ke mql? Terbaik dalam perdagangan anda kepada anda! Sekiranya anda sudah biasa dengan pengaturcaraan secara amnya, anda perlu berpura-pura melalui mql dengan cepat. Mql4 pastinya rasa pemilihan, tetapi jika anda tahu perkara anda pergi terus ke mql5. Faedah dalam menganalisis makan apa-apa kelebihan yang dapat diberikan oleh mql4. Kuda tua yang penat dan semua orang terus menyerangnya.

  10. #10
    Saya melihat pengurus tugas windows, saya melihat mt4 hanya boleh menggunakan maksimum 25 CPU, maka, mt4 tersangkut. Cara untuk meningkatkan penggunaan% CPU untuk mt4 untuk mt4 menjalankan cepat, tidak tersangkut?

Kebenaran Posting

  • Anda tidak boleh menghantar thread baru
  • Anda tidak boleh membalas kiriman
  • Anda tidak boleh mengedit siaran anda
  • Anda tidak boleh menyiarkan lampiran
  •  
  • Kod BB Hidup
  • Smilies Hidup
  • Kod [IMG] adalah Hidup
  • Kod [VIDEO] adalah Hidup
  • Kod HTML Tidak Hidup
Polisi Kuki
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.