Список сделок

Для получения списка сделок существует метод ISecurity.GetTrades(...). Он имеет две реализации:

  • GetTrades(int barNum) - Получить список сделок по номеру свечи.

  • GetTrades(int firstBarIndex, int lastBarIndex) - Получить список сделок по нескольким свечам.

В обоих случаях методы возвращают список объектов ITrade.

Интерфейс ITrade

Date

Дата и время

TradeNo

Номер сделки

Direction

Направление сделки (Buy, Sell)

Price

Цена

Quantity

Количество

OpenInterest

Открытый интерес

Пример, получаем последние 5 сделок и выводи их в лог:

using System; using System.Linq; using System.Text; using TSLab.Script; using TSLab.Script.Handlers; namespace MyLib { public class GetTrades : IExternalScript { public void Execute(IContext ctx, ISecurity sec) { // Получаем список сделок для последнего бара и берем только последние 5 штук. var trades = sec.GetTrades(ctx.BarsCount - 1).Reverse().Take(5).ToList(); var sb = new StringBuilder(); // Выводим информацию по каждой сделке в лог. foreach (var trade in trades) { sb.AppendFormat("Date: {0}; ", trade.Date); sb.AppendFormat("TradeNo: {0}; ", trade.TradeNo); sb.AppendFormat("Direction: {0}; ", trade.Direction); sb.AppendFormat("Price: {0}; ", trade.Price); sb.AppendFormat("Quantity: {0}; ", trade.Quantity); sb.AppendFormat("OpenInterest: {0}; ", trade.OpenInterest); sb.AppendLine(); } ctx.Log(sb.ToString()); } } }

Информация из TSLab полностью совпадает с данными из терминала.