Strategy
La clase base para todas las estrategias comerciales.
Hereda de: BaseLogReceiver
Implementa: IStrategyHost, IPositionProvider, INotifyPropertyChangedEx, INotifyPropertyChanged, ITimeProvider, IStrategy, IMarketRuleContainer, ILogReceiver, ILogSource, IDisposable, IMarketDataProvider, ISubscriptionProvider, ISecurityProvider, ISecurityMessageProvider, ITransactionProvider, IPortfolioProvider, IReportSource, ICustomTypeDescriptor, IScheduledTask
Constructores
public Strategy(IPnLManager pnlManager, IStatisticManager stats)
strategy = Strategy(pnlManager, stats)
Initializes a new instance Strategy.
- pnlManager
- PnL manager.
- stats
- Statistic manager.
Propiedades
public TimeSpan AggregationInterval { get; set; }
value = strategy.AggregationInterval
strategy.AggregationInterval = value
Intervalo de tiempo para la agregación. Ordenes/trados dentro del mismo intervalo se agrupan juntos. Default es 1 hora. Se establece a Zero para deshabilitar la agrupación de tiempo.
public bool CancelOrdersWhenStopping { get; set; }
value = strategy.CancelOrdersWhenStopping
strategy.CancelOrdersWhenStopping = value
Para cancelar órdenes activas en parada. Está encendida por defecto.
public INotifyList<Strategy> ChildStrategies { get; }
value = strategy.ChildStrategies
Estrategias comerciales subsidiarias.
public StrategyCommentModes CommentMode { get; set; }
value = strategy.CommentMode
strategy.CommentMode = value
Establecer comentario por nombre o por identificación.
public virtual IConnector Connector { get; set; }
value = strategy.Connector
strategy.Connector = value
Conexión al sistema comercial.
public override DateTime CurrentTime { get; }
value = strategy.CurrentTime
Hora actual de la UTC.
public bool DisposeOnStop { get; set; }
value = strategy.DisposeOnStop
strategy.DisposeOnStop = value
Automáticamente para despejar recursos, utilizados por la estrategia, cuando se detiene (estado ProcessState se convierte en igual a Stopped).
public StrategyEngine Engine { get; }
value = strategy.Engine
State machine + message routing.
public SettingsStorage Environment { get; }
value = strategy.Environment
Parámetros de estrategia sobre el medio ambiente.
public LogLevels ErrorState { get; set; }
value = strategy.ErrorState
strategy.ErrorState = value
El estado de un error.
public static bool HideSecurityAndPortfolioParameters { get; set; }
value = Strategy.HideSecurityAndPortfolioParameters
Strategy.HideSecurityAndPortfolioParameters = value
Hacer que el instrumento financiero y Portfolio no sean despojados.
protected virtual TimeSpan? HistoryCalculated { get; }
value = strategy.HistoryCalculated
Calculado a partir de la versión de código HistorySize.
protected virtual TimeSpan? HistoryCalculatedForSubscribe { get; }
value = strategy.HistoryCalculatedForSubscribe
Code-calculated warm-up history span, if any.
public TimeSpan? HistorySize { get; set; }
value = strategy.HistorySize
strategy.HistorySize = value
Historia para inicializar la estrategia de comercio en vivo.
protected virtual TimeSpan? HistorySizeForSubscribe { get; }
value = strategy.HistorySizeForSubscribe
Configured live-trading warm-up history span, if any.
public INotifyList<IIndicator> Indicators { get; }
value = strategy.Indicators
Todos los indicadores utilizados en la estrategia. Usos en la implementación predeterminada de IsFormed.
public Level1Fields? IndicatorSource { get; set; }
value = strategy.IndicatorSource
strategy.IndicatorSource = value
Fuente predeterminada para indicadores cuando no se establece la Fuente.
public bool IsBacktesting { get; }
value = strategy.IsBacktesting
Determines Connector es HistoryEmulationConnector@.
protected virtual bool IsBacktestingForSubscribe { get; }
value = strategy.IsBacktestingForSubscribe
Whether the strategy currently runs in backtesting (history emulation) mode.
public virtual bool IsFormed { get; }
value = strategy.IsFormed
Se ha establecido plenamente la estrategia.
public bool IsOnline { get; private set; }
value = strategy.IsOnline
strategy.IsOnline = value
Verdaderamente significa que la estrategia se inicia y todas sus suscripciones están en estado online.
public bool IsRulesSuspended { get; }
value = strategy.IsRulesSuspended
Es la ejecución de reglas suspendida.
public bool KeepStatistics { get; set; }
value = strategy.KeepStatistics
strategy.KeepStatistics = value
Mantenga estadísticas de comercio (ordenes, comercios, ganancias, etc.) después de reiniciar.
public Exception LastError { get; private set; }
value = strategy.LastError
strategy.LastError = value
El último error que causó la estrategia para detenerse.
public TimeSpan? Latency { get; set; }
value = strategy.Latency
strategy.Latency = value
Total de latencia.
public override LogLevels LogLevel { get; set; }
value = strategy.LogLevel
strategy.LogLevel = value
El nivel para realizar esta registro de reglas.
public int MaxOrdersBeforeAggregation { get; set; }
value = strategy.MaxOrdersBeforeAggregation
strategy.MaxOrdersBeforeAggregation = value
Número máximo de pedidos antes de que se active la agregación automática. Default es 10000. Se establece a 0 para desactivar la agregación automática.
public int MaxTradesBeforeAggregation { get; set; }
value = strategy.MaxTradesBeforeAggregation
strategy.MaxTradesBeforeAggregation = value
El número máximo de transacciones antes de la agregación automática se activa. Default es 10000. Se establece a 0 para desactivar la agregación automática.
public IEnumerable<MyTrade> MyTrades { get; }
value = strategy.MyTrades
Comercios, coincididos durante la operación de estrategia.
public override string Name { get; set; }
value = strategy.Name
strategy.Name = value
Nombre de estrategia.
public StrategyNameGenerator NameGenerator { get; }
value = strategy.NameGenerator
El generador del nombre de estrategia.
public virtual IEnumerable<IOrderBookSource> OrderBookSources { get; }
value = strategy.OrderBookSources
Todas las fuentes posibles IOrderBookMessage que pueden ser recibidas a través de OrderBookDrawing.
public Subscription OrderLookup { get; }
value = strategy.OrderLookup
Obtener suscripción global en la búsqueda de la orden. Puede ser .
public OrderPipeline OrderProcessor { get; }
value = strategy.OrderProcessor
Order tracking and processing pipeline.
public IEnumerable<Order> Orders { get; }
value = strategy.Orders
Órdenes, inscritas en el marco de estrategia.
public TimeSpan OrdersKeepTime { get; set; }
value = strategy.OrdersKeepTime
strategy.OrdersKeepTime = value
El tiempo para almacenar las Pedidos en memoria. Por defecto equivale a 2 días. Si el valor se establece en Zero, las órdenes no serán eliminadas.
public StrategyParameterDictionary Parameters { get; }
value = strategy.Parameters
Parámetros de estrategia.
public decimal PnL { get; }
value = strategy.PnL
El valor agregado de la pérdida de ganancias sin la Comisión de Contabilidad.
public IPnLManager PnLManager { get; set; }
value = strategy.PnLManager
strategy.PnLManager = value
El gerente de pérdidas de ganancias.
public Portfolio Portfolio { get; set; }
value = strategy.Portfolio
strategy.Portfolio = value
Portafolio.
public Subscription PortfolioLookup { get; }
value = strategy.PortfolioLookup
Consigue suscripción global en Portfolio Lookup. Puede ser .
public IPortfolioProvider PortfolioProvider { get; set; }
value = strategy.PortfolioProvider
strategy.PortfolioProvider = value
IPortfolioProvider
public decimal Position { get; set; }
value = strategy.Position
strategy.Position = value
El valor agregado de posición.
public PositionPipeline Positions { get; }
value = strategy.Positions
La lista de posiciones.
public IReadOnlyDictionary<ValueTuple<SecurityId, string>, decimal> PositionsList { get; }
value = strategy.PositionsList
All tracked positions.
public ProcessStates ProcessState { get; }
value = strategy.ProcessState
El estado de operación.
public IRandomProvider RandomProvider { get; set; }
value = strategy.RandomProvider
strategy.RandomProvider = value
Where anything in the strategy that draws at random takes its draws from.
public ReportSource ReportSource { get; }
value = strategy.ReportSource
Informar fuente de datos con soporte de agregación.
public decimal RiskFreeRate { get; set; }
value = strategy.RiskFreeRate
strategy.RiskFreeRate = value
Tasa anual de riesgo libre (e.g., 0.03 = 3%).
public IRiskManager RiskManager { get; set; }
value = strategy.RiskManager
strategy.RiskManager = value
El gerente de control de riesgos.
public IEnumerable<IRiskRule> RiskRules { get; set; }
value = strategy.RiskRules
strategy.RiskRules = value
Las reglas de riesgo.
public IMarketRuleList Rules { get; }
value = strategy.Rules
La lista de comisiones que calculan reglas.
public Security Security { get; set; }
value = strategy.Security
strategy.Security = value
instrumento financiero.
public DateTime StartedTime { get; private set; }
value = strategy.StartedTime
strategy.StartedTime = value
La estrategia comienza el tiempo.
public IStatisticManager StatisticManager { get; protected set; }
value = strategy.StatisticManager
strategy.StatisticManager = value
El gerente de estadísticas.
public SubscriptionRegistry Subscriptions { get; }
value = strategy.Subscriptions
Subscription management.
public Func<Sides, decimal, IPositionModifyAlgo> TargetAlgoFactory { get; set; }
value = strategy.TargetAlgoFactory
strategy.TargetAlgoFactory = value
Fábrica para crear algoritmos de modificación de posición para TargetPositionManager. Default crea MarketOrderAlgo@.
public PositionTargetManager TargetPositionManager { get; }
value = strategy.TargetPositionManager
Director de posición de destino.
public TimeSpan TotalWorkingTime { get; private set; }
value = strategy.TotalWorkingTime
strategy.TotalWorkingTime = value
El tiempo total de funcionamiento de la estrategia menos tiempo, cuando se detuvo la estrategia.
public StrategyTradingModes TradingMode { get; set; }
value = strategy.TradingMode
strategy.TradingMode = value
Permitir el comercio.
public TimeSpan UnrealizedPnLInterval { get; set; }
value = strategy.UnrealizedPnLInterval
strategy.UnrealizedPnLInterval = value
El intervalo para la recalculación de beneficios no realizado. El valor predeterminado es de 1 minuto.
public bool UnsubscribeOnStop { get; set; }
value = strategy.UnsubscribeOnStop
strategy.UnsubscribeOnStop = value
Describir toda suscripción activa mientras la estrategia se detiene.
public virtual decimal Volume { get; set; }
value = strategy.Volume
strategy.Volume = value
Volumen operativo.
public bool WaitAllTrades { get; set; }
value = strategy.WaitAllTrades
strategy.WaitAllTrades = value
Dejar la estrategia sólo después de conseguir todos los oficios por órdenes registradas.
public bool WaitRulesOnStop { get; set; }
value = strategy.WaitRulesOnStop
strategy.WaitRulesOnStop = value
Espera que las reglas terminen antes de que la estrategia se convierta en estado de Stopped.
public WorkingTime WorkingTime { get; set; }
value = strategy.WorkingTime
strategy.WorkingTime = value
El límite de tiempo, dentro del cual se traducirán las velas para dar serie.
Métodos
protected void Alert(AlertNotifications type, string caption, string message)
strategy.Alert(type, caption, message)
Enviar notificación de alerta.
- type
- Tipo de alerta.
- caption
- Cabeza de señal.
- message
- Alerta de texto.
protected void Alert(AlertNotifications type, string message)
strategy.Alert(type, message)
Enviar notificación de alerta con nombre de estrategia como capción.
- type
- Tipo de alerta.
- message
- Alerta de texto.
protected void AlertLog(string message)
strategy.AlertLog(message)
Enviar notificación de alerta de registro.
- message
- Alerta de texto.
protected void AlertPopup(string message)
strategy.AlertPopup(message)
Enviar aviso de alerta de popup.
- message
- Alerta de texto.
protected void AlertSound(string message)
strategy.AlertSound(message)
Enviar notificación de alerta de sonido.
- message
- Alerta de texto.
public void ApplyCommand(CommandMessage cmdMsg)
strategy.ApplyCommand(cmdMsg)
Aplicar el comando entrando.
- cmdMsg
- El mensaje contiene información sobre el comando para cambiar estado.
public virtual ValueTask ApplyCommandAsync(CommandMessage cmdMsg, CancellationToken cancellationToken)
result = strategy.ApplyCommandAsync(cmdMsg, cancellationToken)
Apply an incoming remote command to the strategy.
- cmdMsg
- CommandMessage.
- cancellationToken
- CancellationToken
Devuelve: ValueTask
public Order BuyLimit(decimal price, decimal? volume, Security security)
result = strategy.BuyLimit(price, volume, security)
Para crear el objeto de pedido inicializado para comprar.
- price
- Precio.
- volume
- El volumen. Si se pasa el valor, entonces se utiliza el valor del volumen.
- security
- El instrumento financiero. Si se aprueba el valor, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: El objeto de orden inicializado.
public Order BuyMarket(decimal? volume, Security security)
result = strategy.BuyMarket(volume, security)
Crear objeto inicializado de compra de orden a precio de mercado.
- volume
- El volumen. Si se pasa el valor, entonces se utiliza el valor del volumen.
- security
- El instrumento financiero. Si se aprueba el valor, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: El objeto de orden inicializado.
protected virtual bool CanAttach(Order order)
result = strategy.CanAttach(order)
Determina la orden especificada puede ser propiedad de la estrategia.
- order
- Orden.
Devuelve: Resultado de la comprobación.
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)
Para cancelar todos los pedidos activos (parar y regular).
- isStopOrder
- Si cancelas solo una orden de parada, si ordenes regulares, ambas.
- portfolio
- Portafolio. Si el valor es igual a , entonces la cartera no coincide con los pedidos de cancelación de filtro.
- direction
- Orden lado. Si el valor es , la dirección no utiliza.
- board
- Tabla de tracción. Si el valor es igual a , entonces la junta no coincide con los pedidos de cancelación de filtro.
- security
- Instrumento. Si el valor es igual a , entonces el instrumento no coincide con los pedidos de cancelación de filtro.
- securityType
- tipo de instrumento financiero. Si el valor es , el tipo no utiliza.
- transactionId
- Operaciones de cancelación de pedidos id.
private void CancelAllActiveOrders()
strategy.CancelAllActiveOrders()
Cancel all active orders unconditionally (used internally on stop and risk actions, where the public Int64}) would be skipped because the strategy is no longer in the Started state).
private void CancelOrderHandler(Order order)
strategy.CancelOrderHandler(order)
Dispatch a cancel without the public guards (stop-time teardown); the caller handles the IsCanceled dedup.
public void CancelTargetPosition()
strategy.CancelTargetPosition()
Cancelar la posición de destino para el instrumento financiero de la estrategia y Portfolio.
public void CancelTargetPosition(Security security, Portfolio portfolio)
strategy.CancelTargetPosition(security, portfolio)
Cancele la posición de destino para el instrumento financiero y la cartera especificados.
- security
- instrumento financiero.
- portfolio
- Portafolio.
private bool CanFinalStop()
result = strategy.CanFinalStop()
Final-stop gate: deny the Stopping -> Stopped transition only while WaitRulesOnStop is set and there are outstanding rules to drain.
protected virtual bool CanTrade(Security security, Portfolio portfolio, Sides side, decimal volume, string noTradeReason)
result = strategy.CanTrade(security, portfolio, side, volume, noTradeReason)
Compruebe si puede cambiar con la información del pedido.
- security
- instrumento financiero al comercio.
- portfolio
- Cartera al comercio.
- side
- Ordene el lado.
- volume
- Volumen de pedido.
- noTradeReason
- Razón por la que no se permite el comercio.
Devuelve: Es verdad si se permite el comercio.
public Strategy Clone()
result = strategy.Clone()
Crea una copia profunda de un DataSeries
Devuelve: Copy.
public virtual ValueTask<Strategy> CloneAsync(CancellationToken cancellationToken)
result = strategy.CloneAsync(cancellationToken)
Create a copy of the strategy.
- cancellationToken
- CancellationToken
Devuelve: Copy.
public Order ClosePosition(Security security, Portfolio portfolio)
result = strategy.ClosePosition(security, portfolio)
Para cerrar la posición abierta por el mercado (para registrar el orden del tipo Mercado).
- security
- instrumento financiero. Si no se aprueba el valor del instrumento financiero será obtenido.
- portfolio
- Portafolio. Si no pasa el valor de Portfolio será obtenido.
Devuelve: El objeto de orden inicializado.
protected virtual ValueTask CopyToAsync(Strategy copy, CancellationToken cancellationToken)
result = strategy.CopyToAsync(copy, cancellationToken)
Copy settings into .
- copy
- Strategy
- cancellationToken
- CancellationToken
Devuelve: ValueTask
protected IChartArea CreateChartArea()
result = strategy.CreateChartArea()
Crear área de gráficos.
Devuelve: IChartArea
protected virtual Strategy CreateClone()
result = strategy.CreateClone()
Crear objeto clon (no inicializado).
Devuelve: Estrategia
public Order CreateOrder(Sides side, decimal price, decimal? volume, Security security)
result = strategy.CreateOrder(side, price, volume, security)
Create an initialized order object.
- side
- Order side.
- price
- Price. 0 for market order.
- volume
- Volume. If null, Volume is used.
- security
- Security. If null, Security is used.
Devuelve: Order.
protected ITimerHandler CreateTimer(TimeSpan interval, Action callback)
result = strategy.CreateTimer(interval, callback)
Cree un temporizador que ejecute callback a intervalos específicos.
- interval
- Intervalos de tiempo.
- callback
- Retroceder para ejecutar.
Devuelve: ITimerHandler
protected IChartCandleElement DrawCandles(IChartArea area, Subscription subscription)
result = strategy.DrawCandles(area, subscription)
Dibuja velas en el gráfico.
- area
- IChartArea
- subscription
- Suscripción
Devuelve: IChartCandleElement
protected IChartCandleElement DrawCandles<T>(IChartArea area, ISubscriptionHandler<T> subscription)
result = strategy.DrawCandles(area, subscription)
Dibuja velas en el gráfico.
- area
- IChartArea
- subscription
- SubscriptionHandler
Devuelve: IChartCandleElement
protected IChartIndicatorElement DrawIndicator(IChartArea area, IIndicator indicator, Color? color, Color? additionalColor)
result = strategy.DrawIndicator(area, indicator, color, additionalColor)
Indicador de dibujo en el gráfico.
- area
- IChartArea
- indicator
- IIndicator
- color
- Color
- additionalColor
- AdditionalColor
Devuelve: IChartIndicatorElement
public void DrawOrderBook(Subscription subscription, IOrderBookSource source, IOrderBookMessage book)
strategy.DrawOrderBook(subscription, source, book)
Dibujar IOrderBookMessage.
- subscription
- Suscripción
- source
- IOrderBookSource
- book
- IOrderBookMessage
public void DrawOrderBookOrder(Subscription subscription, IOrderBookSource source, Order order)
strategy.DrawOrderBookOrder(subscription, source, order)
Orden de orden de orden de compra.
- subscription
- Suscripción
- source
- IOrderBookSource
- order
- Orden.
public void DrawOrderBookOrderFail(Subscription subscription, IOrderBookSource source, OrderFail fail)
strategy.DrawOrderBookOrderFail(subscription, source, fail)
La orden de orden de la orden falla.
- subscription
- Suscripción
- source
- IOrderBookSource
- fail
- La orden falla.
protected IChartOrderElement DrawOrders(IChartArea area)
result = strategy.DrawOrders(area)
Dibujar órdenes en el gráfico.
- area
- IChartArea
Devuelve: IChartOrderElement@
protected IChartTradeElement DrawOwnTrades(IChartArea area)
result = strategy.DrawOwnTrades(area)
Dibuja comercios en el gráfico.
- area
- IChartArea
Devuelve: IChartTradeElement@
public void EditOrder(Order order, Order changes)
strategy.EditOrder(order, changes)
Edita la orden.
- order
- Orden.
- changes
- Cambios en el orden.
private void EnsureTxEventsHooked()
strategy.EnsureTxEventsHooked()
Ensure the internal pipeline hooks that feed the transaction-provider NewOrder/OrderChanged streams are installed exactly once. Wired lazily on first subscription so the cost is avoided for consumers that never listen to the obsolete order events.
public IAlertNotificationService GetAlertService()
result = strategy.GetAlertService()
Para conseguir la IAlertNotificationService asociada a la estrategia aprobada.
Devuelve: Servicio de notificación de alerta.
public IChart GetChart()
result = strategy.GetChart()
Para conseguir que el IChart se asocie con la estrategia aprobada.
Devuelve: Chart.
public IOptionDesk GetOptionDesk()
result = strategy.GetOptionDesk()
Para obtener el IOptionDesk@.
Devuelve: IOptionDesk.
public IOptionPositionChart GetOptionPositionChart()
result = strategy.GetOptionPositionChart()
Para conseguir la IOptionPositionChart asociada a la estrategia aprobada.
Devuelve: Chart.
public virtual IStrategyParam[] GetParameters()
result = strategy.GetParameters()
Consigue parámetros.
Devuelve: Parámetros.
public Portfolio GetPortfolio()
result = strategy.GetPortfolio()
Obtener Cartero o lanzar InvalidOperationException si no está presente.
Devuelve: Portafolio
public decimal? GetPositionValue(Security sec, Portfolio pf)
result = strategy.GetPositionValue(sec, pf)
Ponte en posición.
Devuelve: Posición.
public Security GetSecurity()
result = strategy.GetSecurity()
Obtener un instrumento financiero o lanzar InvalidOperationException si no está presente.
Devuelve: instrumento financiero
private TimeSpan GetSubscribeHistoryPreroll()
result = strategy.GetSubscribeHistoryPreroll()
Optional history pre-roll applied to market-data subscriptions during live trading, so the strategy is warmed up with the configured amount of history before "now". Returns Zero by default; subsystems that own a history setting (e.g. HistorySize / HistoryCalculated) and a backtesting flag override the wiring points below.
Devuelve: History span to subtract from CurrentTime, or zero to disable.
public decimal? GetTargetPosition(Security security, Portfolio portfolio)
result = strategy.GetTargetPosition(security, portfolio)
Obtener la posición de destino para el instrumento financiero y la cartera especificados.
- security
- instrumento financiero.
- portfolio
- Portafolio.
Devuelve: Posición de blanco, o nula si no está fijada.
public decimal? GetTargetPosition()
result = strategy.GetTargetPosition()
Obtener la posición de destino para el instrumento financiero de la estrategia y Portfolio.
Devuelve: Posición de blanco, o nula si no está fijada.
public virtual IEnumerable<Portfolio> GetWorkingPortfolios()
result = strategy.GetWorkingPortfolios()
Obtenga todas las carteras necesarias para la estrategia.
Devuelve: Carteras.
public virtual IEnumerable<ValueTuple<Security, DataType>> GetWorkingSecurities()
result = strategy.GetWorkingSecurities()
Obtenga todos los instrumentos financieros necesarios para la estrategia.
Devuelve: instrumentos financieros.
public bool IsFormedAndOnline()
result = strategy.IsFormedAndOnline()
IsFormed and IsOnline.
Devuelve: Resultado de la comprobación.
public bool IsFormedAndOnlineAndAllowTrading(StrategyTradingModes required)
result = strategy.IsFormedAndOnlineAndAllowTrading(required)
IsFormedAndOnline and TradingMode.
- required
- Acción requerida.
Devuelve: Resultado de la comprobación.
public bool? IsOrderEditable(Order order)
result = strategy.IsOrderEditable(order)
Determina la orden especificada puede ser editada por Orden).
- order
- Orden.
Devuelve: si el pedido es editable, el orden no puede ser cambiado, significa que no hay información.
public bool? IsOrderReplaceable(Order order)
result = strategy.IsOrderReplaceable(order)
Determina la orden especificada puede ser reemplazada por Orden).
- order
- Orden.
Devuelve: si el pedido es reemplazable, el orden no puede ser reemplazado, significa que no hay información.
public override Task LoadAsync(SettingsStorage storage, CancellationToken cancellationToken)
result = strategy.LoadAsync(storage, cancellationToken)
Load settings.
- storage
- SettingsStorage
- cancellationToken
- CancellationToken
Devuelve: Task
public ValueTask<Security> LookupByIdAsync(SecurityId id, CancellationToken cancellationToken)
result = strategy.LookupByIdAsync(id, cancellationToken)
Para conseguir el instrumento por el identificador.
- id
- identificación de instrumentos financieros.
- cancellationToken
- CancellationToken
Devuelve: El instrumento obtenido. Si no hay instrumento por criterios dados, se devuelve.
public void OnConnectorOrderReceived(Subscription sub, Order order)
strategy.OnConnectorOrderReceived(sub, order)
Handle order received from the connector. This is the pipeline callback wired to OrderReceived; the user-overridable hook is Order).
protected virtual void OnCurrentPriceUpdated(SecurityId secId, decimal price, DateTime serverTime, DateTime localTime)
strategy.OnCurrentPriceUpdated(secId, price, serverTime, localTime)
Called when current price updated from market data.
protected virtual void OnError(Exception error)
strategy.OnError(error)
Processing of error, occurred as result of strategy operation.
- error
- Error.
public ValueTask OnNewMessage(Message msg, CancellationToken ct)
result = strategy.OnNewMessage(msg, ct)
Handle new outgoing message from connector.
protected virtual void OnNewPosition(Position position)
strategy.OnNewPosition(position)
Called when new position appears.
- position
- New position.
public void OnOrderCancelFailReceived(Subscription sub, OrderFail fail)
strategy.OnOrderCancelFailReceived(sub, fail)
Handle order cancellation failure from connector.
protected virtual void OnOrderChanged(Order order)
strategy.OnOrderChanged(order)
Called when order state changed. Driven by the order-tracking pipeline on every non-registration change of a tracked order (the obsolete OrderChanged counterpart). Distinct from Order), which fires for any update of one of the strategy's own orders arriving from the connector's order-lookup subscription.
- order
- Changed order.
public void OnOrderEditFailReceived(Subscription sub, OrderFail fail)
strategy.OnOrderEditFailReceived(sub, fail)
Handle order edit failure from connector.
protected virtual void OnOrderReceived(Order order)
strategy.OnOrderReceived(order)
Orden recibida.
- order
- Orden
protected virtual void OnOrderRegistered(Order order)
strategy.OnOrderRegistered(order)
Para llamar al evento OrderRegistered.
- order
- Orden.
protected virtual void OnOrderRegisterFailed(OrderFail fail)
strategy.OnOrderRegisterFailed(fail)
Called when order registration fails.
- fail
- Order failure info.
public void OnOrderRegisterFailReceived(Subscription sub, OrderFail fail)
strategy.OnOrderRegisterFailReceived(sub, fail)
Handle order registration failure from connector.
protected virtual void OnOrderRegistering(Order order)
strategy.OnOrderRegistering(order)
Para llamar al evento OrderRegistering.
- order
- Orden.
protected virtual void OnOrderReRegistering(Order oldOrder, Order newOrder)
strategy.OnOrderReRegistering(oldOrder, newOrder)
Para llamar al evento OrderReRegistering.
- oldOrder
- Orden de cancelación.
- newOrder
- Nuevo orden de registro.
protected virtual void OnOwnTradeReceived(MyTrade trade)
strategy.OnOwnTradeReceived(trade)
El comercio propio recibido.
- trade
- MyTrade@
protected virtual void OnPositionChanged(Position position)
strategy.OnPositionChanged(position)
Called when position changes.
- position
- Changed position.
protected virtual void OnPositionReceived(Position position)
strategy.OnPositionReceived(position)
Posición recibida.
- position
- Posición
public void OnPositionReceived(Subscription sub, Position pos)
strategy.OnPositionReceived(sub, pos)
Handle position received from connector.
protected virtual void OnStarted2(DateTime time)
strategy.OnStarted2(time)
El método se llama cuando se ha llamado el método Start y el estado ProcessState ha sido tomado el valor Iniciado.
- time
- The strategy start time.
protected virtual ValueTask OnStartedAsync(DateTime time, CancellationToken cancellationToken)
result = strategy.OnStartedAsync(time, cancellationToken)
The method is called when the strategy has entered the started state, before DateTime). An exception stops the strategy the same way as one thrown from DateTime).
- time
- The strategy start time.
- cancellationToken
- Cancellation token.
Devuelve: ValueTask
protected virtual void OnStateChanged(ProcessStates state)
strategy.OnStateChanged(state)
Called when process state changes.
- state
- New state.
protected virtual ValueTask OnStateChangedAsync(ProcessStates state, CancellationToken cancellationToken)
result = strategy.OnStateChangedAsync(state, cancellationToken)
Called asynchronously when process state changes.
- state
- New state.
- cancellationToken
- Cancellation token.
Devuelve: A task representing the state transition.
protected virtual void OnStopped()
strategy.OnStopped()
El método se llama cuando el estado de proceso ProcessState se ha tomado el valor de Stopped.
protected virtual void OnStopping()
strategy.OnStopping()
El método se llama cuando el estado de proceso ProcessState se ha tomado el valor de Stopping.
public void OnTradeReceived(Subscription sub, MyTrade trade)
strategy.OnTradeReceived(sub, trade)
Handle trade received from connector.
public StrategyParam<T> Param<T>(string id, T initialValue)
result = strategy.Param(id, initialValue)
Inicia una nueva instancia de la StrategyParam.
- id
- Identificador de parámetros.
- initialValue
- El valor inicial.
Devuelve: El parámetro estrategia.
public void Prepare()
strategy.Prepare()
Prepare datos para la generación de informes. Llame a esto antes de acceder a cualquier dato para asegurar que todos los valores estén actualizados.
protected override void RaiseLog(LogMessage message)
strategy.RaiseLog(message)
To call the event Log.
- message
- A debug message.
public void RaiseParametersChanged(string name)
strategy.RaiseParametersChanged(name)
Para llamar a los eventos ParametersChanged y PropertyChanged@.
- name
- Nombre del parámetro.
public void RegisterOrder(Order order)
strategy.RegisterOrder(order)
Registre nuevo orden.
protected void RequestStop()
strategy.RequestStop()
Ask the strategy to stop from code that cannot wait for CancellationToken), such as a handler of market data. New orders are refused from this call on; the strategy is stopped when it handles the next message of the connector.
protected void RequestStop(Exception error)
strategy.RequestStop(error)
Ask the strategy to stop because of the error, from code that cannot wait for CancellationToken). The error is reported at once.
- error
- The error that caused the stop.
public void ReRegisterOrder(Order oldOrder, Order newOrder)
strategy.ReRegisterOrder(oldOrder, newOrder)
Reinscribir la orden.
- oldOrder
- Orden de cancelación.
- newOrder
- Nuevo orden de registro.
public void Reset()
strategy.Reset()
Para reiniciar el algoritmo comercial. Se llama después de la inicialización del objeto de estrategia y la carga de los parámetros almacenados.
public IConnector SafeGetConnector()
result = strategy.SafeGetConnector()
Para conseguir la estrategia consiguiendo Connector@. Si no se inicializa, se descartará la excepción.
Devuelve: Connector.
public void Save(SettingsStorage storage, bool saveStatistics, bool saveSystemParameters)
strategy.Save(storage, saveStatistics, saveSystemParameters)
Guardar configuración.
- storage
- SettingsStorage
- saveStatistics
- KeepStatistics@
- saveSystemParameters
- Guardar parámetros del sistema.
public Task SaveAsync(SettingsStorage storage, bool saveStatistics, bool saveSystemParameters, CancellationToken cancellationToken)
result = strategy.SaveAsync(storage, saveStatistics, saveSystemParameters, cancellationToken)
Save settings.
- storage
- SettingsStorage
- saveStatistics
- KeepStatistics
- saveSystemParameters
- Save system parameters.
- cancellationToken
- CancellationToken
Devuelve: Task
public override Task SaveAsync(SettingsStorage storage, CancellationToken cancellationToken)
result = strategy.SaveAsync(storage, cancellationToken)
Save settings.
- storage
- SettingsStorage
- cancellationToken
- CancellationToken
Devuelve: Task
public Order SellLimit(decimal price, decimal? volume, Security security)
result = strategy.SellLimit(price, volume, security)
Para crear el objeto de pedido inicializado para vender.
- price
- Precio.
- volume
- El volumen. Si se pasa el valor, entonces se utiliza el valor del volumen.
- security
- El instrumento financiero. Si se aprueba el valor, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: El objeto de orden inicializado.
public Order SellMarket(decimal? volume, Security security)
result = strategy.SellMarket(volume, security)
Crear el objeto de pedido inicializado de la venta de orden a precio de mercado.
- volume
- El volumen. Si se pasa el valor, entonces se utiliza el valor del volumen.
- security
- El instrumento financiero. Si se aprueba el valor, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: El objeto de orden inicializado.
public void SetAlertService(IAlertNotificationService service)
strategy.SetAlertService(service)
Para establecer una IAlertNotificationService para la estrategia.
- service
- Servicio de notificación de alerta.
public void SetChart(IChart chart)
strategy.SetChart(chart)
Para establecer un IChart para la estrategia.
- chart
- Chart.
public void SetOptionDesk(IOptionDesk desk)
strategy.SetOptionDesk(desk)
Para configurar el IOptionDesk@.
- desk
- IOptionDesk.
public void SetOptionPositionChart(IOptionPositionChart chart)
strategy.SetOptionPositionChart(chart)
Para establecer un IChart para la estrategia.
- chart
- Chart.
public void SetPositionValue(Security security, Portfolio portfolio, decimal value, DateTime time)
strategy.SetPositionValue(security, portfolio, value, time)
Ponga posición.
- security
- instrumento financiero.
- portfolio
- Portafolio.
- value
- Posición.
- time
- Horarios para asignar a LocalTime y ServerTime si se crea una nueva posición.
public void SetTargetPosition(decimal target)
strategy.SetTargetPosition(target)
Establecer la posición de destino para el instrumento financiero de la estrategia y Portfolio.
- target
- Valor de posición de destino.
public void SetTargetPosition(Security security, Portfolio portfolio, decimal target)
strategy.SetTargetPosition(security, portfolio, target)
Establecer la posición de destino para el instrumento financiero y la cartera especificados.
- security
- instrumento financiero.
- portfolio
- Portafolio.
- target
- Valor de posición de destino.
public ValueTask StartAsync(CancellationToken cancellationToken)
result = strategy.StartAsync(cancellationToken)
Start the strategy.
public 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)
Comience la protección de la posición.
- takeProfit
- Coge la compensación.
- stopLoss
- Para de compensar.
- isStopTrailing
- Ya sea para usar una técnica de seguimiento.
- takeTimeout
- Plazo. Si la protección no ha funcionado para este momento, la posición será cerrada en el mercado.
- stopTimeout
- Plazo. Si la protección no ha funcionado para este momento, la posición será cerrada en el mercado.
- useMarketOrders
- Ya sea para usar pedidos de mercado.
- isLocalStop
- Forzar el procesamiento de paradas local sin importar las capacidades de adaptador.
protected ITimerHandler StartTimer(TimeSpan interval, Action callback)
result = strategy.StartTimer(interval, callback)
Cree un temporizador que ejecute callback a intervalos especificados y lo inicie inmediatamente.
- interval
- Intervalos de tiempo.
- callback
- Retroceder para ejecutar.
Devuelve: ITimerHandler
public void Stop(Exception error)
strategy.Stop(error)
Para detener el algoritmo comercial por razón de error.
- error
- Error.
public ValueTask StopAsync(CancellationToken cancellationToken)
result = strategy.StopAsync(cancellationToken)
Stop the strategy.
public ValueTask StopAsync(Exception error, CancellationToken cancellationToken)
result = strategy.StopAsync(error, cancellationToken)
Stop the strategy with error.
- error
- The error that caused the stop.
- cancellationToken
- Cancellation token.
public void Subscribe(Subscription subscription)
strategy.Subscribe(subscription)
Suscribete.
- subscription
- Suscripción.
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(Subscription subscription)
result = strategy.SubscribeCandles(subscription)
Suscribete a las velas.
- subscription
- Suscripción
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(DataType dt, bool isFinishedOnly, Security security)
result = strategy.SubscribeCandles(dt, isFinishedOnly, security)
Suscribete a las velas.
- dt
- DataType
- isFinishedOnly
- IsFinishedOnly@
- security
- instrumento financiero. Si no se aprueba el instrumento financiero, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(TimeSpan tf, bool isFinishedOnly, Security security)
result = strategy.SubscribeCandles(tf, isFinishedOnly, security)
Suscribete a las velas.
- tf
- Time-frame.
- isFinishedOnly
- IsFinishedOnly@
- security
- instrumento financiero. Si no se aprueba el instrumento financiero, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<Level1ChangeMessage> SubscribeLevel1(Subscription subscription)
result = strategy.SubscribeLevel1(subscription)
Suscríbete al nivel 1.
- subscription
- Suscripción
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<Level1ChangeMessage> SubscribeLevel1(Security security)
result = strategy.SubscribeLevel1(security)
Suscríbete al nivel 1.
- security
- instrumento financiero. Si no se aprueba el instrumento financiero, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<IOrderBookMessage> SubscribeOrderBook(Security security)
result = strategy.SubscribeOrderBook(security)
Suscríbete a MarketDepth@.
- security
- instrumento financiero. Si no se aprueba el instrumento financiero, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<IOrderBookMessage> SubscribeOrderBook(Subscription subscription)
result = strategy.SubscribeOrderBook(subscription)
Suscríbete a MarketDepth@.
- subscription
- Suscripción
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<ITickTradeMessage> SubscribeTicks(Subscription subscription)
result = strategy.SubscribeTicks(subscription)
Suscribete a Ticks.
- subscription
- Suscripción
Devuelve: SubscriptionHandler
protected ISubscriptionHandler<ITickTradeMessage> SubscribeTicks(Security security)
result = strategy.SubscribeTicks(security)
Suscribete a Ticks.
- security
- instrumento financiero. Si no se aprueba el instrumento financiero, entonces se utiliza el valor de los instrumentos financieros.
Devuelve: SubscriptionHandler
protected virtual object ToReportValue(object value)
result = strategy.ToReportValue(value)
Para convertir el valor del parámetro a valor de reporte.
- value
- El valor del parámetro.
Devuelve: El valor del informe.
private Subscription ToSubscription<TLookupMessage>()
result = strategy.ToSubscription()
Build a global lookup subscription stamped with this strategy's identifier.
Devuelve: Subscription.
public bool TryAddMyTrade(MyTrade trade)
result = strategy.TryAddMyTrade(trade)
Intenta agregar un comercio propio.
- trade
- MyTrade@
Devuelve: Resultado de la operación.
public void UnSubscribe(Subscription subscription)
strategy.UnSubscribe(subscription)
Descríbete.
- subscription
- Suscripción.
Eventos
public event Action<Subscription, ExchangeBoard> BoardReceived
strategy.BoardReceived += handler
ExchangeBoard recibido.
public event Action<Subscription, ICandleMessage> CandleReceived
strategy.CandleReceived += handler
ICandleMessage recibido.
public event Action CommissionChanged
strategy.CommissionChanged += handler
Acto de cambio de la Comisión.
public event Action ConnectorChanged
strategy.ConnectorChanged += handler
El evento de cambio de conexión de estrategia.
public event Action<Subscription, DataType> DataTypeReceived
strategy.DataTypeReceived += handler
DataType recibido.
public event Action<IStrategy, Exception> Error
strategy.Error += handler
El caso de error ocurre en la estrategia.
public event Action<Strategy> IsOnlineChanged
strategy.IsOnlineChanged += handler
El evento de estrategia en línea cambio de estado.
public event Action LatencyChanged
strategy.LatencyChanged += handler
Evento de cambio de latencia.
public event Action<Subscription, Level1ChangeMessage> Level1Received
strategy.Level1Received += handler
Level1ChangeMessage recibido.
public event Action<MyTrade> NewMyTrade
strategy.NewMyTrade += handler
El comercio propio recibido.
public event Action<Subscription, News> NewsReceived
strategy.NewsReceived += handler
Noticias recibidas.
public event Action<Subscription, IOrderBookSource, IOrderBookMessage> OrderBookDrawing
strategy.OrderBookDrawing += handler
IOrderBookMessage@).
public event Action<Subscription, IOrderBookSource, Order> OrderBookDrawingOrder
strategy.OrderBookDrawingOrder += handler
Orden).
public event Action<Subscription, IOrderBookSource, OrderFail> OrderBookDrawingOrderFail
strategy.OrderBookDrawingOrderFail += handler
OrderFail@).
public event Action<Subscription, IOrderBookMessage> OrderBookReceived
strategy.OrderBookReceived += handler
IOrderBookMessage recibido.
public event Action<OrderFail> OrderCancelFailed
strategy.OrderCancelFailed += handler
Orden de cancelación de error evento.
public event Action<Subscription, OrderFail> OrderCancelFailReceived
strategy.OrderCancelFailReceived += handler
OrderFail evento de cancelación.
public event Action<Order> OrderCanceling
strategy.OrderCanceling += handler
El evento de envío de pedido para cancelar.
public event Action<Order> OrderChanged
strategy.OrderChanged += handler
Orden cambiado (cancelada, emparejada).
public event Action<long, Order> OrderEdited
strategy.OrderEdited += handler
Orden) evento de éxito de resultados.
public event Action<long, OrderFail> OrderEditFailed
strategy.OrderEditFailed += handler
Orden) evento de resultado de error.
public event Action<Subscription, OrderFail> OrderEditFailReceived
strategy.OrderEditFailReceived += handler
OrderFail@ edición evento.
public event Action<Subscription, IOrderLogMessage> OrderLogReceived
strategy.OrderLogReceived += handler
IOrderLogMessage recibido.
public event Action<Subscription, Order> OrderReceived
strategy.OrderReceived += handler
Orden recibida.
public event Action<Order> OrderRegistered
strategy.OrderRegistered += handler
El evento de la orden de registro exitoso.
public event Action<OrderFail> OrderRegisterFailed
strategy.OrderRegisterFailed += handler
Orden de registro de errores evento.
public event Action<Subscription, OrderFail> OrderRegisterFailReceived
strategy.OrderRegisterFailReceived += handler
OrderFail@s.
public event Action<Order> OrderRegistering
strategy.OrderRegistering += handler
El evento de envío de orden de registro.
public event Action<Order, Order> OrderReRegistering
strategy.OrderReRegistering += handler
El evento de envío de orden de reinscripción.
public event Action<Subscription, MyTrade> OwnTradeReceived
strategy.OwnTradeReceived += handler
MyTrade recibido.
public event Action ParametersChanged
strategy.ParametersChanged += handler
Los parámetros cambian el evento.
public event Action<Subscription> PnLReceived
strategy.PnLReceived += handler
PnLcambio de evento.
public event Action<Subscription, Portfolio, DateTime, decimal, decimal?, decimal?> PnLReceived2
strategy.PnLReceived2 += handler
PnLcambio de evento.
public event Action<Subscription, Portfolio> PortfolioReceived
strategy.PortfolioReceived += handler
Cartera recibida.
public event Action PositionChanged
strategy.PositionChanged += handler
Evento de cambio de posición.
public event Action<Subscription, Position> PositionReceived
strategy.PositionReceived += handler
Posición recibida.
public event Action<IStrategy> ProcessStateChanged
strategy.ProcessStateChanged += handler
ProcessStatecambio de evento.
public event PropertyChangedEventHandler PropertyChanged
strategy.PropertyChanged += handler
El elemento de diagrama valora el evento del cambio.
public event Action Reseted
strategy.Reseted += handler
El evento de la reinicialización de la estrategia.
public event Action<Subscription, Security> SecurityReceived
strategy.SecurityReceived += handler
instrumento financiero recibido.
public event Action SlippageChanged
strategy.SlippageChanged += handler
Cambio de página.
public event Action<Subscription, Exception, bool> SubscriptionFailed
strategy.SubscriptionFailed += handler
La suscripción no está.
public event Action<Subscription> SubscriptionOnline
strategy.SubscriptionOnline += handler
La suscripción está en línea.
public event Action<Subscription, object> SubscriptionReceived
strategy.SubscriptionReceived += handler
Valor recibido.
public event Action<Subscription> SubscriptionStarted
strategy.SubscriptionStarted += handler
La suscripción se inicia.
public event Action<Subscription, Exception> SubscriptionStopped
strategy.SubscriptionStopped += handler
La suscripción se detiene.
public event Action<Subscription, ITickTradeMessage> TickTradeReceived
strategy.TickTradeReceived += handler
ITickTradeMessage recibido.