прикрутить бы дневные обьемы к H1

 
господа, как сделать так, чтобы на часовиках отображались объемы с PERIOD_D1 допустим одним баром?
 
нашёл только индикатор баров со старших тф
Файлы:
 
ultimate писал(а) >>
господа, как сделать так, чтобы на часовиках отображались объемы с PERIOD_D1 допустим одним баром?

пока день не закрылся его волюм не известен. Или вы хотите чтобы на часовках отображался волюм предыдущего дня? Или куммулятивный за день на текущий час?

 
Avals писал(а) >>

пока день не закрылся его волюм не известен. Или вы хотите чтобы на часовках отображался волюм предыдущего дня? Или куммулятивный за день на текущий час?

тогда нужно самому сформировать закрытие дня со смещением относительно предыдущего дня..

 
Avals >>:

пока день не закрылся его волюм не известен. Или вы хотите чтобы на часовках отображался волюм предыдущего дня? Или куммулятивный за день на текущий час?

вот именно так - на часовиках вольюм предыдущих дней.

как это реализовать?

 
ultimate писал(а) >>

вот именно так - на часовиках вольюм предыдущих дней.

как это реализовать?

индикатором. Например, этот будет показывать волюм за текущий день:

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Red
//---- input parameters
double OUT[];
int init()
  {
//---- indicators
   IndicatorShortName("DayVolume");
   SetIndexStyle(0,DRAW_HISTOGRAM);
   SetIndexBuffer(0,OUT);
//----
   return(0);
  }
int deinit()
  {
   return(0);
  }
int start()
  {
     int limit;
     int counted_bars=IndicatorCounted();
     limit=Bars-counted_bars;     
     for(int i=0; i<limit; i++) OUT[i]=iVolume(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,Time[i]));
   return(0);
  }

чтобы за вчерашний день надо строчку заменить

for(int i=0; i<limit; i++) OUT[i]=iVolume(NULL,PERIOD_D1,1+iBarShift(NULL,PERIOD_D1,Time[i]));

 
Avals >>:

индикатором. Например, этот будет показывать волюм за текущий день:

чтобы за вчерашний день надо строчку заменить

for(int i=0; i<limit; i++) OUT[i]=iVolume(NULL,PERIOD_D1,1+iBarShift(NULL,PERIOD_D1,Time[i]));

офигенно.. это то, что нужно.. единственное - как-то можно сделать столбики гистограммы чуть тоньше, либо между ними линию-разделитель провести?

так, чисто для визуальной наглядности. это не критично, но было бы здорово.

 
ultimate писал(а) >>

офигенно.. это то, что нужно.. единственное - как-то можно сделать столбики гистограммы чуть тоньше, либо между ними линию-разделитель провести?

так, чисто для визуальной наглядности. это не критично, но было бы здорово.

Толщина строчкой задается

SetIndexStyle(0,DRAW_HISTOGRAM,EMPTY,1);

Тоньше чем единица нельзя. Но можно сделать чтобы волюм отображался через один часовой бар, а не в каждом. Тогда будет казаться тоньше. Заменить функцию start на:

int start()
  {
     int limit;
     int counted_bars=IndicatorCounted();
     limit=Bars-counted_bars;     
     for(int i=0; i<limit; i++) 
       if (OUT[i-1]>0) OUT[i]=0; else
       OUT[i]=iVolume(NULL,PERIOD_D1,iBarShift(NULL,PERIOD_D1,Time[i]));
   return(0);
  }

или отображать объем предыдущего дня только в первой часовой свече суток:

int start()
  {
     int limit;
     int counted_bars=IndicatorCounted();
     limit=Bars-counted_bars;     
     for(int i=0; i<limit; i++) 
       if (TimeDay(Time[i])!=TimeDay(Time[i+1]))
         OUT[i]=iVolume(NULL,PERIOD_D1,1+iBarShift(NULL,PERIOD_D1,Time[i])); else OUT[i]=0;
   return(0);
  }
 
СПАСИБО!
Причина обращения: