Strategy

StockSharp.Algo.Strategies

Базовый класс для всех торговых стратегий.

Наследует: BaseLogReceiver

Реализует: INotifyPropertyChangedEx, INotifyPropertyChanged, IMarketRuleContainer, ILogReceiver, ILogSource, IDisposable, ICloneable<Strategy>, ICloneable, IMarketDataProvider, ISubscriptionProvider, ISecurityProvider, ISecurityMessageProvider, ITransactionProvider, IScheduledTask, ICustomTypeDescriptor, ITimeProvider, IPortfolioProvider, IPositionProvider, IReportSource

Конструкторы

Strategy
public Strategy()
strategy = Strategy()

Инициализирует новый экземпляр стратегии.

Свойства

AggregationInterval
public TimeSpan AggregationInterval { get; set; }
value = strategy.AggregationInterval
strategy.AggregationInterval = value

Временной интервал для агрегации. Заказы/торговли в пределах одного интервала группируются вместе. По умолчанию 1 час. Устанавливается до нуля для отключения временной группировки.

CancelOrdersWhenStopping
public bool CancelOrdersWhenStopping { get; set; }
value = strategy.CancelOrdersWhenStopping
strategy.CancelOrdersWhenStopping = value

Отменить активные заказы на остановке.

ChildStrategies
public INotifyList<Strategy> ChildStrategies { get; }
value = strategy.ChildStrategies

Стратегии субсидиарной торговли.

CommentMode
public StrategyCommentModes CommentMode { get; set; }
value = strategy.CommentMode
strategy.CommentMode = value

Комментарий по имени или Id.

Commission
public decimal? Commission { get; private set; }
value = strategy.Commission
strategy.Commission = value

Общая комиссия.

Connector
public virtual Connector Connector { get; set; }
value = strategy.Connector
strategy.Connector = value

Подключение к торговой системе.

CurrentTime
public override DateTime CurrentTime { get; }
value = strategy.CurrentTime

Текущее время UTC.

DisposeOnStop
public bool DisposeOnStop { get; set; }
value = strategy.DisposeOnStop
strategy.DisposeOnStop = value

Автоматически очищать ресурсы, используемые стратегией, когда она останавливается (state ProcessState становится равным Stopped).

Environment
public SettingsStorage Environment { get; }
value = strategy.Environment

Параметры стратегической среды.

ErrorState
public LogLevels ErrorState { get; private set; }
value = strategy.ErrorState
strategy.ErrorState = value

Состояние ошибки.

HideSecurityAndPortfolioParameters
public static bool HideSecurityAndPortfolioParameters { get; set; }
value = Strategy.HideSecurityAndPortfolioParameters
Strategy.HideSecurityAndPortfolioParameters = value

Сделайте финансовый инструмент и портфель недоступными для просмотра.

HistoryCalculated
protected virtual TimeSpan? HistoryCalculated { get; }
value = strategy.HistoryCalculated

Рассчитывается из кодовой версии HistorySize.

HistorySize
public TimeSpan? HistorySize { get; set; }
value = strategy.HistorySize
strategy.HistorySize = value

История для инициализации стратегии на Live-трейдинге.

Id
public override Guid Id { get; set; }
value = strategy.Id
strategy.Id = value

Идентификатор стратегии.

Indicators
public INotifyList<IIndicator> Indicators { get; }
value = strategy.Indicators

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

IndicatorSource
public Level1Fields? IndicatorSource { get; set; }
value = strategy.IndicatorSource
strategy.IndicatorSource = value

Источник по умолчанию для индикаторов, когда источник не установлен.

IsBacktesting
public bool IsBacktesting { get; }
value = strategy.IsBacktesting

Определяет Connector is HistoryEmulationConnector.

IsFormed
public virtual bool IsFormed { get; }
value = strategy.IsFormed

Стратегия полностью сформирована.

IsOnline
public bool IsOnline { get; private set; }
value = strategy.IsOnline
strategy.IsOnline = value

Это означает, что стратегия запущена, и все подписки находятся в онлайн-состоянии.

IsRulesSuspended
public bool IsRulesSuspended { get; }
value = strategy.IsRulesSuspended

Is rules execution suspended.

KeepStatistics
public bool KeepStatistics { get; set; }
value = strategy.KeepStatistics
strategy.KeepStatistics = value

Сохраняйте торговую статистику (заказы, сделки, прибыль и т.д.) после перезапуска.

LastError
public Exception LastError { get; private set; }
value = strategy.LastError
strategy.LastError = value

Последняя ошибка, которая заставила стратегию остановиться.

Latency
public TimeSpan? Latency { get; private set; }
value = strategy.Latency
strategy.Latency = value

Полная задержка.

LogLevel
public override LogLevels LogLevel { get; set; }
value = strategy.LogLevel
strategy.LogLevel = value

Уровень для выполнения этого правила логарифмирования.

MaxOrdersBeforeAggregation
public int MaxOrdersBeforeAggregation { get; set; }
value = strategy.MaxOrdersBeforeAggregation
strategy.MaxOrdersBeforeAggregation = value

Максимальное количество ордеров до запуска автоматической агрегации. Дефолт 10000. Устанавливается до 0 для отключения автоматической агрегации.

MaxTradesBeforeAggregation
public int MaxTradesBeforeAggregation { get; set; }
value = strategy.MaxTradesBeforeAggregation
strategy.MaxTradesBeforeAggregation = value

Максимальное количество сделок до запуска автоматической агрегации. Дефолт 10000. Устанавливается до 0 для отключения автоматической агрегации.

MyTrades
public IEnumerable<MyTrade> MyTrades { get; }
value = strategy.MyTrades

Торговля, сопоставленная во время операции стратегии.

Name
public override string Name { get; set; }
value = strategy.Name
strategy.Name = value

Название стратегии.

NameGenerator
public StrategyNameGenerator NameGenerator { get; }
value = strategy.NameGenerator

Генератор названий стратегий.

OrderBookSources
public virtual IEnumerable<IOrderBookSource> OrderBookSources { get; }
value = strategy.OrderBookSources

Все возможные источники IOrderBookMessage, которые могут быть получены по адресу OrderBookDrawing.

OrderLookup
public Subscription OrderLookup { get; }
value = strategy.OrderLookup

Получить глобальную подписку на поиск заказа.

Orders
public IEnumerable<Order> Orders { get; }
value = strategy.Orders

Заказы, зарегистрированные в рамках стратегии.

OrdersKeepTime
public TimeSpan OrdersKeepTime { get; set; }
value = strategy.OrdersKeepTime
strategy.OrdersKeepTime = value

Время хранения Заказов в памяти. По умолчанию оно равно 2 дня. Если значение установлено в нуле, заказы не будут удалены.

Parameters
public StrategyParameterDictionary Parameters { get; }
value = strategy.Parameters

Параметры стратегии.

PnL
public decimal PnL { get; }
value = strategy.PnL

Совокупная стоимость убытка без учета комиссии комиссии.

PnLManager
public IPnLManager PnLManager { get; set; }
value = strategy.PnLManager
strategy.PnLManager = value

Менеджер прибылей-убытков.

Portfolio
public Portfolio Portfolio { get; set; }
value = strategy.Portfolio
strategy.Portfolio = value

Портфолио.

PortfolioLookup
public Subscription PortfolioLookup { get; }
value = strategy.PortfolioLookup

Получить глобальную подписку на поиск портфолио.

PortfolioProvider
public IPortfolioProvider PortfolioProvider { get; set; }
value = strategy.PortfolioProvider
strategy.PortfolioProvider = value

IPortfolioProvider

Position
public decimal Position { get; set; }
value = strategy.Position
strategy.Position = value

Позиция совокупная стоимость.

Positions
public IEnumerable<Position> Positions { get; }
value = strategy.Positions

Список позиций.

ProcessState
public virtual ProcessStates ProcessState { get; private set; }
value = strategy.ProcessState
strategy.ProcessState = value

Операционное состояние.

ReportSource
public ReportSource ReportSource { get; }
value = strategy.ReportSource

Источник данных с поддержкой агрегации.

RiskFreeRate
public decimal RiskFreeRate { get; set; }
value = strategy.RiskFreeRate
strategy.RiskFreeRate = value

Годовая безрисковая ставка (e.g, 0,03 = 3%).

RiskManager
public IRiskManager RiskManager { get; set; }
value = strategy.RiskManager
strategy.RiskManager = value

Менеджер по контролю рисков.

RiskRules
public IEnumerable<IRiskRule> RiskRules { get; set; }
value = strategy.RiskRules
strategy.RiskRules = value

Правила риска.

Rules
public IMarketRuleList Rules { get; }
value = strategy.Rules

Перечень правил расчета комиссии.

Security
public Security Security { get; set; }
value = strategy.Security
strategy.Security = value

финансовый инструмент.

Slippage
public decimal? Slippage { get; private set; }
value = strategy.Slippage
strategy.Slippage = value

Тотальное проскальзывание.

StartedTime
public DateTime StartedTime { get; private set; }
value = strategy.StartedTime
strategy.StartedTime = value

Время начала стратегии.

StatisticManager
public IStatisticManager StatisticManager { get; protected set; }
value = strategy.StatisticManager
strategy.StatisticManager = value

Менеджер статистики.

TargetAlgoFactory
public Func<Sides, decimal, IPositionModifyAlgo> TargetAlgoFactory { get; set; }
value = strategy.TargetAlgoFactory
strategy.TargetAlgoFactory = value

Завод по созданию алгоритмов изменения позиции для TargetPositionManager. Default создает MarketOrderAlgo.

TargetPositionManager
public PositionTargetManager TargetPositionManager { get; }
value = strategy.TargetPositionManager

Менеджер по позиционированию.

TotalWorkingTime
public TimeSpan TotalWorkingTime { get; private set; }
value = strategy.TotalWorkingTime
strategy.TotalWorkingTime = value

Общее время действия стратегии меньше периодов времени, когда стратегия была остановлена.

TradingMode
public StrategyTradingModes TradingMode { get; set; }
value = strategy.TradingMode
strategy.TradingMode = value

Разрешить торговлю.

UnrealizedPnLInterval
public TimeSpan UnrealizedPnLInterval { get; set; }
value = strategy.UnrealizedPnLInterval
strategy.UnrealizedPnLInterval = value

Интервал для пересчета нереализованной прибыли. Значение по умолчанию 1 минута.

UnsubscribeOnStop
public bool UnsubscribeOnStop { get; set; }
value = strategy.UnsubscribeOnStop
strategy.UnsubscribeOnStop = value

Отмените подписку, пока стратегия прекращается.

Volume
public virtual decimal Volume { get; set; }
value = strategy.Volume
strategy.Volume = value

Операционный объем.

WaitAllTrades
public bool WaitAllTrades { get; set; }
value = strategy.WaitAllTrades
strategy.WaitAllTrades = value

Остановить стратегию можно только после получения всех сделок по зарегистрированным заказам.

WaitRulesOnStop
public bool WaitRulesOnStop { get; set; }
value = strategy.WaitRulesOnStop
strategy.WaitRulesOnStop = value

Правила ожидания должны закончиться, прежде чем стратегия перейдет в состояние остановки.

WorkingTime
public WorkingTime WorkingTime { get; set; }
value = strategy.WorkingTime
strategy.WorkingTime = value

Граница времени, в пределах которой должны быть переведены свечи для дачи рядов.

Методы

Alert
protected void Alert(AlertNotifications type, string message)
strategy.Alert(type, message)

Отправьте уведомление с названием стратегии в заголовке.

type
Тип оповещения.
message
Текст оповещения.
Alert
protected void Alert(AlertNotifications type, string caption, string message)
strategy.Alert(type, caption, message)

Отправить уведомление о тревоге.

type
Тип оповещения.
caption
Заголовок сигнала.
message
Текст оповещения.
AlertLog
protected void AlertLog(string message)
strategy.AlertLog(message)

Отправить уведомление о предупреждении журнала.

message
Текст оповещения.
AlertPopup
protected void AlertPopup(string message)
strategy.AlertPopup(message)

Отправить всплывающее уведомление.

message
Текст оповещения.
AlertSound
protected void AlertSound(string message)
strategy.AlertSound(message)

Отправить звуковое уведомление.

message
Текст оповещения.
ApplyCommand
public virtual void ApplyCommand(CommandMessage cmdMsg)
strategy.ApplyCommand(cmdMsg)

Применить входящую команду.

cmdMsg
Сообщение содержит информацию о команде на изменение состояния.
BuyLimit
public Order BuyLimit(decimal price, decimal? volume, Security security)
result = strategy.BuyLimit(price, volume, security)

Создать инициализированный объект ордера на покупку.

price
Цена.
volume
Объем. Если значение передается, то используется значение объема.
security
Финансовый инструмент. Если передается значение, используется стоимость финансового инструмента.

Возвращает: Инициализированный объект заказа.

BuyMarket
public Order BuyMarket(decimal? volume, Security security)
result = strategy.BuyMarket(volume, security)

Создать инициализированный объект ордера на покупку по рыночной цене.

volume
Объем. Если значение передается, то используется значение объема.
security
Финансовый инструмент. Если передается значение, используется стоимость финансового инструмента.

Возвращает: Инициализированный объект заказа.

CanAttach
protected virtual bool CanAttach(Order order)
result = strategy.CanAttach(order)

Определяет, что указанный ордер может принадлежать стратегии.

order
Заказ.

Возвращает: Проверьте результат.

CancelActiveOrders
public void CancelActiveOrders(bool? isStopOrder, Portfolio portfolio, Sides? direction, ExchangeBoard board, Security security, SecurityTypes? securityType, long? transactionId)
strategy.CancelActiveOrders(isStopOrder, portfolio, direction, board, security, securityType, transactionId)

Отменить все активные ордера (стоповые и обычные).

isStopOrder
, если отменить только стоп-ордеры, - если обычные ордера, - оба.
portfolio
Портфолио. Если значение равно , то портфель не соответствует фильтру отмены ордеров.
direction
Сторона заказа. Если значение равно , направление не используется.
board
Торговая доска. Если значение равно , то доска не соответствует фильтру отмены ордеров.
security
Инструмент. Если значение равно , то инструмент не соответствует фильтру отмены ордеров.
securityType
тип финансового инструмента. Если значение равно , тип не используется.
transactionId
Идентификатор транзакции отмены заказа.
CancelOrder
public void CancelOrder(Order order)
strategy.CancelOrder(order)

Отмените заказ.

order
Заказ, который следует отменить.
CancelTargetPosition
public void CancelTargetPosition(Security security, Portfolio portfolio)
strategy.CancelTargetPosition(security, portfolio)

Отменить целевую позицию для указанного финансового инструмента и портфеля.

security
финансовый инструмент.
portfolio
Портфолио.
CancelTargetPosition
public void CancelTargetPosition()
strategy.CancelTargetPosition()

Отменить целевую позицию для финансового инструмента и портфеля стратегии.

CanTrade
protected virtual bool CanTrade(Security security, Portfolio portfolio, Sides side, decimal volume, string noTradeReason)
result = strategy.CanTrade(security, portfolio, side, volume, noTradeReason)

Проверьте, можно ли торговать с информацией о заказе.

security
финансовый инструмент для торговли.
portfolio
Портфель для торговли.
side
Сторона заказа.
volume
Объем заказа.
noTradeReason
Причина, по которой торговля запрещена.

Возвращает: Верно, если торговля разрешена.

Clone
public virtual Strategy Clone()
result = strategy.Clone()

Создает глубокую копию DataSeries.

ClosePosition
public Order ClosePosition(Security security, Portfolio portfolio)
result = strategy.ClosePosition(security, portfolio)

Закрыть открытую позицию по рынку (регистрировать ордер типа Market).

security
финансовый инструмент. В противном случае будет получена стоимость финансового инструмента.
portfolio
Портфолио. Если не передать, будет получено значение из Портфолио.

Возвращает: Инициализированный объект заказа.

CopyTo
protected virtual void CopyTo(Strategy copy)
strategy.CopyTo(copy)

Скопируйте настройки в .

copy
Стратегия
CreateChartArea
protected IChartArea CreateChartArea()
result = strategy.CreateChartArea()

Создайте область диаграммы.

Возвращает: IChartArea

CreateClone
protected virtual Strategy CreateClone()
result = strategy.CreateClone()

Создать объект-клон (неинициализированный).

Возвращает: Стратегия

CreateOrder
public Order CreateOrder(Sides side, decimal price, decimal? volume)
result = strategy.CreateOrder(side, price, volume)

Создать инициализированный объект заказа.

side
Сторона заказа.
price
Цена. Если значение передано, ордер регистрируется по рыночной цене.
volume
Объем. Если значение передается, то используется значение объема.

Возвращает: Инициализированный объект заказа.

CreateTimer
protected ITimerHandler CreateTimer(TimeSpan interval, Action callback)
result = strategy.CreateTimer(interval, callback)

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

interval
Интервал таймера.
callback
Обратный вызов для выполнения.

Возвращает: ITimerHandler

DisposeManaged
protected override void DisposeManaged()
strategy.DisposeManaged()

Освободите ресурсы.

DrawCandles
protected IChartCandleElement DrawCandles(IChartArea area, Subscription subscription)
result = strategy.DrawCandles(area, subscription)

Нарисуйте свечи на графике.

area
IChartArea
subscription
Подписка

Возвращает: IChartCandleElement

DrawCandles``1
protected IChartCandleElement DrawCandles<T>(IChartArea area, ISubscriptionHandler<T> subscription)
result = strategy.DrawCandles(area, subscription)

Нарисуйте свечи на графике.

area
IChartArea
subscription
SubscriptionHandler

Возвращает: IChartCandleElement

DrawIndicator
protected IChartIndicatorElement DrawIndicator(IChartArea area, IIndicator indicator, Color? color, Color? additionalColor)
result = strategy.DrawIndicator(area, indicator, color, additionalColor)

Нарисуйте индикатор на графике.

area
IChartArea
indicator
IИндикатор
color
Цвет
additionalColor
AdditionalColor

Возвращает: IChartIndicatorElement

DrawOrderBook
public void DrawOrderBook(Subscription subscription, IOrderBookSource source, IOrderBookMessage book)
strategy.DrawOrderBook(subscription, source, book)

Нарисуйте IOrderBookMessage.

subscription
Подписка
source
IOrderBookSource
book
IOrderBookMessage
DrawOrderBookOrder
public void DrawOrderBookOrder(Subscription subscription, IOrderBookSource source, Order order)
strategy.DrawOrderBookOrder(subscription, source, order)

Нарисуйте заказ книги заказов.

subscription
Подписка
source
IOrderBookSource
order
Заказ.
DrawOrderBookOrderFail
public void DrawOrderBookOrderFail(Subscription subscription, IOrderBookSource source, OrderFail fail)
strategy.DrawOrderBookOrderFail(subscription, source, fail)

Ошибка заказа книги заказов на розыгрыш.

subscription
Подписка
source
IOrderBookSource
fail
Заказ провалился.
DrawOrders
protected IChartOrderElement DrawOrders(IChartArea area)
result = strategy.DrawOrders(area)

Нарисуйте ордера на графике.

area
IChartArea

Возвращает: IChartOrderElement

DrawOwnTrades
protected IChartTradeElement DrawOwnTrades(IChartArea area)
result = strategy.DrawOwnTrades(area)

Нарисуйте сделки на графике.

area
IChartArea

Возвращает: IChartTradeElement

EditOrder
public void EditOrder(Order order, Order changes)
strategy.EditOrder(order, changes)

Отредактируйте заказ.

order
Заказ.
changes
Изменения в заказе.
EnsureOrderMetadata
private void EnsureOrderMetadata(Order order, DateTime fallbackTime)
strategy.EnsureOrderMetadata(order, fallbackTime)

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

order
Заказ.
fallbackTime
Резервное время.
GetAlertService
public IAlertNotificationService GetAlertService()
result = strategy.GetAlertService()

Получить IAlertNotificationService, связанный с переданной стратегией.

Возвращает: Служба оповещений.

GetChart
public IChart GetChart()
result = strategy.GetChart()

Получить IChart, связанный с переданной стратегией.

Возвращает: Диаграмма.

GetOptionDesk
public IOptionDesk GetOptionDesk()
result = strategy.GetOptionDesk()

Чтобы получить IOptionDesk.

Возвращает: IOptionDesk.

GetOptionPositionChart
public IOptionPositionChart GetOptionPositionChart()
result = strategy.GetOptionPositionChart()

Получить IOptionPositionChart, связанный с переданной стратегией.

Возвращает: Диаграмма.

GetParameters
public virtual IStrategyParam[] GetParameters()
result = strategy.GetParameters()

Получить параметры.

Возвращает: Параметры.

GetPortfolio
public Portfolio GetPortfolio()
result = strategy.GetPortfolio()

Получите портфолио или бросьте InvalidOperationException, если его нет.

Возвращает: Портфолио

GetPositionValue
public decimal? GetPositionValue(Security security, Portfolio portfolio)
result = strategy.GetPositionValue(security, portfolio)

Получите позицию.

security
финансовый инструмент.
portfolio
Портфолио.

Возвращает: Позиция.

GetSecurity
public Security GetSecurity()
result = strategy.GetSecurity()

Получите финансовый инструмент или бросьте InvalidOperationException, если его нет.

Возвращает: финансовый инструмент

GetSecurityValue``1
public T GetSecurityValue<T>(Level1Fields field)
result = strategy.GetSecurityValue(field)

Чтобы получить значение рыночных данных для инструмента стратегии.

field
Поле рыночных данных.

Возвращает: Значение поля. Если данных нет, они будут возвращены.

GetStatValue``2
protected TValue GetStatValue<TParam, TValue>(TValue fallback)
result = strategy.GetStatValue(fallback)

Получите значение статистического параметра по его типу.

fallback
Резервное значение, если параметр не найден.

Возвращает: Значение параметра или .

GetTargetPosition
public decimal? GetTargetPosition(Security security, Portfolio portfolio)
result = strategy.GetTargetPosition(security, portfolio)

Получите целевую позицию для указанного финансового инструмента и портфеля.

security
финансовый инструмент.
portfolio
Портфолио.

Возвращает: Целевая позиция или нулевое значение, если не установлено.

GetTargetPosition
public decimal? GetTargetPosition()
result = strategy.GetTargetPosition()

Получите целевую позицию по финансовому инструменту и портфелю стратегии.

Возвращает: Целевая позиция или нулевое значение, если не установлено.

GetWorkingPortfolios
public virtual IEnumerable<Portfolio> GetWorkingPortfolios()
result = strategy.GetWorkingPortfolios()

Получите все портфели, необходимые для стратегии.

Возвращает: Портфели.

GetWorkingSecurities
public virtual IEnumerable<ValueTuple<Security, DataType>> GetWorkingSecurities()
result = strategy.GetWorkingSecurities()

Получите все финансовые инструменты, необходимые для стратегии.

Возвращает: финансовые инструменты.

InitStartValues
protected void InitStartValues()
strategy.InitStartValues()

Иниц.

IsFormedAndOnline
public bool IsFormedAndOnline()
result = strategy.IsFormedAndOnline()

IsFormed и IsOnline.

Возвращает: Проверьте результат.

IsFormedAndOnlineAndAllowTrading
public bool IsFormedAndOnlineAndAllowTrading(StrategyTradingModes required)
result = strategy.IsFormedAndOnlineAndAllowTrading(required)

IsFormedAndOnline и TradingMode.

required
Обязательное действие.

Возвращает: Проверьте результат.

IsOrderEditable
public bool? IsOrderEditable(Order order)
result = strategy.IsOrderEditable(order)

Определяет указанный заказ, можно редактировать с помощью Order).

order
Заказ.

Возвращает: если заказ доступен для редактирования, порядок не может быть изменен, что означает отсутствие информации.

IsOrderReplaceable
public bool? IsOrderReplaceable(Order order)
result = strategy.IsOrderReplaceable(order)

Определяет указанный порядок, может быть заменен на Order).

order
Заказ.

Возвращает: если заказ сменный, заказ не может быть заменен, значит нет информации.

Load
public override void Load(SettingsStorage storage)
strategy.Load(storage)

Загрузить настройки.

storage
Хранилище настроек.
LookupByIdAsync
public ValueTask<Security> LookupByIdAsync(SecurityId id, CancellationToken cancellationToken)
result = strategy.LookupByIdAsync(id, cancellationToken)

Получить инструмент по идентификатору.

id
идентификатор финансового инструмента.
cancellationToken
CancellationToken

Возвращает: Приобретенный инструмент. Если нет инструмента по заданным критериям, возвращается.

OnError
protected virtual void OnError(Strategy strategy, Exception error)
strategy.OnError(strategy, error)

Обработка ошибки, возникшей в результате работы стратегии.

strategy
Стратегия.
error
Ошибка.
OnOrderReceived
protected virtual void OnOrderReceived(Order order)
strategy.OnOrderReceived(order)

Заказ получен.

order
Заказать
OnOrderRegistered
protected virtual void OnOrderRegistered(Order order)
strategy.OnOrderRegistered(order)

Чтобы вызвать событие OrderRegistered.

order
Заказ.
OnOrderRegisterFailed
protected virtual void OnOrderRegisterFailed(OrderFail fail, bool calcRisk)
strategy.OnOrderRegisterFailed(fail, calcRisk)

Метод, вызываемый при ошибке регистрации ордера стратегии.

fail
Ошибка регистрации заказа.
calcRisk
Вызов риск-менеджера.
OnOrderRegistering
protected virtual void OnOrderRegistering(Order order)
strategy.OnOrderRegistering(order)

Чтобы вызвать событие OrderRegistering.

order
Заказ.
OnOrderReRegistering
protected virtual void OnOrderReRegistering(Order oldOrder, Order newOrder)
strategy.OnOrderReRegistering(oldOrder, newOrder)

Чтобы вызвать событие OrderReRegistering.

oldOrder
Отмена заказа.
newOrder
Новый порядок регистрации.
OnOwnTradeReceived
protected virtual void OnOwnTradeReceived(MyTrade trade)
strategy.OnOwnTradeReceived(trade)

Собственная торговля получена.

trade
MyTrade
OnPositionReceived
protected virtual void OnPositionReceived(Position position)
strategy.OnPositionReceived(position)

Должность получена.

position
Позиция
OnReseted
protected virtual void OnReseted()
strategy.OnReseted()

Он вызывается из метода Reset.

OnStarted
protected virtual void OnStarted(DateTimeOffset time)
strategy.OnStarted(time)

Метод вызывается, когда был вызван метод Start и состояние ProcessState приняло значение Started.

OnStarted
protected virtual void OnStarted()
strategy.OnStarted()

Метод вызывается, когда был вызван метод Start и состояние ProcessState приняло значение Started.

OnStarted2
protected virtual void OnStarted2(DateTime time)
strategy.OnStarted2(time)

Метод вызывается, когда был вызван метод Start и состояние ProcessState приняло значение Started.

OnStopped
protected virtual void OnStopped()
strategy.OnStopped()

Метод вызывается, когда состояние процесса ProcessState принимает значение Остановлено.

OnStopping
protected virtual void OnStopping()
strategy.OnStopping()

Метод вызывается, когда состояние процесса ProcessState принимает значение Остановка.

Param``1
public StrategyParam<T> Param<T>(string id, T initialValue)
result = strategy.Param(id, initialValue)

Инициализирует новый экземпляр StrategyParam.

id
Идентификатор параметра.
initialValue
Начальное значение.

Возвращает: Параметр стратегии.

Prepare
public void Prepare()
strategy.Prepare()

Подготовьте данные для формирования отчета. Вызовите это перед доступом к каким-либо данным, чтобы убедиться, что все значения актуальны.

ProcessOrder
private void ProcessOrder(Order order, bool isChanging)
strategy.ProcessOrder(order, isChanging)

Добавить ордер в стратегию.

order
Заказ.
isChanging
Заказ поступил из события изменения.
RaiseLog
protected override void RaiseLog(LogMessage message)
strategy.RaiseLog(message)
RaiseParametersChanged
public void RaiseParametersChanged(string name)
strategy.RaiseParametersChanged(name)

Для вызова событий ParametersChanged и PropertyChanged.

name
Имя параметра.
RaiseProcessStateChanged
protected void RaiseProcessStateChanged(Strategy strategy)
strategy.RaiseProcessStateChanged(strategy)

Чтобы вызвать событие ProcessStateChanged.

strategy
Стратегия.
RaiseReseted
private void RaiseReseted()
strategy.RaiseReseted()

Чтобы вызвать событие Reseted.

RegisterOrder
public void RegisterOrder(Order order)
strategy.RegisterOrder(order)

Зарегистрируйте новый заказ.

order
Детали регистрации.
ReRegisterOrder
public void ReRegisterOrder(Order oldOrder, Order newOrder)
strategy.ReRegisterOrder(oldOrder, newOrder)

Перерегистрируйте заказ.

oldOrder
Отмена заказа.
newOrder
Новый порядок регистрации.
Reset
public void Reset()
strategy.Reset()

Повторно инициализировать торговый алгоритм. Он вызывается после инициализации объекта стратегии и загрузки сохраненных параметров.

SafeGetConnector
public IConnector SafeGetConnector()
result = strategy.SafeGetConnector()

Чтобы получить стратегию, получим Connector. Если оно не инициализировано, исключение будет отброшено.

Возвращает: Connector.

Save
public void Save(SettingsStorage storage, bool saveStatistics, bool saveSystemParameters)
strategy.Save(storage, saveStatistics, saveSystemParameters)

Сохраните настройки.

storage
SettingsStorage
saveStatistics
KeepStatistics
saveSystemParameters
Сохраните параметры системы.
Save
public override void Save(SettingsStorage storage)
strategy.Save(storage)

Сохраните настройки.

storage
Хранилище настроек.
SellLimit
public Order SellLimit(decimal price, decimal? volume, Security security)
result = strategy.SellLimit(price, volume, security)

Создать инициализированный объект ордера на продажу.

price
Цена.
volume
Объем. Если значение передается, то используется значение объема.
security
Финансовый инструмент. Если передается значение, используется стоимость финансового инструмента.

Возвращает: Инициализированный объект заказа.

SellMarket
public Order SellMarket(decimal? volume, Security security)
result = strategy.SellMarket(volume, security)

Создать инициализированный объект ордера на продажу по рыночной цене.

volume
Объем. Если значение передается, то используется значение объема.
security
Финансовый инструмент. Если передается значение, используется стоимость финансового инструмента.

Возвращает: Инициализированный объект заказа.

SetAlertService
public void SetAlertService(IAlertNotificationService service)
strategy.SetAlertService(service)

Установить IAlertNotificationService для стратегии.

service
Служба оповещений.
SetChart
public void SetChart(IChart chart)
strategy.SetChart(chart)

Чтобы установить IChart для стратегии.

chart
Диаграмма.
SetOptionDesk
public void SetOptionDesk(IOptionDesk desk)
strategy.SetOptionDesk(desk)

Чтобы установить IOptionDesk.

desk
IOptionDesk.
SetOptionPositionChart
public void SetOptionPositionChart(IOptionPositionChart chart)
strategy.SetOptionPositionChart(chart)

Чтобы установить IChart для стратегии.

chart
Диаграмма.
SetPositionValue
public void SetPositionValue(Security security, Portfolio portfolio, decimal value, DateTime time)
strategy.SetPositionValue(security, portfolio, value, time)

Установите положение.

security
финансовый инструмент.
portfolio
Портфолио.
value
Позиция.
time
Временная метка, которая будет присвоена LocalTime и ServerTime, если позиция создается заново.
SetTargetPosition
public void SetTargetPosition(decimal target)
strategy.SetTargetPosition(target)

Установите целевую позицию для финансового инструмента и портфеля стратегии.

target
Значение целевой позиции.
SetTargetPosition
public void SetTargetPosition(Security security, Portfolio portfolio, decimal target)
strategy.SetTargetPosition(security, portfolio, target)

Установите целевую позицию для указанного финансового инструмента и портфеля.

security
финансовый инструмент.
portfolio
Портфолио.
target
Значение целевой позиции.
Start
public virtual void Start()
strategy.Start()

Запустить торговый алгоритм.

StartProtection
protected void StartProtection(Unit takeProfit, Unit stopLoss, bool isStopTrailing, TimeSpan? takeTimeout, TimeSpan? stopTimeout, bool useMarketOrders, bool isLocalStop)
strategy.StartProtection(takeProfit, stopLoss, isStopTrailing, takeTimeout, stopTimeout, useMarketOrders, isLocalStop)

Защита стартового положения.

takeProfit
Возьмите зачет.
stopLoss
Стоп-смещение.
isStopTrailing
Использовать ли метод трейлинга.
takeTimeout
Ограничение по времени. Если к этому моменту защита не сработала, позиция на рынке будет закрыта.
stopTimeout
Ограничение по времени. Если к этому моменту защита не сработала, позиция на рынке будет закрыта.
useMarketOrders
Использовать ли рыночные ордера.
isLocalStop
Принудительно остановить локальную обработку независимо от возможностей адаптера.
StartTimer
protected ITimerHandler StartTimer(TimeSpan interval, Action callback)
result = strategy.StartTimer(interval, callback)

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

interval
Интервал таймера.
callback
Обратный вызов для выполнения.

Возвращает: ITimerHandler

Stop
public virtual void Stop()
strategy.Stop()

Остановить торговый алгоритм.

Stop
public void Stop(Exception error)
strategy.Stop(error)

Остановить торговый алгоритм по причине ошибки.

error
Ошибка.
Subscribe
public void Subscribe(Subscription subscription)
strategy.Subscribe(subscription)

Подпишитесь.

subscription
Подписка.
SubscribeCandles
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(Subscription subscription)
result = strategy.SubscribeCandles(subscription)

Подпишитесь на свечи.

subscription
Подписка

Возвращает: SubscriptionHandler

SubscribeCandles
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(DataType dt, bool isFinishedOnly, Security security)
result = strategy.SubscribeCandles(dt, isFinishedOnly, security)

Подпишитесь на свечи.

dt
DataType
isFinishedOnly
IsFinishedOnly
security
финансовый инструмент. Если финансовый инструмент не передан, то используется стоимость финансового инструмента.

Возвращает: SubscriptionHandler

SubscribeCandles
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(TimeSpan tf, bool isFinishedOnly, Security security)
result = strategy.SubscribeCandles(tf, isFinishedOnly, security)

Подпишитесь на свечи.

tf
Сроки.
isFinishedOnly
IsFinishedOnly
security
финансовый инструмент. Если финансовый инструмент не передан, то используется стоимость финансового инструмента.

Возвращает: SubscriptionHandler

SubscribeLevel1
protected ISubscriptionHandler<Level1ChangeMessage> SubscribeLevel1(Subscription subscription)
result = strategy.SubscribeLevel1(subscription)

Подпишитесь на Level1.

subscription
Подписка

Возвращает: SubscriptionHandler

SubscribeLevel1
protected ISubscriptionHandler<Level1ChangeMessage> SubscribeLevel1(Security security)
result = strategy.SubscribeLevel1(security)

Подпишитесь на Level1.

security
финансовый инструмент. Если финансовый инструмент не передан, то используется стоимость финансового инструмента.

Возвращает: SubscriptionHandler

SubscribeOrderBook
protected ISubscriptionHandler<IOrderBookMessage> SubscribeOrderBook(Subscription subscription)
result = strategy.SubscribeOrderBook(subscription)

Подпишитесь на MarketDepth.

subscription
Подписка

Возвращает: SubscriptionHandler

SubscribeOrderBook
protected ISubscriptionHandler<IOrderBookMessage> SubscribeOrderBook(Security security)
result = strategy.SubscribeOrderBook(security)

Подпишитесь на MarketDepth.

security
финансовый инструмент. Если финансовый инструмент не передан, то используется стоимость финансового инструмента.

Возвращает: SubscriptionHandler

SubscribeTicks
protected ISubscriptionHandler<ITickTradeMessage> SubscribeTicks(Subscription subscription)
result = strategy.SubscribeTicks(subscription)

Подпишитесь на Тикс.

subscription
Подписка

Возвращает: SubscriptionHandler

SubscribeTicks
protected ISubscriptionHandler<ITickTradeMessage> SubscribeTicks(Security security)
result = strategy.SubscribeTicks(security)

Подпишитесь на Тикс.

security
финансовый инструмент. Если финансовый инструмент не передан, то используется стоимость финансового инструмента.

Возвращает: SubscriptionHandler

ToReportValue
protected virtual object ToReportValue(object value)
result = strategy.ToReportValue(value)

Чтобы преобразовать значение параметра в значение отчета.

value
Значение параметра.

Возвращает: Значение отчета.

TryAddMyTrade
public bool TryAddMyTrade(MyTrade trade)
result = strategy.TryAddMyTrade(trade)

Попробуйте добавить собственную торговлю.

trade
MyTrade

Возвращает: Результат операции.

UnSubscribe
public void UnSubscribe(Subscription subscription)
strategy.UnSubscribe(subscription)

Отписаться.

subscription
Подписка.

События

BoardReceived
public event Action<Subscription, ExchangeBoard> BoardReceived
strategy.BoardReceived += handler

ExchangeBoard получено.

CandleReceived
public event Action<Subscription, ICandleMessage> CandleReceived
strategy.CandleReceived += handler

ICandleMessage получено.

CommissionChanged
public event Action CommissionChanged
strategy.CommissionChanged += handler

Событие смены комиссии.

ConnectorChanged
public event Action ConnectorChanged
strategy.ConnectorChanged += handler

Событие изменения подключения стратегии.

CurrentTimeChanged
public event Action<TimeSpan> CurrentTimeChanged
strategy.CurrentTimeChanged += handler

Время сервера изменилось CurrentTime. Прошла разница во времени с момента последнего вызова события. В первый раз событие передает значение Zero.

DataTypeReceived
public event Action<Subscription, DataType> DataTypeReceived
strategy.DataTypeReceived += handler

DataType получено.

Error
public event Action<Strategy, Exception> Error
strategy.Error += handler

Событие возникновения ошибки в стратегии.

IsOnlineChanged
public event Action<Strategy> IsOnlineChanged
strategy.IsOnlineChanged += handler

Событие изменения состояния стратегии онлайн.

LatencyChanged
public event Action LatencyChanged
strategy.LatencyChanged += handler

Событие изменения задержки.

Level1Received
public event Action<Subscription, Level1ChangeMessage> Level1Received
strategy.Level1Received += handler

Level1ChangeMessage получено.

NewMyTrade
public event Action<MyTrade> NewMyTrade
strategy.NewMyTrade += handler

Собственная торговля получена.

NewsReceived
public event Action<Subscription, News> NewsReceived
strategy.NewsReceived += handler

Новости получены.

OrderBookDrawing
public event Action<Subscription, IOrderBookSource, IOrderBookMessage> OrderBookDrawing
strategy.OrderBookDrawing += handler

IOrderBookMessage).

OrderBookDrawingOrder
public event Action<Subscription, IOrderBookSource, Order> OrderBookDrawingOrder
strategy.OrderBookDrawingOrder += handler

Заказ).

OrderBookDrawingOrderFail
public event Action<Subscription, IOrderBookSource, OrderFail> OrderBookDrawingOrderFail
strategy.OrderBookDrawingOrderFail += handler

OrderFail).

OrderBookReceived
public event Action<Subscription, IOrderBookMessage> OrderBookReceived
strategy.OrderBookReceived += handler

IOrderBookMessage получено.

OrderCancelFailed
public event Action<OrderFail> OrderCancelFailed
strategy.OrderCancelFailed += handler

Событие ошибки отмены заказа.

OrderCancelFailReceived
public event Action<Subscription, OrderFail> OrderCancelFailReceived
strategy.OrderCancelFailReceived += handler

OrderFail событие отмены.

OrderCanceling
public event Action<Order> OrderCanceling
strategy.OrderCanceling += handler

Событие отправки заказа на отмену.

OrderChanged
public event Action<Order> OrderChanged
strategy.OrderChanged += handler

Заказ изменен (отменен, сопоставлен).

OrderEdited
public event Action<long, Order> OrderEdited
strategy.OrderEdited += handler

Заказ) событие результата успеха.

OrderEditFailed
public event Action<long, OrderFail> OrderEditFailed
strategy.OrderEditFailed += handler

Заказ) событие результата ошибки.

OrderEditFailReceived
public event Action<Subscription, OrderFail> OrderEditFailReceived
strategy.OrderEditFailReceived += handler

OrderFail событие издания.

OrderLogReceived
public event Action<Subscription, IOrderLogMessage> OrderLogReceived
strategy.OrderLogReceived += handler

IOrderLogMessage получено.

OrderReceived
public event Action<Subscription, Order> OrderReceived
strategy.OrderReceived += handler

Заказ получен.

OrderRegistered
public event Action<Order> OrderRegistered
strategy.OrderRegistered += handler

Событие успешной регистрации заказа.

OrderRegisterFailed
public event Action<OrderFail> OrderRegisterFailed
strategy.OrderRegisterFailed += handler

Событие ошибки регистрации заказа.

OrderRegisterFailReceived
public event Action<Subscription, OrderFail> OrderRegisterFailReceived
strategy.OrderRegisterFailReceived += handler

OrderFail событие регистрации.

OrderRegistering
public event Action<Order> OrderRegistering
strategy.OrderRegistering += handler

Событие отправки заказа на регистрацию.

OrderReRegistering
public event Action<Order, Order> OrderReRegistering
strategy.OrderReRegistering += handler

Событие отправки заказа на перерегистрацию.

OwnTradeReceived
public event Action<Subscription, MyTrade> OwnTradeReceived
strategy.OwnTradeReceived += handler

MyTrade получено.

ParametersChanged
public event Action ParametersChanged
strategy.ParametersChanged += handler

Событие изменения параметров.

PnLChanged
public event Action PnLChanged
strategy.PnLChanged += handler

PnL событие изменения.

PnLReceived
public event Action<Subscription> PnLReceived
strategy.PnLReceived += handler

PnL событие изменения.

PnLReceived2
public event Action<Subscription, Portfolio, DateTime, decimal, decimal?, decimal?> PnLReceived2
strategy.PnLReceived2 += handler

PnL событие изменения.

PortfolioReceived
public event Action<Subscription, Portfolio> PortfolioReceived
strategy.PortfolioReceived += handler

Портфолио получено.

PositionChanged
public event Action PositionChanged
strategy.PositionChanged += handler

Событие смены позиции.

PositionReceived
public event Action<Subscription, Position> PositionReceived
strategy.PositionReceived += handler

Должность получена.

ProcessStateChanged
public event Action<Strategy> ProcessStateChanged
strategy.ProcessStateChanged += handler

ProcessState событие изменения.

PropertyChanged
public event PropertyChangedEventHandler PropertyChanged
strategy.PropertyChanged += handler

Событие изменения значения свойств элемента диаграммы.

Reseted
public event Action Reseted
strategy.Reseted += handler

Событие повторной инициализации стратегии.

SecurityReceived
public event Action<Subscription, Security> SecurityReceived
strategy.SecurityReceived += handler

финансовый инструмент получен.

SlippageChanged
public event Action SlippageChanged
strategy.SlippageChanged += handler

Событие изменения проскальзывания.

SubscriptionFailed
public event Action<Subscription, Exception, bool> SubscriptionFailed
strategy.SubscriptionFailed += handler

Подписка не удалась.

SubscriptionOnline
public event Action<Subscription> SubscriptionOnline
strategy.SubscriptionOnline += handler

Подписка онлайн.

SubscriptionReceived
public event Action<Subscription, object> SubscriptionReceived
strategy.SubscriptionReceived += handler

Полученная ценность.

SubscriptionStarted
public event Action<Subscription> SubscriptionStarted
strategy.SubscriptionStarted += handler

Подписка запущена.

SubscriptionStopped
public event Action<Subscription, Exception> SubscriptionStopped
strategy.SubscriptionStopped += handler

Подписка остановлена.

TickTradeReceived
public event Action<Subscription, ITickTradeMessage> TickTradeReceived
strategy.TickTradeReceived += handler

ITickTradeMessage получено.