Discusión sobre el artículo "Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta"
Elprecio de apertura se normaliza por Dígitos por alguna razón.
La comisión se calcula con un error y lentamente: se normaliza y se duplica en cada paso del ciclo.
Elprecio de apertura está normalizado por Digits por alguna razón.
La comisión se calcula con un error y lentamente: se normaliza y se duplica en cada paso del ciclo.
Gracias por su opinión.
He comprobado el código relativo a la normalización. Sólo hay dos casos en la clase CHedgePositionInfo: comisión y margen. Los precios permanecen sin normalizar. El precio de apertura, según tengo entendido, se normaliza implícitamente para la impresión en el script de prueba Test_hedge_properties.mq5.
Luego sobre la comisión. ¿La has comparado con los registros de la pestaña "Historial"? Allí, para cada operación, el valor de la comisión se normaliza con una precisión de 2. Y la duplicación tiene en cuenta el momento de la salida(DEAL_ENTRY_OUT). Es decir, el Panel refleja la comisión para el ciclo completo - apertura y cierre. Hay una mención al respecto en el artículo.
Gracias por su opinión.
He comprobado el código relativo a la normalización. Sólo hay dos casos en la clase CHedgePositionInfo: comisión y margen. Los precios permanecen sin normalizar. El precio de apertura, según tengo entendido, se normaliza implícitamente para la impresión en el script de prueba Test_hedge_properties.mq5.
Sí, se trataba de la impresión.
Luego sobre la comisión. ¿La has comparado con los registros de la pestaña "Historial"? Allí, para cada operación, el valor de la comisión se normaliza al 2 más próximo. Y la duplicación se realiza teniendo en cuenta el momento de la salida(DEAL_ENTRY_OUT). Es decir, el Panel refleja la comisión del ciclo completo: apertura y cierre. Hay una mención de esto en el artículo.
No, yo estaba juzgando por el código. Abre una posición y luego cierra una parte de ella. Según su código, la comisión de la posición actual no cambiará.
Además, doblar es una buena intención que crea un problema. El punto es que usted necesita que el Balance sea igual a Equity + PositionCommission después de cerrar todas las posiciones. Pero entonces no debería haber duplicación, porque MT5 ya ha reflejado la comisión de apertura en el balance al abrir posiciones.
Y es muy costoso realizar la normalización en cada paso del ciclo al calcular la comisión. Es importante a la hora de optimizar.
...No, a juzgar por el código. Abre una posición y luego cierra parte de ella. Según su código la comisión de la posición actual no cambiará.
Además, doblar es una buena intención que crea un problema. El punto es que usted necesita que el Balance sea igual a Equity + PositionCommission después de cerrar todas las posiciones. Pero entonces no debería haber duplicación, porque MT5 ya ha reflejado la comisión de apertura en el balance al abrir posiciones.
Sí, no cambiará. El objetivo era mostrar la comisión máxima que pagamos en total por la cobertura actual. Y, además, ya hemos pagado parte de ella, y pagaremos la segunda parte más adelante. Pero hay matices.
Por ejemplo, existe un tipo de operación llamada DEAL_ENTRY_OUT_BY. No tiene comisión alguna, al menos con mi broker. La comisión también puede cambiar (entrada y salida puede costar diferente) si la moneda de la cuenta no coincide con la moneda base. Así que mi ejemplo está lejos de ser ideal....
¿Qué te hace pensar que lo necesito? Acabo de mostrar una de las formas de calcular gastos generales como la comisión.
Pues bien, al calcular la comisión es muy costoso normalizar en cada paso del bucle. Es importante en la optimización.
Excepto para la optimización. Bueno, nadie te impide hacer tus propios cambios y tenerlos en cuenta en el código.
Sí, no cambiará. El objetivo era mostrar el importe máximo de comisión que pagamos en total por la cobertura actual. Y, además, ya hemos pagado parte de ella, y pagaremos la segunda parte más adelante. Pero hay matices.
Por ejemplo, existe un tipo de operación llamada DEAL_ENTRY_OUT_BY. No tiene ningún tipo de comisión, al menos con mi broker.
CloseBy no está sujeto a comisión por definición.
La comisión también puede cambiar (entrada y salida puede costar diferente) si la moneda de la cuenta no es la misma que la moneda base. Así que mi ejemplo está lejos de ser perfecto....
¿Qué te hace pensar que lo necesito? Acabo de mostrar una de las formas de calcular tales gastos generales como la comisión.
Porque en el lenguaje de MT4 Equidad = Balance + Ganancia + Swap + Comisión. Esta es la lógica más común. Pero, por supuesto, usted puede tener su propia.
Excepto para la optimización. Bueno, nadie te impide hacer tus propios cambios y tenerlos en cuenta en el código.
Los desarrolladores están tratando de hacer el Optimizador más rápido. Pero el código lento está permitido en Artículos. Parece extraño.
Porque en el lenguaje de la misma MT4 Equidad = Balance + Ganancia + Swap + Comisión. Esta es la lógica más común. Pero por supuesto puedes tener tu propia lógica.
No me vas a creer, yo pienso lo mismo sobre la equidad :-))))
Voy a hacer una elección para el método de comisión, cómo contar. Hacer cambios en el código...
...Los desarrolladores hablan de hacer el Optimizador más rápido. Pero en Artículos permiten código lento. Se ve raro.
En lenguaje diplomático. ¿Sigues hirviendo? - Llevo mucho tiempo probando todo en la nube y no me preocupa que haya normalizaciones innecesarias y macros multilínea en alguna parte...
Llevo mucho tiempo probando todo en la nube y no me preocupa que en algún lugar haya normalizaciones innecesarias y no haya macros multilínea...
Parece ser una tendencia de larga data para reemplazar incluso la optimización algorítmica más simple con el poder de hardware. Yo no puedo hacer eso.
Al parecer, incluso la optimización algorítmica más sencilla está siendo sustituida por la potencia del hardware, una tendencia establecida desde hace tiempo. No puedo hacerlo.
La generación del gigahercio y el gigabyte.
Hola,
Cuando me descargué el zip y lo extraje y los abrí en el editor, al compilarlos me dieron un montón de errores.
¿Hay algo que pueda utilizar?
Saludos
Si sigues mi camino no habrá errores. La manera es simple. Abre tu MetaEditor y:
1) crea una subcarpeta "Hedge" en la carpeta "Shared Projects";
2) coloca los archivos fuente en la subcarpeta.

Luego puedes compilar HedgePropertiesEA.mq5 (un asesor experto) y Test_hedge_properties.mq5 (un script). Una vez finalizada la compilación con éxito, encontrarás los ejecutables en el navegador del terminal.

- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
Artículo publicado Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta:
La plataforma MetaTrader 5 no es solo una plataforma multimercado, sino que también permite usar diferentes sistemas de registro de posiciones. Estas posibilidades amplian considerablemente el instrumental para la implementación y formalización de las ideas comerciales. En el artículo, vamos a hablar sobre cómo procesar y considerar las propiedades de las posiciones al llevar su registro de forma independiente ("cobertura"). Así, en el artículo proponemos una clase derivada, mostrando a continuación ejemplos de procesamiento y obtención de las propiedades de la posición de cobertura.
Un ejemplar de la clase en el código del asesor llamará y procesará los eventos de inicialización y desinicialización, los eventos del gráfico y los eventos relacionados con las transacciones comerciales.
El panel de propiedades de la posición de cobertura se representa en la Fig.4.
Fig.4 Panel de propiedades de la posición de cobertura
Autor: Denis Kirichenko