Memanggil perintah MT4 secara eksternal (misalnya dari C )
Halaman 1 dari 462 12 TerakhirTerakhir
Results 1 to 10 of 16

Thread: Memanggil perintah MT4 secara eksternal (misalnya dari C )

  1. #1
    Selamat Tahun Baru semuanya!

    Saya telah menulis setumpuk kode untuk mengotomatiskan elemen perdagangan saya. Saya ingin kode ini tetap independen dari platform perdagangan yang berinteraksi dengannya - terutama saya ingin menghindari keharusan menulis pembungkus untuk MQL4 atau bahasa pemrograman berpemilik setengah lainnya yang vendor platform perdagangan bersikeras untuk memproduksi. Akun saya tidak cukup besar untuk memiliki akses ke FIX API (yang sebenarnya cukup jelek). Saya juga melihat API JAVA FXCM dan Dukascopy tetapi ingin tetap bekerja dengan broker saya saat ini (untuk saat ini) yang saat ini hanya menawarkan MT4 untuk akun kecil seperti milik saya.

    Tujuan saya adalah memiliki antarmuka C/C untuk menjalankan perintah terminal MT4. Antarmuka seperti itu dapat dengan mudah dipanggil dari R, Python, dll.
    Pada dasarnya saya mencari fitur yang sama dengan aplikasi MAM/PAMM yang ditawarkan kepada pengelola uang tetapi pada level API tidak melalui GUI yang cantik.

    Adakah yang sudah melakukan ini atau menemukan alasan untuk tidak berhasil?

    Salam,

    sembilan puluh47

  2. #2
    Ini C , ini adalah tabel probabilitas permuasi yang 'dapat dikompilasi' menjadi mt4 menurut seseorang.

  3. #3

    Quote Originally Posted by ;
    Halo, bisakah Anda mencoba mengonversi kode c ini menjadi skrip atau indior? {mengajukan}
    Itu bukan indoor.

  4. #4
    1 Lampiran Halo, dapatkah Anda mencoba mengonversi kode c ini menjadi skrip atau indior?
    https://www.forexfabrikasi.com/attac...1546712634.txt

  5. #5
    Ini solusinya di Jawa:
    https://github.com/jseparovic/MQL4JavaTerima kasih kepada jseparovic.

  6. #6
    inilah solusi opensource di c #:
    https://github.com//MQL4CSharpIa menggunakan threading dan getter/setter sederhana untuk berkomunikasi. Kode C # diluncurkan di utasnya sendiri, dan dapat menjalankan perintah mql, dan menunggu hasilnya, sementara pakar mql mengumpulkan perintah, mem-parsingnya, mengeksekusinya, dan menetapkan hasilnya. parser perintah mql berjalan dalam metode onTimer yang diatur untuk mengeksekusi setiap milidetik.

  7. #7

    https://github.com/rmawatson/PyMT4Kode ini memungkinkan panggilan dari C , dan menyediakan binding untuk python. Itu bisa dibungkus dengan sepele untuk bahasa lain.

  8. #8
    Bagaimana kabarmu dengan ini? Saya telah mengintegrasikan ke dalam jfx api (yang sebenarnya cukup murah, dan cukup bagus), tetapi saya akan tertarik untuk melihat solusi agnostik bahasa untuk kemungkinan memindahkan kode saya ke nodejs, mungkin? Hmm menarik. Anda masih akan melihat membuka terminal.exe untuk setiap akun yang ingin Anda sambungkan, ya? Inilah yang dilakukan jfx. Ini mengontrol terminal di latar belakang, sehingga Anda dapat menjalankan solusi multi akun

  9. #9

    Quote Originally Posted by ;
    Hai, bagaimana tepatnya Anda menggunakan WM_COPYDATA?? Bisakah saya melihat kode Anda? Terima kasih
    Tentu. Contoh ahli salin info dasar (salinan kutu ke jendela jarak jauh): Kode yang Dimasukkan #property strict #define WM_COPYDATA 0x004A #define INFO 0x01 #define FindWindow FindWindowW #define SendMessage SendMessageW struct Copydatastruct { int dwData; int cbData; int lpData; }; struct Infostruct { MqlTick centang;* apapun info lainnya disini */}; #import user32.dll int FindWindow(string, int); int SendMessage(int, int, int, Copydatastruct); #import msvcrt.dll int memcpy(Copydatastruct, Copydatastruct, int); int memcpy(Infostruct, Infostruct, int); #import Infostruct info; Salin salinan struktur data; string sDispatch = jendelaku; int hwPengiriman = 0; batal OnTick() { hwDispatch = FindWindow(sDispatch, NULL); if(hwDispatch) { copy.dwData = INFO;/yaitu fungsi copy.cbData = sizeof(info);/byte untuk menyalin copy.lpData = memcpy(info, info, 0);/penunjuk ke data yang akan disalin SymbolInfoTick(Symbol(), info.tick); SendMessage(hwDispatch, WM_COPYDATA, NULL, salin); } } Di sisi penerima (jendela jarak jauh) di jendela prosedur Anda harus membaca data: Sakelar Kode yang Disisipkan (windowmessage) { case WM_COPYDATA: { COPYDATASTRUCT *copy = (COPYDATASTRUCT*) lParam; switch(copydwData) { case INFO: {Infostruct info; memcpy(info, copylpData, copycbData);/menyalin data untuk diproses lebih lanjut/yaitu melakukan sesuatu dengan pemutusan data; }/kasus lain ... } break; }/kasus lain }

  10. #10

    Quote Originally Posted by ;
    Saya pikir Anda tidak perlu polling. Dengan build saat ini, Anda dapat menggunakan objek peristiwa untuk memberi sinyal ketersediaan data. Dan dengan build beta (gt; 509) mereka telah mengimplementasikan pengendali peristiwa OnChartEvent, sehingga Anda dapat menggunakannya untuk mencentang pakar untuk memeriksa data dalam memori bersama dengan memposting pesan jendela ke jendela yang sesuai. Saya juga menggunakan WM_COPYDATA untuk mengekspor data tick bar dan laporan eksekusi dll.
    Hai, bagaimana tepatnya Anda menggunakan WM_COPYDATA?? Bisakah saya melihat kode Anda? Terima kasih

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.