En este artículo
Al terminar, sabrás…
- Relacionar operaciones con orden e identificador persistente.
- Declarar asignación analítica sin alterar historia oficial.
- Reconciliar realizado, flotante y costes a la misma valoración.
Conceptos sin salir del artículo
Expert Advisor (EA) Lote Comisión de negociaciónUna posición compartida no reparte resultados por robot
En una cuenta netting, dos EA y órdenes manuales pueden cambiar la misma posición del símbolo. Su resultado conjunto no identifica automáticamente cuánto corresponde a cada robot. Reconstruye las ejecuciones y después declara un método de atribución analítica. Dos convenciones pueden dar resultados diferentes por EA manteniendo el mismo total de cuenta; esa hoja no reemplaza el historial ni establece tratamiento fiscal.
MT5 distingue orden, ejecución y posición. Una orden puede producir varias ejecuciones y netting reúne su efecto actual por símbolo. Nombres distintos de programas no crean subcarteras independientes. Una salida manual puede reducir exposición construida por A y B, sin que su etiqueta diga qué compra anterior debes considerar cerrada en tu análisis.
Identificadores y origen antes de interpretar beneficios
DEAL_MAGIC recoge el magic de la ejecución y DEAL_REASON su origen o motivo: son propiedades diferentes. Magic cero por sí solo no acredita decisión manual. Conserva la correspondencia acordada entre programas e identificadores, sin inferirla de un comentario de salida. La guía de Expert Advisors aborda selección de posiciones; aquí reconstruimos el historial compartido.
Trata los números de tickets como identificadores, sin sumarlos como cantidades. Relaciona DEAL_ORDER con la orden y DEAL_POSITION_ID con el ciclo. POSITION_IDENTIFIER enlaza historia; POSITION_TICKET puede cambiar por operaciones de servicio del servidor. Guarda símbolo, dirección, cantidad, precio efectivamente ejecutado y marca temporal. Una solicitud de volumen no sustituye la cantidad realmente realizada.
HistorySelectByPosition recupera órdenes y operaciones mediante identificador de posición. Comprueba éxito y cobertura del resultado; una lista visible no acredita todos los registros necesarios. Conserva el original antes de añadir interpretación. Separa operaciones de balance y cargos, incorporando comisión, tarifas, financiación y resultado en la divisa correspondiente. Si exportas horas a Europe/Madrid, conserva fecha y reloj originales para no alterar la secuencia.
Cuatro ejecuciones completas en un ciclo ficticio
Contrato lineal EUR/USD supuesto de 100.000 EUR por lote, cuenta USD y ninguna posición inicial. Las compras se ejecutan al Ask asignado y las ventas al Bid asignado. Cuatro ejecuciones ocurren íntegramente en el orden indicado; cada una tiene comisión 1 USD y financiación y otras tarifas cero. Los precios ya contienen la diferencia de lados: no restes spread otra vez.
| Operación/orden | Origen | Ejecución | Posición posterior |
|---|---|---|---|
| 7001/5001 | EA A | Compra 0,10 a 1,1000 | Larga 0,10 |
| 7002/5002 | EA B | Compra 0,10 a 1,1020 | Larga 0,20 |
| 7003/5003 | Salida manual | Venta 0,10 a 1,1010 | Larga 0,10 |
| 7004/5004 | Salida manual | Venta 0,10 a 1,1030 | Sin posición |
Todo pertenece al ciclo POSITION_IDENTIFIER=5001. Tras la segunda compra, entrada media 1,1010. La primera reducción a ese precio realiza 0 USD de precio; la segunda realiza 20 USD. Con cuatro comisiones, el ciclo cerrado suma 20−4=16 USD netos. Son supuestos educativos, no extracto de una cuenta real.
FIFO y LIFO analíticos mantienen el total
En FIFO asignamos la primera salida a la cantidad más antigua, A: 10.000×(1,1010−1,1000)=10 USD. La segunda se asigna a B: 10.000×(1,1030−1,1020)=10 USD. Reparte a cada EA su comisión de entrada y la de salida de su cantidad: A obtiene 8 USD y B 8 USD.
En LIFO asignamos primero la cantidad más reciente: B pierde 10 USD de precio en 7003 y A gana 30 USD en 7004. Después de dos cargos por cada asignación, B obtiene −12 USD y A +28 USD. La suma sigue siendo 16 USD. No son dos métodos alternativos del servidor ni una norma fiscal universal. Define criterio antes de evaluar y no lo cambies silenciosamente cuando un reparto favorezca a tu robot.
FIFO 8+8 y LIFO 28−12 concuerdan con 16 USD; son convenciones de análisis, no dos historias del servidor.
- Total de cuenta
- 16 USD netos – 20 USD de precio menos cuatro cargos de 1 USD.
- FIFO analítico
- A: +8 · B: +8 USD – Cantidad más antigua primero.
- LIFO analítico
- A: +28 · B: −12 USD – Cantidad más reciente primero.
- Conversión adicional
- 14,40 EUR conjuntos – Tipo fijo ficticio de 0,90 EUR por USD para traducir importes.
Ejercicio adicional a conversión fija asignada de 0,90 EUR por USD: el ciclo neto equivale a 14,40 EUR. FIFO reparte 7,20 y 7,20; LIFO, 25,20 para A y −10,80 para B. Ambos suman 14,40. La conversión uniforme no selecciona un método ni demuestra mejor estrategia; tampoco modela cargos reales de cambio. La diferencia entre resultados por robot proviene de la convención, no de una nueva ejecución.
Mientras queda exposición, compara realizado y flotante
Después de 7003 asigna Bid actual 1,1010. La posición neta compartida muestra 0 USD realizados y 0 flotantes de precio. FIFO analítico muestra +10 USD realizados para A y −10 flotantes de la cantidad restante de B. Su suma es 0, coincidiendo con la vista conjunta. Comparar solo lo realizado analítico con el campo del servidor mientras sigue abierto el ciclo produciría una discrepancia aparente.
Tras tres ejecuciones hay 3 USD de comisión. Ambas representaciones tienen resultado conjunto −3 USD a ese precio, o −2,70 EUR en el ejercicio de conversión fijo. Después de 7004 ya no queda valoración abierta y el reparto completo suma 16 USD. La guía de resultado flotante y realizado explica esas medidas. Coincidir en el total no acredita que cualquier convención sea apropiada para cualquier finalidad.
En historia real pueden aparecer parciales, inversiones, correcciones y cargos separados. Si falta una entrada, deja sin resolver la asignación afectada y explica qué falta. No inventes precio u origen para forzar el cuadre. Mantén método consistente entre ciclos y etiqueta cambios de metodología. Los límites de cuenta y robots siguen actuando sobre exposición compartida real, con independencia del reparto elegido en la hoja.
Tres acciones antes de evaluar varios EA
- Selecciona un ciclo cerrado del mismo símbolo ya disponible y conserva su exportación original. Relaciona operaciones, órdenes e identificador, cantidades y cargos; no abras operaciones reales para fabricar un ejemplo ni confundas pendientes actuales con historia.
- Declara asignación de cantidades y costes antes de calcular. Usa columnas separadas para origen de la instrucción y propietario analítico; reproduce FIFO 8/8 y LIFO 28/−12 con las cuatro ejecuciones, marcando toda ausencia sin completarla por comentarios.
- Reconcilia total cerrado con historial y cargos. Si el ciclo sigue abierto, compara realizado más flotante a la misma valoración: 10−10−3=−3 USD tras 7003. Conserva ambas vistas en el diario y trata la atribución como análisis, sin promesa de rentabilidad ni sustitución de registros oficiales.
Comprueba lo aprendido
Aprox. 2 minutos de práctica.
Ver respuesta y explicación
Correcto: 10−10−3; concuerda con precio conjunto cero menos costes.
Más preguntas
¿El magic del cierre identifica al EA que ganó el beneficio?
Es insuficiente. Ayuda a investigar la instrucción, pero una reducción manual puede afectar una posición construida por varios programas. Relaciona operaciones, órdenes e identificador y reconstruye las entradas. Asignar cantidad de salida a A o B exige una convención explícita. No relabeles la salida manual como instrucción del robot. Mantén origen de ejecución y propietario analítico en columnas separadas y documenta cómo repartes los costes.
¿FIFO del ejemplo es contabilidad del servidor o regla fiscal?
Aquí FIFO y LIFO son convenciones analíticas de cantidades. No describen dos métodos alternativos de MT5 ni una regla universal de impuestos. Conserva historial original separado y revela el método usado al comparar EA. Para obligaciones de información necesitas registros y reglas de la jurisdicción aplicable. Que ambos repartos sumen 16 USD no hace adecuada cualquier atribución para cualquier propósito ni convierte la hoja adicional en historial oficial.
¿Por qué lo realizado difiere después de la primera salida?
El promedio compartido es 1,1010 y 7003 sale a ese precio: resultado realizado de precio cero. FIFO asigna la salida a A desde 1,1000 y muestra +10 USD, pero simultáneamente quedan −10 USD flotantes en B a esa valoración. Precio combinado cero; tras tres comisiones resulta −3 USD. Compara realizado más flotante al mismo precio en vez de un solo componente. Al cerrar el ciclo desaparece el flotante y ambos repartos completos concuerdan.
¿Puedo completar una entrada ausente con el comentario del cierre?
Un comentario no justifica inventar ejecución, precio u origen. Deja esa asignación sin resolver y comprueba rango recuperado, enlaces de orden e identificador y cantidades parciales reales. Reconcilia cargos y movimientos de balance por separado. Una tabla que fuerza coincidencia con una entrada supuesta puede parecer precisa mientras atribuye un beneficio sin evidencia. Conservar la ausencia permite pedir el dato que falta y evita evaluar al EA con un resultado fabricado.
Fuentes y comprobación
- MT5: orden, ejecución y posición
Distinciones ynetting consultadas en artículos anteriores del trabajoES; no se crean subcarteras por nombre deEA.
- MQL5: propiedades de operaciones
Tabla 53–88 yDEAL_REASON142–149 leídas: enlaces,magic,motivo,cantidad/precio/costes.
- MQL5: identificador yticket
Tabla 59–79 leída: identificador persistente yticket modificable. No se adopta generalización introductoria 53fuera netting.
- MQL5: seleccionar historia de posición
Apartados78–98 leídos: identificador, retorno de éxito y listas distintas de pendientes actuales.
Los cálculos utilizan supuestos explícitos. No sustituyen los datos actuales de mercado ni las condiciones de tu proveedor.
