[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 347

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, aquí hay una pregunta. ¿Cómo puedo escribir en el código que sólo se realice una operación en un fractal fijo?
Si el fractal es fijo, es ....
mi fractal
Sí, no hay problema en encontrar la orden pendiente apropiada de esta manera, si el número de órdenes pendientes en cada dirección es el mismo. Y si es diferente, entonces esto no funcionará como yo lo entiendo.
A continuación, determine el hecho de la activación de una orden pendiente y elimine la opuesta más lejana.
Todo esto se hace sólo para un hecho y una orden pendiente en un momento dado. No es necesario crear un número de activados y un número de eliminados, como usted está tratando de hacer. Usted captará el hecho de la transformación de las órdenes pendientes en un solo tick. Todos los demás activadores (si los hay) se determinarán en el siguiente tick.
berezhnuy por la difusión, que es varias veces mayor los fines de semana.
Estimados programadores, aquí está el código para contar las órdenes de compra y venta para abrir sólo una orden de compra o venta:
int CountBuy()
{
int count = 0;
for(int trade = OrdersTotal()-1; trade >= 0; trade--)
{
OrderSelect(trade, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol() == Symbol() && OrderMagicNumber() == magic)
{
if(OrderType() == OP_BUY)
count++;
}
}
return(count)
}
//+------------------------------------------------------------------+
int CountSell()
{
int count = 0;
for(int trade = OrdersTotal()-1; trade >= 0; trade--)
{
OrderSelect(trade, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol() == Symbol() && OrderMagicNumber() == magic)
{
if(OrderType() == OP_SELL)
count++;
}
}
return(count);
}
Y todo parece funcionar, pero en mi EA, hay condiciones para comprar y vender en algunos patrones de velas utilizando TP y SL. Pero cuando se cumple esta condición y se activa el TP, entonces en la formación de la vela 0 las condiciones para la apertura de órdenes siguen siendo ciertas y se abren nuevas órdenes, lo que no debería hacerse en ese momento. ¿Podría decirnos qué código utilizar para desactivar la apertura de nuevos pedidos? Se adjunta el propio EA.
A continuación, determine el hecho de una orden pendiente disparada y elimine la más opuesta.
Todo esto se hace sólo por un hecho y por una vez. No es necesario crear un número de activados y un número de eliminados, como usted está tratando de hacer. Usted captará el hecho de la transformación de las órdenes pendientes en un solo tick. Todos los demás activadores (si los hay) se determinarán en el siguiente tick.
¿Y si hay más pases por garrapata? Si, por ejemplo, el paso entre las órdenes es muy pequeño, entonces puede activarse más de una orden. Por supuesto, no podremos realizar todas las acciones necesarias a tiempo.
¿Y si pasa más en una garrapata? Si, por ejemplo, el paso entre las órdenes es muy pequeño, entonces se puede activar más de una orden. Por supuesto, no podremos realizar las acciones requeridas a tiempo.
El bucle sobre las posiciones abiertas en busca de órdenes activadas en la barra actual y la eliminación de posiciones en el mismo bucle.
Pues bien, este bucle se repetirá y todo se borrará de nuevo. También tengo una condición en la variante que tengo en este momento:
Es decir, debe eliminar hasta queordersToDelete sea cero. Pero lo destruye todo. Parece elemental, pero alguna barbaridad ocurre. No hay nada de esos momentos en un tutorial sin valor. Ya lo probé de las dos formas y lo reescribí de diferentes maneras, no funcionó como debería.
Reescrito de forma diferente:
Kim, también buscando el mismo camino. Encontró una orden con un precio de apertura mínimo, definió su posición, y seleccionó esta orden, definió su ticket y la eliminó. Pero no se borra.