Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 606

 
pako:
Hay cuatro cinco semanas en un mes, es la cuarta semana del mes.
Sí, sí. ¿Cuáles son las opciones?
 
new-rena:
Ya veo. Así que quiere contabilizar las semanas de esta naturaleza el 29 del mes anterior (lunes, por ejemplo) y hasta el 31 del mes en curso (lunes también, por ejemplo). Eso sería más de un mes. No es lógico contar esas semanas.
No, necesito saber qué semana es desde el principio del mes actual.
 
-Aleks-:
No, necesito saber qué semana es desde el principio del mes actual.

Bueno, como otra opción - tome las barras del gráfico en el período W1, cuente el número de barras del mes requerido + el año requerido y será feliz.

¡Sí, sí! Eso es exactamente. Pero no sé cómo hacerlo en 5p.

 
new-rena:

Bueno, como otra opción - tome las barras del gráfico en el período W1, cuente el número de barras del mes requerido y será feliz.

¡Sí, sí! Eso es exactamente. Pero no sé cómo hacerlo en 5p.

¿Qué tal sin barras? De forma puramente programática
 
pako:
¿Qué tal sin barras? De forma puramente programática.
Bueno, puedes, por supuesto, escribí la versión más simple.
 
pako:
¿Cómo?

Un poco más complicado... Y probablemente haya que restar al número inferior el número de días de la semana, multiplicado por 7, y luego compararlo con el número del mes si el resultado es mayor que 0 o 4. Es más fácil tomarlo de un gráfico.

int НомерНеделиВмесяце=NormalizeDouble(НомерДНЯвМесяце/7,0)+1;
 
pako:
No hay ningún gráfico.
¿SóloTimeLocal()?
 
pako:

entonces lo que usted inclinó, agregué allí - multiplique el número de la semana por 7, analice y debe funcionar.

Esto es para la primera semana cuando ==1. Para el último hay que restar los días extra y hacer el mismo análisis.

Creo que sigue siendo un lío. Funcionará, pero es torpe)))

 
pako:
no lo consiguió.
Mejor desde un gráfico, mucho más fácil. Está tirando de una serie de tiempo allí, ¿no?
 
pako:

no existe un horario

Sólo hay tiempo.

No hay problema. He lanzado el algoritmo. Es decir, el comienzo sólo sin horario:

int НомерДНЯвМесяце=TimeDay(TimeLocal());