Скачать MetaTrader 5

Индикаторы: Лента всех сделок

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Разбираетесь в своей области? Поделитесь этим с миллионами трейдеров!
Automated-Trading
Админ
99085
Automated-Trading 2016.09.20 19:16 

Лента всех сделок:

Индикатор показывает общее количество сделок по символу в реальном времени.

Автор: prostotrader

prostotrader
2783
prostotrader 2016.10.03 13:52  

Как оказалось, автоматическое добавление стакана цен - не работает

MqlBookInfo book[];
   if(!MarketBookGet(Symbol(),book)) //Автоматическое добавление стакана цен, если на графике стакан не добавлен
     {
      if(!MarketBookAdd(Symbol()))
        {
         Print(__FUNCTION__,": Стакан символа "+Symbol()+" не добавден!");
         return( INIT_FAILED );
        }
      else
        {
         use_book=true;
        }
     }
   else
     {
      use_book=false;
     }

 

из-за того, что if(!MarketBookGet(Symbol(),book)) возвращает true

Эта проверка была сделана для того, что если на этом чарте есть советник, который

использует этот же стакан цен, то мы не добавляли бы стакан, а использовали уже существующий.

Поэтому нужно просто добавлять стакан MarketBookAdd(Symbol())

а при деинициализации удалять подриску

MarketBookRelease(Symbol()); , при этом на чарте не должно быть советника или индикатора, которые

используют этот же стакан цен. 

fxsaber
4397
fxsaber 2016.10.03 14:09  
prostotrader:

Поэтому нужно просто добавлять стакан MarketBookAdd(Symbol())

а при деинициализации удалять подриску

MarketBookRelease(Symbol()); , при этом на чарте не должно быть советника или индикатора, которые

используют этот же стакан цен. 

Что-то у Вас с пониманием нарушение. Если сделаете MarketBookRelease, то другие советники все равно будут получать стакан.

prostotrader
2783
prostotrader 2016.10.03 14:48  
fxsaber:

Что-то у Вас с пониманием нарушение. Если сделаете MarketBookRelease, то другие советники все равно будут получать стакан.

На данном чарте?

Почему?

fxsaber
4397
fxsaber 2016.10.03 15:10  
prostotrader:

На данном чарте?

Да.

Почему?

Потому что MarketBookAdd и MarketBookRelease - это подписка/отписка на событие BookEvent для конкретного советника/индикатора. Это не подписка на стакан.

MarketBookAdd увеличивает счетчик программ, которые используют стакан. Вторая - уменьшает.

prostotrader
2783
prostotrader 2016.10.03 16:02  
fxsaber:

Да.

Потому что MarketBookAdd и MarketBookRelease - это подписка/отписка на событие BookEvent для конкретного советника/индикатора. Это не подписка на стакан.

MarketBookAdd увеличивает счетчик программ, которые используют стакан. Вторая - уменьшает.

Ок
Файлы:
DealsLent.mq5 39 kb
sober
217
sober 2016.10.06 19:24  
этот индикатор визуализирует ленту, так?
prostotrader
2783
prostotrader 2016.10.07 16:26  
sober:
этот индикатор визуализирует ленту, так?
Так
prostotrader
2783
prostotrader 2016.10.14 20:26  

v 1.03 Модернизированный индикатор.

Теперь, гистограммы (крайне правые синяя и красная на одном баре) показывают общую разницу Buy/Sell сделок за выбранный период. 

Если период = 0, то пересчёт равен = 30 

Файлы:
DealsLent.mq5 47 kb
monter58
66
monter58 2016.11.24 19:33  

Почему то не ставиться на график.

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