Обзор событий в BotTabScreener.

Обзор событий в BotTabScreener.

По аналогии с простой вкладкой BotTabScreener предоставляет набор событий, через которые поступают потоки биржевой информации. Почти все события в качестве второго аргумента, передают обработчикам ссылку на простую вкладку, которой принадлежат данные, передаваемые первым аргументом. Подробнее с каждым событием BotTabSimple вы можете ознакомиться в соответствующем разделе.

public event Action<BotTabSimple> NewTabCreateEvent;

Сигнализирует об успешном подключении простой вкладки в скринер. Передает ссылку на объект BotTabSimple, который был добавлен. Представим, что нам нужно в скринере получать событие об успешном подключении инструмента. Мы можем подписаться на него иначе.

  1. Создаем вкладку типа скринер и сохраняем в переменную ссылку на нее.
  2. Задаем обработчик для события NewTabCreateEvent.
  3. В обработчике события успешного добавления простой вкладки при помощи свойства Connector получаем доступ к событию SecuritySubscribeEvent.
  4. Получаем сообщение об успешном завершении процесса подписки инструмента на потоки данных.

 

public event Action<List<Candle>, BotTabSimple> CandleFinishedEvent;

Данное событие сигнализирует о завершении формирования последней свечи в серии. Передает список всех свечей и саму вкладку. 

 

public event Action<List<Candle>, BotTabSimple> CandleUpdateEvent;

Событие CandleUpdateEvent сигнализирует об обновлении цены закрытия последней свечи простой вкладки, передаваемой вторым аргументом. В обработчик передается список доступных свечей. Состояние последней будет равно CandleState.Started. После получения последнего трейда для временного отрезка состояние изменяется на CandleState.Finished.

 

public event Action<Trade, BotTabSimple> NewTickEvent;

Событие NewTickEvent сигнализирует о получении очередной обезличенной сделки, которая описывается в программе классом Trade.


public event Action<MyTrade, BotTabSimple> MyTradeEvent;

Событие сигнализирует о получении новой сделки по ордеру, который принадлежит вкладке, передаваемой вторым аргументом.

 

public event Action<Order, BotTabSimple> OrderUpdateEvent;

Событие OrderUpdateEvent сообщает об обновлении данных по заявке, передает ссылку на изменившийся ордер и простую вкладку, которой принадлежит данный ордер.

 

public event Action<MarketDepth, BotTabSimple> MarketDepthUpdateEvent;

Событие MarketDepthUpdateEvent сообщает об изменении стакана заявок, передает ссылку на обновленный объект MarketDepth и вкладку, которой принадлежит передаваемый стакан. 

 

public event Action<Position, BotTabSimple> PositionClosingSuccesEvent;

Событие PositionClosingSuccesEvent сообщает роботу об успешном закрытии позиции по одной из вкладок. В качестве аргументов передается закрытая позиция и вкладка, которой она принадлежит.

 

public event Action<Position, BotTabSimple> PositionOpeningSuccesEvent;

Данное событие сигнализирует об успешном открытии позиции в одной из вкладок. В качестве аргументов передает позицию и вкладку, которой она принадлежит. Важно помнить, что событие вызывается сразу после смены состояния позиции с Opening на Open, а это происходит при получения первой сделки по открывающему ордеру позиции. В следствии этого может возникнуть ситуация, когда объем открывающего ордера исполнился не полностью, но позиция будет в состоянии PositionStateType.Open.

 

public event Action<Position, BotTabSimple> PositionNetVolumeChangeEvent;

Данное событие срабатывает каждый раз, когда в позиции изменяется открытый объем. В качестве аргумента передает в обработчик изменившуюся позицию и вкладку, которой она принадлежит.

 

public event Action<Position, BotTabSimple> PositionOpeningFailEvent;

Данное событие сообщает об ошибке открытия позиции. Как правило, такое может возникнуть по ряду причин, например, высылается ордер в неторговое время, не хватает средств на счете, потеря связи с биржей и другие. В качестве аргументов передает позицию и вкладку, которой она принадлежит.

 

public event Action<Position, BotTabSimple> PositionClosingFailEvent;

Событие PositionClosingFailEvent информирует о неудачной попытке закрытия позиции.

В отличии от проблем с открытием позиций, ошибка закрытия может привести к потере средств, поэтому это событие желательно использовать в каждом алгоритме, чтобы оперативно решать проблему. К ошибке закрытия позиции могут приводить как внешние факторы, такие как: ошибка исполнения ордера, обрыв связи с биржей; так и действия робота – отмена закрывающего ордера. Событие в качестве аргументов передает проблемную позицию и вкладку, которой она принадлежит.

 

public event Action<Position, BotTabSimple> PositionStopActivateEvent;

Данное событие срабатывает в момент активации стоп-лосс заявки для позиции. В качестве аргументов передает позицию, по которой сработал стоп и вкладку, которой она принадлежит.

 

public event Action<Position, BotTabSimple> PositionProfitActivateEvent;

Событие PositionProfitActivateEvent срабатывает в момент активации профит заявки для позиции. В качестве аргументов передает позицию, по которой сработал профит и вкладку, которой она принадлежит. Может применяться для различных сценариев, например, для отмены связанных заявок, создания реверсивных стратегий.

 

public event Action<Position, BotTabSimple> PositionBuyAtStopActivateEvent;

Данное событие сигнализирует об активации условной заявки на покупку, создаваемой методами BuyAtStop. В следствии чего создается новая позиция. В качестве аргументов передаются созданная позиция и вкладка, которой она принадлежит.

 

public event Action<Position, BotTabSimple> PositionSellAtStopActivateEvent;

Данное событие сигнализирует об активации условной заявки на продажу, создаваемой методами SellAtStop, в следствии чего создается новая позиция. В качестве аргументов передаются созданная позиция и вкладка, которой она принадлежит.

16:34
170
FAQ

Комментарии

Нет комментариев. Ваш будет первым!