[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 29
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
Hola...
Escribí un EA pero me encontré con este problema:
Tengo órdenes opuestas y, por ejemplo, para la COMPRA tengo 150 pips de stop y 150 pips de beneficio, para la VENTA se establecen los mismos niveles, pero sólo al revés (es decir, lo que es para el beneficio de la compra, luego para el stop de la venta), es decir, en realidad tengo que cerrar todo simultáneamente, tanto la venta con la compra como la compra con la venta..... pero hay otra cosa, el spread!)) Y de esas dos órdenes opuestas ya se abren las otras 8 (por supuesto si se necesitan las ocho, las condiciones son diferentes para ellas, también son opuestas 4/4)
¿Cómo puedo programar correctamente el código para que se cierren todas las órdenes cuando alcancen el mismo precio simultáneamente? Pues en el probador, cuando hago la prueba, el precio a veces llega a un nivel deseado, por ejemplo, vende cerrado (no llega a un nivel predeterminado, creo que es un spread) y compra colgado y al poco tiempo cae y compra cerrado en el stop, por lo que no puedo ver el resultado correcto.
Te agradecería que expresaras tu idea de forma programada, es decir, con código.
Para entenderlo con más detalle, os pongo la parte en la que se abren mis dos órdenes opuestas (las primeras).
Hola a todos.
La pregunta es si tiene una función que detecte la apertura de una nueva barra(sin importar el marco temporal) o, más precisamente, diferentes variantes de encontrar una nueva barra.
Hola a todos.
La pregunta es, ¿quién tiene la función que determina el hecho de abrir una nueva barra (no importa qué marco de tiempo), o más precisamente, puede diferentes variantes (remolques) encontrar una nueva barra.
Recordar la hora oldtime = Time[0] y comparar la hora recordada if( oldtime !=Time[0])Print("¡Hurra por un nuevo bar!!");
SZY: los remolques están en la función iTime().
:)
IgorM, el problema es que este f-fi está en un gráfico sintético donde iTime[0] puede ser igual a iTime[1], así que ¿cómo podemos deshacernos del tiempo para que el EA abra sólo una operación en una nueva barra?
si la hora de las barras 0 y 1 no puede coincidir por alguna razón desconocida - el tipo datetime almacena los datos en segundos, cambie la hora de la barra en al menos 1 segundo
entonces trate de recordar todas las características de la primera barra cerrada, es decir, OHLC, volumen y tiempo de apertura, si cambia incluso un parámetro - significa una nueva barra
iBars() mostrará el número de barras en el marco de tiempo actual, y estará limitado por la configuración de la terminal, puede intentar comparar el número de barras con el número de barras almacenado, y en el momento de una nueva barra, estos valores son diferentes - pero no siempre, a mí me funcionó de esta manera, pero probablemente debido al número de construcción de MT4 esta opción puede no funcionar
No tienes un trozo de código listo, ¿verdad? No consigo averiguar cómo memorizar OHLC[1] y compararlo con OHLC[0]...
OHLC es un acrónimo común para Open,High,Low,Close
comparar no con el cero, sino el primero con el memorizado anteriormente, es decir
init(){
oldHigh = High[1];
///
}
start(){
double tmp = High[1];
if(tmp !=oldHigh) {oldHigh = tmp;
//comprobar el resto de los parámetros de la barra
}
}
Gracias por el consejo, lo investigaré...
Por favor, indique cómo establecer la comprobación correcta en la condición de apertura de la posición - si hay una posición abierta para este instrumento o no. ¿Y si hay una posición para el símbolo (cualquier venta o compra), entonces la apertura no se produce, de lo contrario se activa la señal para abrir la posición?
Aquí está el código (creo que es responsable de la apertura de posiciones):
Parece correcto por lógica, pero sigue abriendo varias posiciones para un símbolo.
P.D. Yo no soy el programador. Si es posible en más detalles explicar al dummie.