ONNX vs Python Socket vs DLL: Integrasi AI Terbaik untuk MT5?
Tiga jalur untuk menjalankan AI di dalam Expert Advisor MT5. Masing-masing memiliki trade-off nyata. Perbandingan ini praktis — bukan ‘mana yang lebih baik’, tapi ‘mana yang dipakai dalam situasi apa’.
Cara kerja setiap pendekatan
1. ONNX native (direkomendasikan 2026)
EA memanggil OnnxRun() langsung. Model di-embed atau di MQL5\Files. Inferensi di proses MT5 yang sama — tanpa jaringan, tanpa executable terpisah.
2. Python Socket
Anda buka server Python (Flask, FastAPI, TCP socket) menahan model. EA mengirim features via socket, server kembalikan prediksi. Perlu Python berjalan paralel.
3. DLL custom
Kompilasi DLL C++ dengan libtorch, tensorflow-c atau onnxruntime. Bekerja baik pra-2023, hari ini berlebihan di kebanyakan kasus.
Perbandingan head-to-head
| Aspek | ONNX | Socket | DLL |
|---|---|---|---|
| Latensi | Sebanding C++ | + overhead network | Native C++ |
| Setup | Sederhana | Menengah | Kompleks |
| Dependensi | Nol | Python + libs | C++ + libs |
| VPS friendly | Ya | Perlu resource lebih | Ya tapi sulit |
| Distribusi EA | 1 file .ex5 | EA + server | EA + DLL |
| Risiko rusak | Rendah | Tinggi (network) | Tinggi (ABI) |
| Kurva belajar | Rendah | Menengah | Tinggi (C++) |
Latensi — angka yang penting
Dokumentasi resmi mql5.com menyatakan MQL5 dengan ONNX “sebanding dengan aplikasi C++”. Angka di bawah adalah estimasi orde besaran — ukur di hardware Anda.
| Skenario | ONNX | Socket localhost | Socket VPS→cloud | DLL |
|---|---|---|---|---|
| Kecil (RF ~1 MB) | < 1 ms | ~5-15 ms | ~30-100 ms | < 1 ms |
| Menengah (LSTM ~10 MB) | ~2-5 ms | ~10-25 ms | ~50-150 ms | ~2-5 ms |
| Besar (Transformer ~100 MB) | ~20-80 ms | ~50-200 ms | ~200-500 ms | ~20-80 ms |
Kapan menggunakan masing-masing
Gunakan ONNX jika:
✓ EA self-contained · ✓ VPS dengan sedikit resource · ✓ Distribusi ke klien · ✓ Pemeliharaan minimal · ✓ Sudah pakai PyTorch/TF/Sklearn · ✓ Default sensible 2026
Gunakan Python Socket jika:
✓ Library Python tanpa export ONNX · ✓ Prototyping cepat · ✓ Sudah punya infra Python · ✓ Bagi model antar EA · ✓ Pre-processing Python berat (LLM, NLP)
Gunakan DLL custom jika:
✓ Sudah ahli C++ · ✓ Library spesifik tanpa ONNX · Selain itu: lewati DLL.
Workflow produksi yang direkomendasikan
- Prototyping di Python notebook
- Export ke ONNX (skl2onnx / torch.onnx.export)
- Validasi dengan onnxruntime di Python
- Embed sebagai #resource di EA MQL5
- Backtest di Strategy Tester
- Demo trade 30 hari
- Live dengan stake minimal
Kesimpulan jujur
🏆 Default 2026: ONNX. Untuk 90% kasus penggunaan AI dalam trading di MT5, ONNX native adalah pilihan jelas. Sederhana, cepat, robust, didukung resmi. Pakai socket untuk kasus di mana Python harus tetap hidup (LLM, RL online, prototyping) dan DLL hampir tidak pernah.
🚀 Untuk menguji EA dengan ONNX, demo gratis Deriv MT5 ($10.000 virtual):
