Ejecutar el script a través del Asesor Experto - página 4

 

Si hay una manera de enviar señales al servidor del broker por el EA, para que el EA abra y cierre órdenes

en la forma como el servidor cierra SL y TP (inmediatamente, sin retraso, en el punto),

¡por favor, hágamelo saber!

No quiero decir con esto, que quiero establecer el TP en el nivel mínimo de TP de mi broker.

No quiero establecer ningún TP, quiero que mi EA cierre de forma fiable @ mis propios niveles de beneficio (cualquier cosa de 0,1 - 1 Pips dependiendo de broker 4 o 5 dígitos) .

¡Y, no me digas que debo abrir una cuenta profesional con un millón de dólares en él!

P.S. Sé que el problema radica en la forma en que los programas se ejecutan. He tenido alguna experiencia con la codificación de PHP. PHP se ejecuta en el lado del servidor.

Los programas mql que están en mi ordenador se ejecutan en el lado del cliente, es decir, en mi ordenador, enviando señales al servidor del broker.

Sin embargo, no soy un codificador profesional. Puedo pensar, y sé, que cuando se abre una orden, la información está en el servidor del broker,

y por eso la ejecución de TP y SL es tan buena. Quiero la misma ejecución de mi EA - ¿es eso pedir demasiado?

Creo que es justo. ¡De lo contrario, el corredor tiene más ventaja sobre mí de lo que debería!

 
El programa de ejemplo del MACD hace esto con un poco de edición. Por cierto, te das cuenta de que "fuera de línea" significa que no estás conectado a Internet y por lo tanto no está conectado al corredor y por lo tanto para colocar un comercio que llame a ellos.
 
Ickyrus:
El programa MACD Sample hace esto. Por cierto, usted se da cuenta de que "fuera de línea" significa que no está conectado a Internet y por lo tanto no está conectado al corredor y por lo tanto para colocar un comercio que el teléfono.


¡Claro que sí!

Pero eso no es lo que quiero.

Quiero operar en vivo, en línea, en el momento.

No estoy interesado en el comercio de largo plazo.

¡Estoy interesado en el scalping pesado con mi EA!

 

Usted edita el programa para que se comporte como usted lo hace. Los programas son consistentes y persistentes y no suelen preocuparse por las noticias o lo que sucede en el mundo de las finanzas. Si su forma de operar es consistente y persistente, entonces un EA es la respuesta.

 
Dadas:


¡Ilumíname, por favor!

¿Cómo puedo realizar operaciones en tiempo real en un gráfico sin conexión?

Muy sencillo...

En primer lugar, tiene que "marcar" el gráfico offline con ticks sintéticos, esto permite a su EA ejecutar start(), entonces cuando su EA coloca operaciones no puede utilizar symbol() debe utilizar el nombre correcto del símbolo, por ejemplo "EURUSD" . . también no puede utilizar Bid, Ask, etc . . pero puede obtener estos valores utilizando MarketInfo().

 
Ickyrus:
El programa de ejemplo del MACD hace esto con un poco de edición. Por cierto, te das cuenta de que "offline" significa que no estás conectado a internet y por lo tanto no estás conectado al broker y por lo tanto para colocar una operación les llamas por teléfono.


En realidad, en el contexto en que lo usé en este hilo, no lo hace.

Un gráfico fuera de línea es uno que no recibe datos en vivo directamente de su Broker, por ejemplo un gráfico Renko que es fabricado por algún otro código que está usando los datos en vivo del Broker.

 
Dadas:


¡Muchas gracias!

Es tan sencillo que debería haberlo pensado yo mismo...

Cansado, quess....... ¡Como mi viejo ordenador - LOL!

Aunque, ya sabes, yo estaba pensando en algo un poco diferente.

¡Estoy pensando en cómo anular el ticking en el comercio en vivo MT4!



Lee esto: https://www.mql5.com/en/forum/124688
 
RaptorUK:

Lee esto: https: //www.mql5.com/en/forum/124688

Esto es algo que debo estudiar.

¡Por fin, algo útil!

¡Muchas gracias, RaptorUK!

 

OK, así que hizo lo siguiente:

int init()
{
   int hWnd = WindowHandle(Symbol(),Period());
   PostMessageA(hWnd,WM_COMMAND,33232,1);
}

Esto no hace que se ejecute el start(), así que ¿cómo ayudará esto a mi EA en una mejor ejecución de cierre?

#define MT4_WMCMD_UPDATE_DATA     33324 /* This doesn't cause experts start() to run */
 


Entonces, ¿cómo puede cualquiera de estos ayudar a resolver mi situación?

¿Cómo puede esto anular el tick del broker, forzar al servidor a cerrar mi orden?

Necesito un comando, que hace que los expertos start() para ejecutar.

 
Dadas:

OK, así que hizo lo siguiente:

Esto no hace que se ejecute el start(), así que ¿cómo ayudará esto a mi EA en una mejor ejecución de cierre?

Entonces, ¿cómo puede todo esto ayudar a resolver mi situación?

¿Cómo anula todo esto el tick del broker, forzando al servidor a cerrar mi orden?

Utiliza un script que se ejecute en un bucle infinito para "tickear" el gráfico en el que está tu EA... cada 100 ms, cada 50 ms... lo que tu PC pueda soportar, sólo asegúrate de que cuando lo tickees no esté solicitando datos en cada tickeo o tu Broker se molestará un poco contigo.

El script ni siquiera tiene que estar en el mismo gráfico. . .

Razón de la queja: