Yesterday - экстремумы предыдущего дня
Добавлено: 18 фев 2016, 15:16
Индикатор Yesterday отображает уровни минимальной и максимальной цены последнего рабочего дня за исключением текущей даты.
Т.е. на текущий день можно видеть экстремумы предыдущего дня. Если последний бар графика это бар предыдущего дня или ранее, будут отображаться экстремумы этой даты.
Примеры работы:
Исходный текст индикатора:
Скачать исходный текст:
Т.е. на текущий день можно видеть экстремумы предыдущего дня. Если последний бар графика это бар предыдущего дня или ранее, будут отображаться экстремумы этой даты.
Примеры работы:
Исходный текст индикатора:
Код: Выделить всё
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;
}
}
}
Скачать исходный текст: