ReportSource
Источник данных отчета, который позволяет внешнему коду добавлять информацию и поддерживает агрегацию.
Реализует: IReportSource
Конструкторы
public ReportSource()
reportSource = ReportSource()
Инициализирует новый экземпляр ReportSource.
Свойства
public TimeSpan AggregationInterval { get; set; }
value = reportSource.AggregationInterval
reportSource.AggregationInterval = value
Временной интервал для агрегации. Заказы/торговли в пределах одного интервала группируются вместе. По умолчанию 1 час. Устанавливается до нуля для отключения временной группировки (предметы будут агрегироваться по счету только при превышении порога).
public decimal? Commission { get; set; }
value = reportSource.Commission
reportSource.Commission = value
Общая комиссия.
public TimeSpan? Latency { get; set; }
value = reportSource.Latency
reportSource.Latency = value
Полная задержка.
public int MaxOrdersBeforeAggregation { get; set; }
value = reportSource.MaxOrdersBeforeAggregation
reportSource.MaxOrdersBeforeAggregation = value
Максимальное количество ордеров до запуска автоматической агрегации. Дефолт 10000. Устанавливается до 0 для отключения автоматической агрегации.
public int MaxTradesBeforeAggregation { get; set; }
value = reportSource.MaxTradesBeforeAggregation
reportSource.MaxTradesBeforeAggregation = value
Максимальное количество сделок до запуска автоматической агрегации. Дефолт 10000. Устанавливается до 0 для отключения автоматической агрегации.
public IEnumerable<ReportOrder> Orders { get; }
value = reportSource.Orders
Коллекция заказов.
public int OrdersCount { get; }
value = reportSource.OrdersCount
Текущие заказы на счету.
public IEnumerable<ReportTrade> OwnTrades { get; }
value = reportSource.OwnTrades
Собственная коллекция.
public IEnumerable<ValueTuple<string, object>> Parameters { get; }
value = reportSource.Parameters
Расчетные параметры.
public decimal PnL { get; set; }
value = reportSource.PnL
reportSource.PnL = value
Общая прибыль-убыток.
public decimal Position { get; set; }
value = reportSource.Position
reportSource.Position = value
Текущая позиционная стоимость.
public IEnumerable<ReportPosition> Positions { get; }
value = reportSource.Positions
Список позиций.
public decimal? Slippage { get; set; }
value = reportSource.Slippage
reportSource.Slippage = value
Тотальное проскальзывание.
public IEnumerable<ValueTuple<string, object>> StatisticParameters { get; }
value = reportSource.StatisticParameters
Статистические параметры как пары имён-значений.
public TimeSpan TotalWorkingTime { get; set; }
value = reportSource.TotalWorkingTime
reportSource.TotalWorkingTime = value
Общее время действия стратегии.
public int TradesCount { get; }
value = reportSource.TradesCount
Текущие сделки подсчитывают.
Методы
public ReportSource AddOrder(long? id, long transactionId, SecurityId securityId, Sides side, DateTime time, decimal price, OrderStates? state, decimal? balance, decimal? volume, OrderTypes? type)
result = reportSource.AddOrder(id, transactionId, securityId, side, time, price, state, balance, volume, type)
Добавьте заказ с индивидуальными параметрами.
public ReportSource AddOrder(ReportOrder order)
result = reportSource.AddOrder(order)
Добавить заказ.
- order
- Приказ добавить.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddOrders(IEnumerable<ReportOrder> orders)
result = reportSource.AddOrders(orders)
Добавьте несколько заказов.
- orders
- Заказы на добавление.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddParameter(string name, object value)
result = reportSource.AddParameter(name, value)
Добавьте параметр.
- name
- Имя параметра.
- value
- Значение параметра.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddParameters(IEnumerable<ValueTuple<string, object>> parameters)
result = reportSource.AddParameters(parameters)
Добавьте несколько параметров.
- parameters
- Параметры для добавления.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddPosition(ReportPosition position)
result = reportSource.AddPosition(position)
Добавьте позицию туда и обратно.
- position
- Позицию туда и обратно добавить.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddPositions(IEnumerable<ReportPosition> positions)
result = reportSource.AddPositions(positions)
Добавьте несколько позиций туда и обратно.
- positions
- Позиции для добавления.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddStatisticParameter(string name, object value)
result = reportSource.AddStatisticParameter(name, value)
Добавьте статистический параметр.
- name
- Имя параметра.
- value
- Значение параметра.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddStatisticParameters(IEnumerable<ValueTuple<string, object>> parameters)
result = reportSource.AddStatisticParameters(parameters)
Добавьте несколько статистических параметров.
- parameters
- Параметры для добавления.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddTrade(long? tradeId, long orderTransactionId, SecurityId securityId, DateTime time, decimal tradePrice, decimal orderPrice, decimal volume, Sides side, long? orderId, decimal? slippage, decimal? pnl, decimal? position)
result = reportSource.AddTrade(tradeId, orderTransactionId, securityId, time, tradePrice, orderPrice, volume, side, orderId, slippage, pnl, position)
Добавьте сделку с индивидуальными параметрами.
public ReportSource AddTrade(ReportTrade trade)
result = reportSource.AddTrade(trade)
Добавить сделку.
- trade
- Торгуйте, чтобы добавить.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AddTrades(IEnumerable<ReportTrade> trades)
result = reportSource.AddTrades(trades)
Добавьте несколько сделок.
- trades
- Торги для добавления.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AggregateOrders(TimeSpan interval)
result = reportSource.AggregateOrders(interval)
Вручную запускайте агрегацию заказов.
- interval
- Временной интервал группировки. Используйте ноль для группировки без времени.
Возвращает: Этот экземпляр для цепочки.
public ReportSource AggregateTrades(TimeSpan interval)
result = reportSource.AggregateTrades(interval)
Вручную запускайте агрегацию сделок.
- interval
- Временной интервал группировки. Используйте ноль для группировки без времени.
Возвращает: Этот экземпляр для цепочки.
public ReportSource Clear()
result = reportSource.Clear()
Очистить все данные.
Возвращает: Этот экземпляр для цепочки.
public ReportSource ClearOrders()
result = reportSource.ClearOrders()
Очистить все заказы.
Возвращает: Этот экземпляр для цепочки.
public ReportSource ClearParameters()
result = reportSource.ClearParameters()
Очистите все параметры.
Возвращает: Этот экземпляр для цепочки.
public ReportSource ClearPositions()
result = reportSource.ClearPositions()
Очистите все позиции.
Возвращает: Этот экземпляр для цепочки.
public ReportSource ClearStatisticParameters()
result = reportSource.ClearStatisticParameters()
Очистить все статистические параметры.
Возвращает: Этот экземпляр для цепочки.
public ReportSource ClearTrades()
result = reportSource.ClearTrades()
Очистить все сделки.
Возвращает: Этот экземпляр для цепочки.