Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1913

 
Alekseu Fedotov #:

No veo el error aquí.

if(TimeFrame != PERIOD_CURRENT)

lo mismo

if(TimeFrame != 0)
 
Alekseu Fedotov #:

No veo ningún error aquí.

PERIOD_CURRENT es 0 - la constante mágica

Debería ser _Period (el periodo del gráfico actual) como mínimo y siempre es distinto de 0

 
Alekseu Fedotov #:

No veo ningún error aquí.

Donde se toma este trozo de código, también hay un parámetro de entrada

sinput ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT; // Период

En consecuencia, obtenemos la condición si 0 no es igual a 0.

Pero si sustituimos PERIOD_CURRENT por cualquier otro periodo en el parámetro de entrada, la condición se mantendrá independientemente del periodo del gráfico. ¿Qué sentido tiene entonces esta condición?

 
Alexey Viktorov #:

Donde se toma este trozo de código, también hay un parámetro de entrada

En consecuencia, obtenemos la condición si 0 no es igual a 0

Pero si sustituimos PERIOD_CURRENT por cualquier otro periodo en el parámetro de entrada, la condición se mantendrá independientemente del periodo del gráfico. ¿Qué sentido tiene entonces esta condición?

Sólo tiene sentido una vez, para que la función ChartSetSymbolPeriod() no le moleste demasiado;

 
Alekseu Fedotov #:

El punto es sólo uno, para que la función ChartSetSymbolPeriod() no se tire innecesariamente;

En principio, sí. Pero la pregunta era sobre la presencia del error, no sobre la conveniencia de esta condición...

 

Buenas tardes, queridos desarrolladores.

Me encuentro con la necesidad de agrupar los pedidos para trabajar con cada grupo por separado (cierre, recarga, etc.). Creo que la tarea no es demasiado difícil, pero no tengo ni idea de cómo resolverla. Tengo una idea muy poco clara, eso es todo. ¿Nadie se ha enfrentado a ese problema? La agrupación puede hacerse de cualquier manera( terminal devariables globales, comentarios, etc.). Le agradecería cualquier ayuda.

 
AMarkov ( terminal devariables globales, comentarios, etc.). Le agradecería cualquier ayuda.

¿Por qué no quieres usar Magik? Porque puede haber más de un mago en un EA...

 
Magik
Alexey Viktorov #:

¿Por qué no es adecuado un mago? Puede haber más de un mago en un concejal...

Magik también es adecuado. Supongo que todas estas opciones tendrán casi el mismo algoritmo. Por lo tanto, no importa. Lo principal es encontrar la solución).

 
AMarkov #:
Magik

Magik también es adecuado. Supongo que todas estas opciones tendrán casi el mismo algoritmo. Así que es todo lo mismo. Lo principal es encontrar una solución).

Por supuesto, la solución es la misma. Determinar el criterio por el que la orden pertenece a tal o cual grupo e identificarla según ese criterio...
 
Alexey Viktorov #:
Por supuesto, la solución es la misma. Usted define el criterio según el cual el pedido pertenece a tal o cual grupo y lo identifica según este criterio...

Gracias por su participación. La declaración de la misión es clara para mí. Estoy atascado con la implementación...

Lo intenté con los comentarios. Hasta el segundo grupo numera correctamente. En el tercero devuelve uno para el comentario, aunque el primer grupo sigue en el mercado. No se trata de multiplicar los números, sino de tomar los vacíos. Espero haberlo explicado claramente).

for(int a=1; a<10; a++)

{

comentario=";

for(int i=0; i<TotalPedidos(); i++)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic)

{

//Imprimir(OrdenComentario();

if(OrderComment()==IntegerToString(a)) continue;

si no

{

comment=IntegerToString(a);

romper;

}

}

}

}

if(comentario!="") break;

}

if(CountOfBuy(magic)<1 && CountOfSell(magic)<1) comment="1";