Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 606

 
pako:
В месяце четыре пять недель, сегодня четвертая неделя месяца
Да-да. Какие есть варианты?
 
new-rena:
Понял. то есть он хочет учесть недели такого характера 29 число предыдущего месяца (Понедельник, к примеру) и по 31 число текущего месяца (к примеру тоже понедельник). Это уже больше месяца получится. Не логично считать такие недели.
Нет, мне нужно знать какая сегодня неделя с начала текущего месяца.
 
-Aleks-:
Нет, мне нужно знать какая сегодня неделя с начала текущего месяца.

Ну, еще как вариант - брать бары с графика на периоде W1, считать количество баров нужного месяца + нужного года и будет счастье.

Да, да! Это как раз то. Но как такое заделать на 5-рке, я не знаю.

 
new-rena:

Ну, еще как вариант - брать бары с графика на периоде W1, считать количество баров нужного месяца и будет счастье.

Да, да! Это как раз то. Но как такое заделать на 5-рке, я не знаю.

А если без баров? Чисто програмно
 
pako:
А если без баров? Чисто програмно
Ну можно конечно, я же написал простейший вариант.
 
pako:
Как?

Немножко сложнее... Ну и нужно скорее всего из нижнего, умноженного на 7  вычесть номер дня в неделе и сравнить далее с числом месяца при результате больше 0 или 4-х. Всё таки проще с графика взять.

int НомерНеделиВмесяце=NormalizeDouble(НомерДНЯвМесяце/7,0)+1;
 
pako:
Нету графика
TimeLocal() чтоли только?
 
pako:
Да

тогда то что ты опрокинул, я там дописал - номер недели умножим на 7, анализируем и всё должно получиться.

Это для первой недели, когда ==1. Для последней нужно вычесть лишние дни и такой же анализ.

Всё равно коряво получится, как мне кажется. Будет работать, но коряво это)))

 
pako:
не понял
Лучше с графика, гораздо проще. Тянет же он там тайм-серии...
 
pako:

нет графика

есть только время 

Не вопрос. Алгоритм я кинул. Начало только без графика, то есть так:

int НомерДНЯвМесяце=TimeDay(TimeLocal());
Причина обращения: