¡Estimado Vladimir ! Llegué a su trabajo titánico para dummies, mis prioridades están cambiando, demo trading será su propio camino, y lo principal ahora es su escuela para principiantes, mastico valiosos apretones de su experiencia, es invaluable, no hay palabras. Si llego a cómo insertar un trailing stop en este EA, probablemente lo haré como una prioridad, porque como resultado de la optimización hacia adelante, la EA crea takeprofits largo, su red de seguridad se ha convertido en gritar. Y en el transcurso de la formación en su escuela probablemente aprenderé a ver los errores, sin los cuales no hay programas de trabajo, y corregirlos. GRACIAS
He encontrado un único, simple al genio, "trailing método" del Asesor Experto, el propio autor, que, como es tradicional para este desarrollo, no se ejecuta como el autor comentó. Él, como yo, probablemente también es un tonto, pero uno grande) Prometió que cuando el precio se invierte, la posición previamente abierta se cierra, bueno, sí, sería genial si lo fuera... pero sólo dos posiciones abiertas están colgando, en ambas direcciones, y no se cierran. Antes, antes de tu primer consejo, había una lluvia de posiciones abiertas en ambas direcciones, que no estaban cerradas. ¿Intentamos apretar esta guinda del pastel?
Encontré un único, simple de genio, "método trailing" del Asesor Experto, el propio autor, que, como es tradicional para este desarrollo, no se ejecuta como el autor comentó. Él, como yo, probablemente también es un tonto, pero uno grande) Prometió que cuando el precio se invierte, la posición previamente abierta se cierra, bueno, sí, sería genial si lo fuera... pero sólo dos posiciones abiertas están colgando, en ambas direcciones, y no se cierran. Antes, antes de tu primer consejo, había una lluvia de posiciones abiertas en ambas direcciones, que no estaban cerradas. ¿Intentamos apretar esta guinda del pastel?
¡Hola, Rustam! Para que podamos seguir cooperando productivamente, primero tienes que aprender a adjuntar el código del EA con problemas a tu mensaje. Si tienes problemas mientras pruebas el EA, necesitas guardar este código bajo un nuevo nombre, compilarlo y luego adjuntarlo al mensaje. ¡¡¡Debe guardar el EA con un nuevo nombre y compilarlo !!! De lo contrario, nos confundiremos en diferentes variantes a la hora de comunicarnos con usted.
Si por alguna razón no puedes adjuntar el código del EA, puedes utilizar otra forma:
En el MetaEditor, resalte el código del EA con problemas pulsando Ctrl+A.
Copie el código del EA presionando el botón Ctrl+C.
Crear un mensaje que desea publicar aquí en el foro y pulsando el botón AL + S abrir un campo donde tiene que pegar el código copiado pulsando el botón Ctrl + V.
Añade tu mensaje al foro
Si no aprendes a adjuntar o colocar en tus mensajes el código del EA con problemas, entonces el diálogo posterior contigo se vuelve inútil.
¡Hola, Rustam! Para que podamos seguir colaborando de forma productiva, primero tienes que aprender a adjuntar el código del EA con problemas a un mensaje. Si tienes problemas mientras pruebas el EA, necesitas guardar este código bajo un nuevo nombre, compilarlo y luego adjuntarlo al mensaje. ¡¡¡Debes guardar el EA con un nuevo nombre y compilarlo !!! De lo contrario, usted y yo nos confundiremos en diferentes variantes al comunicarnos con usted.
Si por alguna razón no puedes adjuntar el código del EA, puedes utilizar otra forma:
En MetaEditor, resalte el código del EA con problemas pulsando Ctrl+A.
Copie el código del EA presionando el botón Ctrl+C.
Crear un mensaje que desea publicar aquí en el foro y pulsando el botón AL + S abrir un campo donde tiene que pegar el código copiado pulsando el botón Ctrl + V.
Añade el mensaje al foro
Si no aprendes a adjuntar o publicar el código de EA con problemas en tus mensajes, será inútil seguir dialogando contigo.
Saludos, Vladimir.
Lo siento por el retraso, me quemé durante el fin de semana, pero encontró la causa del último problema, resultó que el corredor FXopen, simplemente no creció hasta MT5. Bueno y me enseñó la simplicidad de la selección de archivos, para enviar. Los dos primeros son su optimización del trabajo del autor, donde se detuvo la falta de atención del autor en el código, con la apertura masiva de posiciones, en lugar de uno, el único, los dos segundos son su declaración de cerrar una posición cuando el precio se invierte. El segundo vale la pena trabajar, después de todo, el autor, si no ha terminado, pero quería rentable).
Lo siento por el retraso, durante el fin de semana quemado, 24 horas, pero encontró la causa del último problema, resultó que el corredor FXopen, simplemente no creció hasta MT5. Bueno y me enseñó la simplicidad de la selección de archivos, para enviar. Los dos primeros son su optimización del trabajo del autor, donde se detuvo la falta de atención del autor en el código, con la apertura masiva de posiciones, en lugar de una, una sola, los dos segundos son su declaración de cerrar una posición cuando el precio se invierte. El segundo vale la pena trabajar, después de todo, el autor, si no ha terminado, pero quería rentable).
Bueno con este, el último, todavía estoy ordenando, tratando de entender algo y empezar a navegar en él, mientras que al seguro de takeprofits largo. Ya estoy listo para las sorpresas del autor en el futuro, el camino será recorrido por el que camina).
Bueno con esto último, todavía estoy intentando entender algo y empezar a orientarme en ello, por el momento para cubrirme a largo takeprofits. Ya estoy preparado para las sorpresas del autor en el futuro, camino andará el que ande).
¡Hola Rustam! Te adjunto la versión funcional de este Asesor Experto al final del mensaje. Los cambios se han realizado en esta sección del código:
//--- Poniendo todo junto if(Buy_Condition_1 && Buy_Condition_2)
{
if(Buy_Condition_3 && Buy_Condition_4 && PositionsTotal()==0)
{
ZeroMemory(mrequest);
mrequest.action = TRADE_ACTION_DEAL; // ejecución inmediata de la orden
mrequest.price = NormalizeDouble(latest_price.ask,_Digits); // último precio de venta
mrequest.sl = NormalizeDouble(latest_price.ask - STP*_Point,_Digits); // Stop Loss
mrequest.tp = NormalizeDouble(latest_price.ask + TKP*_Point,_Digits); // Take Profit
mrequest.symbol = _Symbol; // par de divisas
mrequest.volume = Lot; // número de lotes a negociar
mrequest.magic = EA_Magic; // Número mágico de pedido
mrequest.type = ORDER_TYPE_BUY; // Orden de compra
mrequest.type_filling = ORDER_FILLING_FOK; // Tipo de ejecución de la orden
mrequest.deviation=100; // Desviación del precio actual//--- enviar pedidobool check=OrderSend(mrequest,mresult);
// obtener el código de resultadoif(mresult.retcode==10009 || mresult.retcode==10008) //Solicitud completada o pedido realizado
{
Alert("A Buy order has been successfully placed with Ticket#:",mresult.order,"!!");
}
else
{
Alert("The Buy order request could not be completed -error:",GetLastError());
ResetLastError();
return;
}
}
}
/*
2. Comprobación de una configuración de venta/venta en corto: MA-8 decreciente a la baja,
cierre del precio anterior por debajo, ADX > 22, -DI > +DI
*/.//--- Declarar variables de tipo bool para contener nuestras Condiciones de Ventabool Sell_Condition_1 = (maVal[0]<maVal[1]) && (maVal[1]<maVal[2]); // MA-8 decreciente hacia abajobool Sell_Condition_2 = (p_close <maVal[1]); // El precio anterior cerró por debajo de MA-8bool Sell_Condition_3 = (adxVal[0]>Adx_Min); // Valor ADX actual superior al mínimo (22)bool Sell_Condition_4 = (plsDI[0]<minDI[0]); // -DI mayor que +DI//--- Poniendo todo juntoif(Sell_Condition_1 && Sell_Condition_2)
{
if(Sell_Condition_3 && Sell_Condition_4 && PositionsTotal()==0)
{
ZeroMemory(mrequest);
mrequest.action=TRADE_ACTION_DEAL; // ejecución inmediata de la orden
mrequest.price = NormalizeDouble(latest_price.bid,_Digits); // último precio de oferta
mrequest.sl = NormalizeDouble(latest_price.bid + STP*_Point,_Digits); // Stop Loss
mrequest.tp = NormalizeDouble(latest_price.bid - TKP*_Point,_Digits); // Take Profit
mrequest.symbol = _Symbol; // par de divisas
mrequest.volume = Lot; // número de lotes a negociar
mrequest.magic = EA_Magic; // Número mágico de pedido
mrequest.type= ORDER_TYPE_SELL; // Orden de venta
mrequest.type_filling = ORDER_FILLING_FOK; // Tipo de ejecución de la orden
mrequest.deviation=100; // Desviación del precio actual//--- enviar pedidobool check=OrderSend(mrequest,mresult);
// obtener el código de resultadoif(mresult.retcode==10009 || mresult.retcode==10008) //Solicitud completada o pedido realizado
{
Alert("A Sell order has been successfully placed with Ticket#:",mresult.order,"!!");
}
else
{
Alert("The Sell order request could not be completed -error:",GetLastError());
ResetLastError();
return;
}
}
}
return;
}
//+------------------------------------------------------------------+
Se agregó lo que está resaltado en amarillo:
&& PositionsTotal()==0
y también se eliminó la condición relacionada con Buy_opened y Sell_opened:
// ¿alguna posición de compra abierta?if(Buy_opened)
{
Alert("We already have a Buy Position!!!");
return; // No abrir una nueva posición de compra
}
.
.
.
// ¿alguna posición de venta abierta?if(Sell_opened)
{
Alert("We already have a Sell position!!!");
return; // No abrir una nueva posición de venta
}
¡Estimado Vladimir ! Llegué a su trabajo titánico para dummies, mis prioridades están cambiando, demo trading será su propio camino, y lo principal ahora es su escuela para principiantes, mastico valiosos apretones de su experiencia, es invaluable, no hay palabras. Si llego a cómo insertar un trailing stop en este EA, probablemente lo haré como una prioridad, porque como resultado de la optimización hacia adelante, la EA crea takeprofits largo, su red de seguridad se ha convertido en gritar. Y en el transcurso de la formación en su escuela probablemente aprenderé a ver los errores, sin los cuales no hay programas de trabajo, y corregirlos. GRACIAS
Atentamente, Rustam.
De nada, Rustam.
Con respeto, Vladimir.
Responder o Nuevo comentario, en la parte inferior Adjuntar un archivo.
GRACIAS por la ingeniosa simplicidad) Y una pregunta, ¿cómo haría usted, con su experiencia de arrastre, insertar uno de estos en este EA ?
¡Por favor, Rustam!
Saludos, Vladimir.
He encontrado un único, simple al genio, "trailing método" del Asesor Experto, el propio autor, que, como es tradicional para este desarrollo, no se ejecuta como el autor comentó. Él, como yo, probablemente también es un tonto, pero uno grande) Prometió que cuando el precio se invierte, la posición previamente abierta se cierra, bueno, sí, sería genial si lo fuera... pero sólo dos posiciones abiertas están colgando, en ambas direcciones, y no se cierran. Antes, antes de tu primer consejo, había una lluvia de posiciones abiertas en ambas direcciones, que no estaban cerradas. ¿Intentamos apretar esta guinda del pastel?
GRACIAS por la ingeniosa sencillez) Y una pregunta, ¿como harías, con tu experiencia en trailing, para insertar uno en este EA?
Si el resultado con trailing es mejor que sin él, pues déjalo.
Si el resultado es mejor con la red de arrastre que sin ella, déjela.
No es difícil insertarlo, pero ¿qué insertar? Probar y evaluar.
No es difícil ponerlo, pero ¿para qué hay que ponerlo? Para probarlo.
código de arrastre en su EA sin arrastre. Es mejor poner el código de arrastre en una función. Y llamar al arrastre por condición, si hay una orden.
Encontré un único, simple de genio, "método trailing" del Asesor Experto, el propio autor, que, como es tradicional para este desarrollo, no se ejecuta como el autor comentó. Él, como yo, probablemente también es un tonto, pero uno grande) Prometió que cuando el precio se invierte, la posición previamente abierta se cierra, bueno, sí, sería genial si lo fuera... pero sólo dos posiciones abiertas están colgando, en ambas direcciones, y no se cierran. Antes, antes de tu primer consejo, había una lluvia de posiciones abiertas en ambas direcciones, que no estaban cerradas. ¿Intentamos apretar esta guinda del pastel?
¡Hola, Rustam! Para que podamos seguir cooperando productivamente, primero tienes que aprender a adjuntar el código del EA con problemas a tu mensaje. Si tienes problemas mientras pruebas el EA, necesitas guardar este código bajo un nuevo nombre, compilarlo y luego adjuntarlo al mensaje. ¡¡¡Debe guardar el EA con un nuevo nombre y compilarlo !!! De lo contrario, nos confundiremos en diferentes variantes a la hora de comunicarnos con usted.
Si por alguna razón no puedes adjuntar el código del EA, puedes utilizar otra forma:
Si no aprendes a adjuntar o colocar en tus mensajes el código del EA con problemas, entonces el diálogo posterior contigo se vuelve inútil.
Saludos, Vladimir.
¡Hola, Rustam! Para que podamos seguir colaborando de forma productiva, primero tienes que aprender a adjuntar el código del EA con problemas a un mensaje. Si tienes problemas mientras pruebas el EA, necesitas guardar este código bajo un nuevo nombre, compilarlo y luego adjuntarlo al mensaje. ¡¡¡Debes guardar el EA con un nuevo nombre y compilarlo !!! De lo contrario, usted y yo nos confundiremos en diferentes variantes al comunicarnos con usted.
Si por alguna razón no puedes adjuntar el código del EA, puedes utilizar otra forma:
Si no aprendes a adjuntar o publicar el código de EA con problemas en tus mensajes, será inútil seguir dialogando contigo.
Saludos, Vladimir.
Lo siento por el retraso, me quemé durante el fin de semana, pero encontró la causa del último problema, resultó que el corredor FXopen, simplemente no creció hasta MT5. Bueno y me enseñó la simplicidad de la selección de archivos, para enviar. Los dos primeros son su optimización del trabajo del autor, donde se detuvo la falta de atención del autor en el código, con la apertura masiva de posiciones, en lugar de uno, el único, los dos segundos son su declaración de cerrar una posición cuando el precio se invierte. El segundo vale la pena trabajar, después de todo, el autor, si no ha terminado, pero quería rentable).
Lo siento por el retraso, durante el fin de semana quemado, 24 horas, pero encontró la causa del último problema, resultó que el corredor FXopen, simplemente no creció hasta MT5. Bueno y me enseñó la simplicidad de la selección de archivos, para enviar. Los dos primeros son su optimización del trabajo del autor, donde se detuvo la falta de atención del autor en el código, con la apertura masiva de posiciones, en lugar de una, una sola, los dos segundos son su declaración de cerrar una posición cuando el precio se invierte. El segundo vale la pena trabajar, después de todo, el autor, si no ha terminado, pero quería rentable).
Bueno con este, el último, todavía estoy ordenando, tratando de entender algo y empezar a navegar en él, mientras que al seguro de takeprofits largo. Ya estoy listo para las sorpresas del autor en el futuro, el camino será recorrido por el que camina).
Bueno con esto último, todavía estoy intentando entender algo y empezar a orientarme en ello, por el momento para cubrirme a largo takeprofits. Ya estoy preparado para las sorpresas del autor en el futuro, camino andará el que ande).
¡Hola Rustam! Te adjunto la versión funcional de este Asesor Experto al final del mensaje. Los cambios se han realizado en esta sección del código:
Se agregó lo que está resaltado en amarillo:
&& PositionsTotal()==0y también se eliminó la condición relacionada con Buy_opened y Sell_opened:
Saludos, Vladimir.