Errores, fallos, preguntas - página 410

 
papaklass:
Puede seguir los pedidos pendientes utilizando la función OrdersTotal(). Compara su valor actual con el anterior. Si quiere evitar las órdenes pendientes múltiples, utilice la bandera para establecer una orden. Si esta bandera == true, significa que ya se ha establecido una orden. Restablece esta bandera cuando se activa la orden, es decir, OrdersTotal() cambiará.

Afortunadamente, hace un año pasé por estos fundamentos. Utilicé los artículos dedicados a las habilidades iniciales de trabajo en MQL5. El Campeonato se confirma: este esquema es bueno para la formación, pero no para el comercio diario. Los artículos de Roche ponen los puntos sobre las íes.

Y esta no es la cuestión de cómo comprobar el estado del pedido. La cuestión es que los parámetros comerciales que he descrito anteriormente pueden simplificar en gran medida el trabajo con las órdenes y las posiciones. Desde el punto de vista de un usuario individual (es decir, yo), la pregunta"¿Qué debo hacer? Desconocido", así como trabajar con las órdenes punto por punto en lugar de a través del grupo "símbolo - OrdersTotal()".

papaklass:
Todo lo que necesitas saber es el símbolo en el que se produjo este evento.

La cuestión es que si dejamos de lado los paradigmas de formación, es más importante conocer el ticket de la orden, y no el símbolo, para trabajar con órdenes pendientes. Para ser más precisos, trabajar con un símbolo es aceptable, pero un montón de trabajo extra.

P.D. Es la primera vez que oigo hablar de la "suscripción". Es una bonita variante.

 
papaklass:
No pretendo que sea la verdad en primer lugar, pero su afirmación sobre el jardín de infancia apesta a arrogancia.

No te lo tomes como algo personal. He corregido esa frase antes de su mensaje. Ya sabes, a veces escribes, lo envías, - y luego cuando lo lees corriges posibles ambigüedades en frases secundarias.

Sobre el tema. Tenemos enfoques exactamente opuestos para el trading: no me importa cuándo y cómo se abre/cierra una posición, porque el EA maneja estos momentos por sí mismo (cambia el TP, el trailing stop, etc.). Para mí es importante que las órdenes pendientes cubran siempre la situación del mercado. Por eso subrayo que una afirmación como "sólo un parámetro de símbolo es suficiente para OnTrade()" no refleja todas las estrategias comunes/típicas.

 
Interesting:

A los desarrolladores de

¿Es Win 2003 SP2 (en modo terminal) perder constantemente la información sobre mi cuenta de operaciones es un error o fue diseñado para mejorar la seguridad?

Más concretamente, si utilizo alternativamente la misma copia del programa en modo normal y en modo terminal con diferentes cuentas, los datos de la cuenta desaparecen de vez en cuando. Aparentemente, si sólo trabajas en modo terminal con diferentes cuentas, la situación será similar (aún no lo he comprobado).


Sí, así es.

Cuando otro usuario de Windows (incluso en el mismo ordenador) intenta acceder al terminal, que ha guardado las contraseñas de otro usuario de Windows, las contraseñas se restablecen forzosamente. Esto se hace para evitar que alguien robe las contraseñas.

 
Virty:

Sí, parece una pregunta sencilla, y ya los gurús están discutiendo. Es un dolor de cabeza conseguir que el probador funcione correctamente. Para comprar 1 lote de EURUSD al precio actual, hay que realizar 3-4 comprobaciones. Si no lo haces, el probador funcionará, pero no correctamente y, lo que es importante, en silencio. Sólo se producirá un saldo negativo o alguna otra tontería. Y es bueno si las comprobaciones tienen éxito. Pero si SymbolInfoTick devuelve false, no sabemos qué hacer. ¿Debo colgar el código de error en la pared en lugar de los premios en el Campeonato?

He probado con "equity<0,55*balance" y "free_margin<100". No funcionó. No sé por qué no ha funcionado. Estoy muy confundido con estos márgenes.

Lo dejé si(AccountInfoDouble(ACCOUNT_MARGIN_LEVEL)<55.0). Parece que funciona.

Las reglas del Campeonato están escritas en pocas palabras, en la jerga de los desarrolladores, mientras que necesitan detalles para los dummies.

¿Qué hay que discutir? El nivel de margen = Fondos/Valores*100%, o en términos de MQL5:

AccountInfoDouble(ACCOUNT_MARGIN_LEVEL)=AccountInfoDouble(ACCOUNT_EQUITY)/AccountInfoDouble(ACCOUNT_MARGIN)*100=
AccountInfoDouble(ACCOUNT_EQUITY)/(AccountInfoDouble(ACCOUNT_EQUITY)-AccountInfoDouble(ACCOUNT_FREEMARGIN))*100

Estos parámetros se muestran en su terminal en la pestaña "Comercio", puede comprobarlos. En cuanto a la parada de salida, revisa una discusión similar en 2007.

Установка Stop Out - MQL4 форум
  • www.mql5.com
Установка Stop Out - MQL4 форум
 
papaklass:

Vyacheslav, tu respuesta es alentadora. Alguien en el foro sugirió, en mi opinión, una solución aceptable: la suscripción. Implementa esta suscripción de forma similar a la función iCustom() que tiene parámetros obligatorios y no obligatorios. Al inicializar el EA, cada operador debe suscribirse a los eventos que necesite. No por el número total de eventos, sino sólo por aquellos que son críticos para su comercio. Este enfoque (suscripción) facilitará en gran medida el desarrollo de EAs multidivisa y reducirá realmente el código. Haga un experimento con al menos dos funciones OnTrade() y OnTick(). Haz lo mínimo: un símbolo. Entonces puede aumentar el número de eventos (parámetros). La práctica es el criterio de la verdad. Hasta que no lo intentes, no entenderás las dificultades que pueden surgir.

PS La analogía con la función GetLastError(), que devuelve el valor de la variable del sistema LastError, es probablemente más apropiada que la analogía con la función iCustom(). Escriba la variable del sistema TradeEvent y, cuando se active OnTrade(), imprima el valor de esta variable.

Es la primera vez que oigo hablar de la suscripción, pero es una muy buena idea como base para una idea (como la suscripción a los eventos de los domadores o la profundidad del mercado).

Además, la idea de una constante basada en el tipo _Error es bastante interesante.

En mi opinión, el símbolo debe ser transferido necesariamente, en principio, podemos empezar a moverse en esta dirección ahora, para que antes del campeonato para introducir al menos alguna innovación en esta área.

Yedelkin:

La cuestión es que si dejamos de lado los paradigmas de formación, es más importante conocer el ticket de la orden que el símbolo cuando se trata de órdenes pendientes. Para ser exactos, trabajar con un símbolo es aceptable, pero supone mucho trabajo extra.

Al principio debemos implementar sólo el símbolo, luego tendremos tiempo para pensar qué y cómo pasar adicionalmente. Sería bueno manejar OnTrade() y OnTick() de la misma manera.

Desarrollando el tema de la suscripción, es posible organizar la suscripción a los ticks de un determinado par.

 
Yedelkin:

No te lo tomes como algo personal. He corregido esa frase antes de su mensaje. Ya sabes, a veces escribes, lo envías, - y luego cuando lo lees corriges posibles ambigüedades en frases secundarias.

Sobre el tema. Tenemos enfoques exactamente opuestos para el trading: no me importa cuándo y cómo se abre/cierra una posición, porque el EA maneja esos momentos por sí mismo (cambia el TP, el trailing stop, etc.). Para mí es importante que las órdenes pendientes cubran siempre la situación del mercado. Por eso subrayo que una afirmación como "sólo un parámetro de símbolo es suficiente para OnTrade()" no refleja todas las estrategias comunes/típicas.

Estoy de acuerdo, no es así. Pero sin embargo, hay que partir del símbolo, y la orden/boleta de comercio o algo más se añadirá después.

Renat:

Sí, así es.

Cuando otro usuario de Windows (incluso en el mismo ordenador) intenta acceder a un terminal con contraseñas almacenadas por otro usuario de Windows, las contraseñas se restablecen a la fuerza. Esto se hace para evitar que alguien robe las contraseñas.

Ya veo, gracias (eso es lo que pensaba, pensé en asegurarme).
 
Interesting:

En primer lugar, sólo hay que implementar el símbolo, y luego habrá tiempo para pensar en qué y cómo pasar adicionalmente.

...Es el símbolo el que debe iniciarse, y la orden/boleta de comercio o algo más que se añadirá después es una cuestión diferente.

En general, los acentos ya están puestos, sólo quiero señalar que si se actúa según el principio de "cada uno se echa la manta a la cabeza" (como "dame sólo símbolo-parámetro" o "sólo billete-parámetro"), entonces no se puede conseguir nada. Por eso mi pregunta se formuló originalmente pensando en una configuración mínima de parámetros. Exactamente "configuración mínima", ya que esperaba que los usuarios más avanzados tuvieran sus propios deseos sobre la ampliación/aclaración de su lista.

Así que fue un poco sorprendente que surgieran sugerencias para limitar a un solo parámetro (símbolo-parámetro), especialmente sorprendente en el contexto de la respuesta de stringo, que no decía nada acerca de que los desarrolladores tuvieran problemas con el número de parámetros para OnTrade() en absoluto. El problema era que "un mismo billete puede dar lugar a un montón de mensajes". Y vendrán independientemente de cuántos parámetros se introduzcan para la función.

...El año pasado no pude entender durante mucho tiempo de qué "muletas" hablaban periódicamente los profesionales. Ahora, sobre la base de la discusión del tema sobre los parámetros para OnTrade() obtuve una fuerte asociación: "muletas" == medias tintas a la hora de resolver tal o cual cuestión. Creo que el tema de los parámetros para OnTrade() se resolverá sin ellos. Alabado sea, como se dice, el enfoque complejo de los desarrolladores en la resolución de problemas. :)

 

¿Qué significa el mensaje "resultado de bombeo 0" al final de la prueba?

 
MoneyJinn:

build 466: Los resultados de la prueba única difieren de los resultados de la optimización realizada un minuto antes.

¿Cuál es la razón? ¿Qué parámetros actualizados toma el probador del mercado durante la nueva prueba?

¿Puede adjuntar los resultados?
 
Ashes:

¿Qué significa el mensaje "resultado de bombeo 0" al final de la prueba?

Un mensaje de depuración deslizado al azar. El número después del resultado de la bomba corresponde al número al inicio