Пытаюсь вступить на открытии бара, но советник ждет пока появится первый тик в баре, хотя открытие бара уже прорисовано - это лечится?

 
Первый тик - это и есть открытие бара.
 
S4kam, посмотри функцию

int iBarShift( string symbol, int timeframe, datetime time, bool exact=false)

Она много чего для тебя прояснит. Намучился я с ней порядочно.

Попробуй ради прикола выяснить, когда реально ночью, когда тиков мало, открывается первый 1-минутный бар внутри 4-часового (00:00 24.05.07, например). Это не очевидно, но вычислить его можно. Функция ищет бар из настоящего в прошлое. Если exact = false - возвращает последний 1-минутный бар, закрывающий более ранний 4-часовой бар (который уже находится внутри 23 мая). Иначе возвращает -1, если такого минутного бара, открывающего 4-часовку точно в 00:00, нет. Но ты найди 1-минутный, который реально открывает нужный тебе 4-часовой.
Причина обращения: