Т.е. на текущий день можно видеть экстремумы предыдущего дня. Если последний бар графика это бар предыдущего дня или ранее, будут отображаться экстремумы этой даты.
Примеры работы:
Исходный текст индикатора:
Код: Выделить всё
function Initialize()
{
IndicatorName = "Yesterday";
AddInput("Input", Inputs.Candle);
PriceStudy = true;
AddSeries("Hi", DrawAs.Custom, Color.Green);
AddSeries("Lo", DrawAs.Custom, Color.Red);
AddLevel(0, Color.Green, LineStyles.DashBig, 1, "Yesterday");
AddLevel(0, Color.Red, LineStyles.DashBig, 1, "Yesterday");
AddParameter("MinScan", 163, 2); //количество 5-минутных баров
AddGlobalVariable("High", Types.Double, 0);
AddGlobalVariable("Low", Types.Double, 0);
}
function Evaluate()
{
// evge 18.02.2016, http://alfadirect4.ru
// т.к. таймфреймы H3 выдают начало сессии в 9:00, H4 - в 8:00 и т.д.
if (BarDate() != DateTime.Today && BarTime() <= AsTime(10, 0, 0) && BarTime() >= AsTime(0, 0, 0))
{
High = Input.High[0];
Low = Input.Low[0];
}
else if (BarDate() != DateTime.Today && BarTime() > AsTime(10, 0, 0))
{
if ( Input.High[0] > High) High = Input.High[0];
if ( Input.Low[0] < Low) Low = Input.Low[0];
}
if (CurrentIndex == MaxIndex)
{
if (High > 0)
{
Levels[0].Level = High;
Hi = High;
}
if (Low > 0)
{
Levels[1].Level = Low;
Lo = Low;
}
}
}
Скачать исходный текст: