- Примеры: Двухэтапный вариант модификации открытых позиций
- Помогите хоть кто-нибудь!!!
- Как прикрутить MQL5 к MT4?
индикатором. Например, этот будет показывать волюм за текущий день:
#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]));
индикатором. Например, этот будет показывать волюм за текущий день:
чтобы за вчерашний день надо строчку заменить
for(int i=0; i<limit; i++) OUT[i]=iVolume(NULL,PERIOD_D1,1+iBarShift(NULL,PERIOD_D1,Time[i]));
офигенно.. это то, что нужно.. единственное - как-то можно сделать столбики гистограммы чуть тоньше, либо между ними линию-разделитель провести?
так, чисто для визуальной наглядности. это не критично, но было бы здорово.
офигенно.. это то, что нужно.. единственное - как-то можно сделать столбики гистограммы чуть тоньше, либо между ними линию-разделитель провести?
так, чисто для визуальной наглядности. это не критично, но было бы здорово.
Толщина строчкой задается
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); }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования