
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не за что, потому как все неправильно Вам подсказали. Коль скоро нужен предыдущий торговый день:
Bar1=iBarShift(NULL,1440,dt1);
dt2=iTime(NULL,1440,Bar1+1);
Ну, а с dt3 все понятно.
PS Если историю отображать не надо, лучше исключить третью точку и просто рисовать 2 луча.
Кстати, в этом случае: dt2=iTime(NULL,1440,1); поскольку Bar1=0.
ну почему же неправильно?
предложенный Вами способ будет давать ошибку, если ДЦ выдает котировки в выходные (мой, например, выдает)
Не за что, потому как все неправильно Вам подсказали. Коль скоро нужен предыдущий торговый день:
Bar1=iBarShift(NULL,1440,dt1);
dt2=iTime(NULL,1440,Bar1+1);
Ну, а с dt3 все понятно.
PS Если историю отображать не надо, лучше исключить третью точку и просто рисовать 2 луча.
Кстати, в этом случае: dt2=iTime(NULL,1440,1); поскольку Bar1=0.
Вариант, спасибо! так получить день у меня мозг не повернулся! :)
может так?
Работает, спасибо!
Katarho:
Индикатор в истории отказывается рисовать прошлый год. Первая прорисовка начинается 3-е января 2013.
Кто скажет с чем это может быть связано?
void start()
{ datetime dt1, dt2, dt3;
dt2=TimeCurrent();
dt3=dt2+24*60*60;
if (DayOfWeek()==1){dt1=dt2-72*60*60;}
else
dt1=dt2-24*60*60;
for (int i=0; i<NumberOfDays; i++)
{
DrawObjects_Angle(dt1,dt2,dt3,"Angle2"+angleFIB2+i, ABegin, angleFIB2, AEnd);
dt1-=24*60*60;
dt2-=24*60*60;
dt3-=24*60*60;
while (TimeDayOfWeek(dt1)<1 || TimeDayOfWeek(dt1)>5) {dt1-=24*60*60;}
while (TimeDayOfWeek(dt2)<1 || TimeDayOfWeek(dt2)>5) {dt2-=24*60*60;}
while (TimeDayOfWeek(dt3)<1 || TimeDayOfWeek(dt3)>5) dt3-=24*60*60;
}
}