Каталог файлов форума

Список вложений в сообщениях, оставленных на этой конференции.

Все файлы форума: 1270

Добавлено: evge » 07 фев 2016, 16:40

Тема: RangeOfDay (Range Of Day) – дневной диапазон

Текст сообщения:

Дневной диапазон – индикатор отображает диапазон текущего дня, построенного по экстремумам.
Пример. График с индикаторами Last и RangeOfDay.

Пример:

RangeOfDay-00.png


Исходный текст:

Код: Выделить всё

function Initialize()
{
  IndicatorName = "RangeOfDay";   
  AddInput("Input", Inputs.Candle);   
  PriceStudy = true;
  AddSeries("RangeOfDay", DrawAs.Histogram, Color.Red);      // Задаем вид линии 2
  AddLevel(0, Color.Green, LineStyles.DashBig, 1, "RangeOfDay");
  AddLevel(0, Color.Red, LineStyles.DashBig, 1, "RangeOfDay");
  AddGlobalVariable("High", Types.Double, 0);
  AddGlobalVariable("Low", Types.Double, 0);
}

function Evaluate()
{
// AlfaDirect. 2015. OX
// RangeOfDay - дневной диапазон
  if (BarDate() == DateTime.Today && BarTime() == AsTime(10, 0, 0))
  {
    High = Input.High[0];
    Low = Input.Low[0];
  }
  else if (BarDate() == DateTime.Today && BarTime() > AsTime(10, 0, 0))
  {
    if ( Input.High[-1] > High && Input.High[0] <= Input.High[-1] && Input.High[-2] <= Input.High[-1])
      High = Input.High[-1];
    if ( Input.Low[-1] < Low && Input.Low[0] >= Input.Low[-1] && Input.Low[-2] >= Input.Low[-1])
      Low = Input.Low[-1];
  }
  if (CurrentIndex < MaxIndex - 2)
  {
    Levels[0].Level = High;
    Levels[1].Level = Low;
  }   
}