[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 89
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
¡Ayuda! Por favor, ayuda - hay un indicador personalizado que, entre otras cosas, dibuja flechas de compra y venta. Cómo hacer un EA basado en it???? ¿Cómo hacer más fácil - para determinar si una flecha se dibuja a partir de un EA? O bien, el código del indicador se hace en función del Asesor Experto???? Estoy familiarizado con MQL. No he encontrado allí las respuestas a mis preguntas.
Me interesa mucho.
¡Ayuda! Por favor, ayuda - hay un indicador personalizado que, entre otras cosas, dibuja flechas de compra y venta. Cómo hacer un EA basado en it???? ¿Cómo hacer más fácil - para determinar si una flecha se dibuja a partir de un EA? O bien, el código del indicador se hace en función del Asesor Experto???? Estoy familiarizado con MQL. No he encontrado allí las respuestas a mis preguntas.
Ayúdame.
https://www.mql5.com/ru/code/8524
Genial, ¡un asesor ya hecho! Lo investigaré, ¡gracias!
¿qué dice el registro del intento?
no dice nada
https://www.mql5.com/ru/code/8524
Resulta que es un poco más complicado que eso. Este Asesor Experto trabaja con indicadores en los que las flechas tienen asignadas dos matrices de indicadores (buffers de indicadores). En mi indicador, los objetos (flechas) se crean con el método ObjectCreate(). Según tengo entendido, el objeto (flecha) se crea según las coordenadas tiempo-precio. Creo que la forma más fácil de hacer un Asesor Experto, donde una fórmula de indicador se utiliza en una función, por así decirlo, y las posiciones abiertas en lugar de flechas en las mismas condiciones. ¿Cómo se puede ser? ¡Ayuda!
Resulta que es un poco más complicado que eso. Este Asesor Experto trabaja con indicadores en los que las flechas tienen asignadas dos matrices de indicadores (buffers de indicadores). En mi indicador, los objetos (flechas) se crean con el método ObjectCreate(). ¿Qué hacer en este caso? ¡Ayuda!
Puede simplemente mover el código del indicador al Asesor Experto. Allí, en lugar del comando ObjectCreate() para la flecha de compra, abra una operación de compra. Lo mismo para vender.
Gracias. Lo haré, creo que no hay nada difícil.
Hola
Ayúdame. El resultado final. El EA sólo vende y cierra, funciona con una orden. Cuando el estocástico está por encima de 80, podemos coger alguna pérdida, así que tengo una idea para cambiar la condición de vender si la posición se ha cerrado en el stop loss con la función isCloseLastPosByStop de KimA. Es decir, es verdadero cuando la última posición ha cerrado en Stop Loss, y falso cuando no lo ha hecho, y estas condiciones han sido introducidas en la condición de venta. Cuando se conecta, se abre una posición que se cierra con el stoploss o no se cierra. Por favor, díganme qué está mal en el código o cómo hacer que se vea así
i
int inicio()
{
int
cnt=0,
billete,
total;
doble
StochK_0, // Valor de la línea K
StochD_1, // valor de la línea D
SL=StopLoss;
bool
isCloseLastPosByStop(NULL,OP_SELL, MagicNamber); // function KimA
StochK_0=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 0); // K
StochD_1=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 2); //D
ticket= OrderTicket();
total=Total de pedidos();
si (total<1)
if ( isCloseLastPosByStop(NULL,OP_SELL, MagicNamber) == 0)
{
if ( (StochK_0<StochD_1) && (StochD_1 > 80) ) // la primera ist venta
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green); // vender
OrderSelect(0, SELECT_BY_POS);
if (OrderSelect(0, SELECT_BY_POS)==true )
Print("SELECT_BY_POS");
si no
Print("error de selección : ",GetLastError());
if((StochK_0<30)&& (StochD_1 < 30))
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet);
}
si no
if ( isCloseLastPosByStop(NULL,OP_SELL, MagicNamber) == 1)
{
if ((StochK_0<StochD_1) && (StochK_0 < 60) && (StochD_1 < 60) ) 2º asses venta
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*0,0, "My EXP", MagicNamber,0,Green); //
OrderSelect(0, SELECT_BY_POS);
if (OrderSelect(0, SELECT_BY_POS)==true )
Print("SELECT_BY_POS");
si no
Print("error de selección2 : ",GetLastError());
if((StochK_0<30)&& (StochD_1 < 30)) // condición de cierre
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet);
}
return(0);
}
//___ fu ______ isCloseLastPosByStop(NULL,OP_SELL, MagicNamber)______
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
...............itd..............................