Общие вопросы по разработке > DeltaCumOfDay

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
Vorobey
Сообщения: 10
Зарегистрирован: 09 дек 2016, 00:20

DeltaCumOfDay

Непрочитанное сообщение Vorobey » 21 дек 2016, 22:38

Помогите прикрутить стрелку на графике при переходе данного индикатора по принципу MACD через ноль

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

function Initialize()
{
IndicatorName = "DeltaCumOfDay";
AddInput("Input", Inputs.Candle);
PriceStudy = false;
AddSeries("DeltaCumDay", DrawAs.Custom, Color.Gray, AxisType.ZeroBased);
}

function Evaluate()
{
// AlfaDirect 2014. OX
// Кумулятивная Дельта Дневная - интеграл разниц между объемами покупателей и продавцов за день
if ( CurrentIndex < 1 || BarTime() == AsTime(10, 0, 0) )
{
DeltaCumDay = Input.VolumeAsk[0] - Input.VolumeBid[0];
}
else
{
DeltaCumDay = DeltaCumDay[-1] + Input.VolumeAsk[0] - Input.VolumeBid[0];
if (DeltaCumDay > DeltaCumDay[-1] )
DeltaCumDay.DrawHistogram(Color.Green, 100);
else
DeltaCumDay.DrawHistogram(Color.Red, 100);

}
}


Аватара пользователя
evge
Администратор
Сообщения: 1641
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 62 раза
Поблагодарили: 294 раза
Контактная информация:

Re: DeltaCumOfDay

Непрочитанное сообщение evge » 22 дек 2016, 06:48

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

function Initialize()
{
   IndicatorName = "DeltaCumOfDaySignals";
   AddInput("Input", Inputs.Candle);
   PriceStudy = false;   
    AddSeries("DeltaCumDay", DrawAs.Custom, Color.Gray, AxisType.ZeroBased);   
   AddSeries("Buy", DrawAs.Custom, Color.Green, true, Axes.Parent);   
   AddSeries("Sell", DrawAs.Custom, Color.Red, true, Axes.Parent);   
}

function Evaluate()
{

// AlfaDirect 2014. OX
// Кумулятивная Дельта Дневная - интеграл разниц между объемами покупателей  и продавцов за день
//
// evge 22.12.2016 http://alfadirect4.ru
// добавлены сигналы на график

  if ( CurrentIndex < 1 || BarTime() == AsTime(10, 0, 0) )
  {
     DeltaCumDay = Input.VolumeAsk[0] - Input.VolumeBid[0];
  }
  else
  {
     DeltaCumDay = DeltaCumDay[-1] + Input.VolumeAsk[0] - Input.VolumeBid[0];
    if (DeltaCumDay > DeltaCumDay[-1] )
       DeltaCumDay.DrawHistogram(Color.Green, 100);
    else
       DeltaCumDay.DrawHistogram(Color.Red, 100);
  }

if (DeltaCumDay[0] > 0 && DeltaCumDay[1] < 0)
   {
      Buy = Input.Low[0];
      Buy.DrawArrowUp();
   }
if (DeltaCumDay[0] < 0 && DeltaCumDay[1] > 0)
   {
      Sell = Input.High[0];
      Sell.DrawArrowDown();
   }
}


DeltaCumOfDaySignals-01.png
DeltaCumOfDaySignals-01.png (30.63 КБ) 2605 просмотров
никогда такого не было и вот опять


Вернуться в «Общие вопросы по разработке»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 11 гостей