Pada akun netting, dua robot dan order manual dapat mengubah satu posisi bersama. Hasil posisi tidak otomatis mengidentifikasi hasil setiap robot. Susun kembali fill beserta hubungannya, lalu pilih konvensi alokasi analitis yang eksplisit. Contoh berikut memberi hasil EA berbeda pada dua konvensi, sementara hasil gabungan akun sama. Alokasi ini untuk analisis; tidak menggantikan riwayat broker atau menetapkan perlakuan pembukuan pajak.

Mengapa magic number tidak membagi posisi bersama?

MT5 netting mempertahankan satu posisi per simbol; jumlahnya dapat berubah melalui fill berikutnya. Satu order juga dapat menghasilkan beberapa deal, yaitu catatan eksekusi. Panduan prinsip platform membedakan order, deal dan posisi. Nama program berbeda tidak menciptakan portofolio terpisah di dalam satu posisi bersama.

DEAL_MAGIC menunjukkan magic number eksekusi, sedangkan DEAL_REASON menunjukkan sumber atau sebabnya. Keduanya properti berbeda. Dokumentasi deal juga menyediakan nomor order, identitas posisi dan timestamp. Magic nol saja belum membuktikan keputusan manual. Simpan catatan terkait dan pemetaan nama program ke identitas yang telah disepakati.

Penutupan manual dapat mengurangi eksposur yang dibangun A serta B. Label deal keluar tidak menentukan jumlah awal mana yang dianggap ditutup. Itu memerlukan aturan analitis tersendiri. Panduan EA membahas pemilihan posisi; pembahasan ini merekonstruksi riwayat posisi bersama, bukan membuat akun baru untuk setiap robot.

Bagaimana menghubungkan deal, order dan posisi?

Simpan nomor sebagai identitas, bukan besaran untuk aritmetika. Hubungkan DEAL_ORDER ke order dan DEAL_POSITION_ID ke siklus posisi. POSITION_IDENTIFIER menghubungkan riwayat; POSITION_TICKET saat ini dapat berubah karena operasi layanan server. Simpan simbol, arah, jumlah, harga fill serta timestamp setiap eksekusi aktual.

HistorySelectByPosition memilih riwayat order dan deal memakai identitas posisi. Periksa hasil keberhasilan fungsi serta kelengkapan ekspor yang dimaksud. Daftar yang terlihat pada satu jendela terminal belum tentu mencakup semua catatan yang dibutuhkan. Jangan memberi pemilik EA pada entry hilang hanya dari komentar penutupan. Simpan catatan asli sebelum menambahkan interpretasi.

Masukkan komisi, fee, pembiayaan serta hasil dalam mata uang akun. Pisahkan operasi saldo dari eksekusi buy/sell. Untuk order terpecah, catat jumlah serta harga setiap fill parsial; jumlah permintaan tidak menggantikan jumlah terisi. Artikel MQL5 mengembangkan penanganan kejadian eksekusi serta identitas. Input di sini adalah riwayat yang sudah dicocokkan, bukan instruksi pengajuan order.

Bagaimana satu akun memberi dua hasil EA berbeda?

Model rekaan: dua pembelian dan dua penutupan manual

Kontrak linear EUR/USD bernilai 100.000 EUR per lot, akun USD, tanpa posisi awal. Semua harga berikut merupakan fill: buy pada Ask asumsi, sell pada Bid. Empat deal terisi penuh menurut urutan tabel. Masing-masing dikenai komisi 1 USD, fee serta swap nol. Jangan mengurangi spread yang sudah tercermin pada harga fill untuk kedua kalinya.

Riwayat model, bukan hasil akun live
Deal / orderSumberEksekusiPosisi setelahnya
7001 / 5001EA ABuy 0,10 pada 1.1000Long 0,10
7002 / 5002EA BBuy 0,10 pada 1.1020Long 0,20
7003 / 5003Penutupan manualSell 0,10 pada 1.1010Long 0,10
7004 / 5004Penutupan manualSell 0,10 pada 1.1030Tidak ada posisi

Harga rata-rata pembelian bersama setelah fill kedua ialah 1.1010. Pada model, pengurangan pertama merealisasikan P/L harga 0 USD dan pengurangan kedua 20 USD. Setelah empat komisi: 20 − 4 = 16 USD neto. Ini rekonsiliasi seluruh siklus yang ditutup, bukan pengamatan transaksi nyata. Semua nilai ditetapkan sebagai asumsi, bukan data pasar.

FIFO analitis menutup jumlah tertua dahulu. Alokasikan keluar 7003 kepada A: 10.000 × (1.1010 − 1.1000) = 10 USD. Keluar 7004 dialokasikan kepada B: 10.000 × (1.1030 − 1.1020) = 10 USD. Tiap EA mendapat komisi entry serta komisi keluar bagi jumlahnya. Hasil A 8 USD dan B 8 USD.

LIFO analitis menutup jumlah terbaru dahulu. B mendapat P/L harga −10 USD dari 7003 dan A 30 USD dari 7004. Setelah biaya, B −12 USD dan A 28 USD; jumlah tetap 16 USD. FIFO serta LIFO di sini konvensi alokasi analitis, bukan dua cara pembukuan server MT5 atau aturan pajak universal. Jangan diam-diam mengganti konvensi saat menilai robot.

Total akun sama, alokasi berbeda

Total akun sama, alokasi berbedaSiklus tertutup mempunyai P/L harga 20 USD, komisi 4 USD dan neto 16 USD. FIFO: A 8, B 8. LIFO: A 28, B minus 12. Konvensi analitis tidak menggantikan riwayat server.Total akun sama, alokasi berbedaAkun bersama: P/L harga 20 USD − komisi 4 USD = 16 USD.FIFO: jumlah tertuaA: +8 USDB: +8 USD8 + 8 = 16 USDLIFO: jumlah terbaruA: +28 USDB: −12 USD28 − 12 = 16 USDModel rekaan · empat fill · posisi ditutup penuh
Kedua konvensi merekonsiliasi 16 USD pada siklus tertutup tetapi hasil tiap EA berbeda. Ini alokasi analitis, bukan dua metode pembukuan server.

Hasil gabungan sama, pembagian berbedaModel empat fill, komisi total 4 USD dan siklus ditutup penuh; FIFO/LIFO hanya aturan analitis.PERHITUNGAN HIPOTETISAkun bersama20 − 4 = 16 USDFIFO analitisA 8 · B 8 USDLIFO analitisA 28 · B −12 USD
Hasil gabungan sama, pembagian berbeda. Model empat fill, komisi total 4 USD dan siklus ditutup penuh; FIFO/LIFO hanya aturan analitis.

Jumlah yang cocok belum menetapkan aturan alokasi paling sesuai.

Pada layar kecil, gulir diagram mendatar atau perbesar. Nilai dan kesimpulan juga tersedia dalam teks di bawah.

Akun bersama
20 − 4 = 16 USD – Cocokkan harga fill dan semua biaya.
FIFO analitis
A 8 · B 8 USD – Jumlah tertua dialokasikan keluar dahulu.
LIFO analitis
A 28 · B −12 USD – Jumlah terbaru dialokasikan keluar dahulu.

Pemeriksaan tambahan: kelompok sumber belum sama dengan hasil strategi

Jika empat deal rekaan yang sama hanya dikelompokkan menurut sumber instruksi pada tabel, kelompok EA A memuat komisi entry −1 USD, EA B juga −1 USD, dan dua penutupan manual memuat P/L harga 20 dikurangi dua komisi, yaitu 18 USD. Jumlah −1 − 1 + 18 = 16 USD tetap cocok.

Itu menjelaskan siapa mengirim instruksi dalam model, belum menjawab strategi mana memperoleh hasilnya. Jangan menyimpulkan kedua EA rugi dan manual menghasilkan seluruh keunggulan. Pengelompokan ini bukan konvensi alokasi kuantitas ketiga; kolom sumber dan kolom pemilik analitis menjawab pertanyaan berbeda. Tidak diperlukan asumsi bahwa magic manual pasti nol.

Mengapa P/L terealisasi berbeda setelah keluar pertama?

Sesudah 7003, tetapkan Bid saat ini 1.1010. Posisi netting bersama mempunyai P/L harga terealisasi 0 USD serta mengambang 0 USD. FIFO analitis merealisasikan 10 USD untuk A, tetapi jumlah B yang tersisa memiliki rugi mengambang 10 USD. Gabungannya 10 − 10 = 0 USD. Membandingkan hasil terealisasi analitis saja dengan kolom terealisasi server tidak tepat selama posisi masih terbuka.

Setelah tiga fill, komisi total 3 USD. Kedua representasi memberi hasil gabungan −3 USD pada harga itu. Ketika 7004 menutup seluruh siklus, P/L mengambang hilang dan total alokasi 16 USD. P/L mengambang dan terealisasi perlu dibandingkan pada penilaian sama. Kesamaan jumlah tidak memilih konvensi yang lebih sesuai bagi tujuan analisis Anda.

Riwayat nyata dapat memuat fill parsial, pembalikan, koreksi atau biaya yang dicatat terpisah. Jika satu catatan hilang, biarkan alokasi terkait belum terselesaikan serta tulis alasannya. Jangan mengarang harga entry atau sumber instruksi supaya jumlah cocok. Pakai konvensi konsisten antar-siklus; beri label perubahan metode bila konvensi berubah. Kontrol akun serta batas tiap robot tetap harus memperhitungkan eksposur bersama yang nyata.

Langkah sebelum menilai dua robot

  1. Pilih satu siklus tertutup pada satu simbol. Simpan ekspor asli, hubungkan deal dengan order serta identitas posisi, lalu cocokkan kuantitas dan seluruh biaya. Jangan membuka transaksi live baru hanya untuk membuat contoh analisis.
  2. Tentukan konvensi kuantitas serta biaya sebelum menghitung hasil. Pisahkan sumber instruksi dari pemilik analitis jumlah. Biarkan bukti hilang belum terselesaikan; magic penutupan bukan uraian lengkap entry sebelumnya.
  3. Cocokkan hasil gabungan dengan riwayat. Untuk siklus terbuka, jumlahkan P/L terealisasi serta mengambang pada harga sama. Simpan kedua pandangan dalam jurnal. Alokasi menganalisis perilaku, bukan menetapkan keuntungan masa depan.