Sergey Perechesov:
Нужно программно поставить ценовую метку (на графике красная) на линию аллигатора. Проблема в том, что линии аллигатора со смещением, а CopyTime копирует данные в массив начиная с текущего бара (на графике место, где начинается желтая горизонтальная линия). Чтобы поставить метку, нужно получить дату, еще не сформировавшегося бара (место, где начинается зеленая горизонтальная линия). Т.е. последнее значение линии программно я определил, а индекс бара не могу.
Пробовал таким образом (что-то вроде смещение на 8 баров вперед):
но массив nowTime пустой.
void OnStart() { datetime nowTime[]; // массив для копирования времени открытия ArrayResize(nowTime,10); // задали размер ArraySetAsSeries(nowTime,true); CopyTime(_Symbol,_Period,0,10,nowTime); datetime time = nowTime[0]+PeriodSeconds()*8; //время в будущем -8 баров Alert("",TimeToString(nowTime[0])); Alert("",TimeToString(time)); }
Как то так.
Alekseu Fedotov:
Как то так.
спасибо, работает
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нужно программно поставить ценовую метку (на графике красная) на линию аллигатора. Проблема в том, что линии аллигатора со смещением, а CopyTime копирует данные в массив начиная с текущего бара (на графике место, где начинается желтая горизонтальная линия). Чтобы поставить метку, нужно получить дату, еще не сформировавшегося бара (место, где начинается зеленая горизонтальная линия). Т.е. последнее значение линии программно я определил, а индекс бара не могу.
Пробовал таким образом (что-то вроде смещение на 8 баров вперед):
но массив nowTime пустой.