MatchingEngineAdapter
Adaptador de motor de conexión basado en mensajes. Contiene lógica de juego pura sin emulación (sin azar, sin cervecería, sin comisiones). Implementa IMessageTransport@ para la integración basada en mensajes.
Implementa: IMessageTransport
Constructores
public MatchingEngineAdapter()
matchingEngineAdapter = MatchingEngineAdapter()
Inicia una nueva instancia.
Propiedades
public IncrementalIdGenerator OrderIdGenerator { get; set; }
value = matchingEngineAdapter.OrderIdGenerator
matchingEngineAdapter.OrderIdGenerator = value
Generador de identificación de pedidos.
public IPortfolioManager PortfolioManager { get; set; }
value = matchingEngineAdapter.PortfolioManager
matchingEngineAdapter.PortfolioManager = value
Gerente de cartera para el estado de la cartera.
public MatchingEngineSettings Settings { get; }
value = matchingEngineAdapter.Settings
Ajustes de motor coincidentes.
public IStopOrderManager StopOrderManager { get; }
value = matchingEngineAdapter.StopOrderManager
Detener el administrador de pedidos (acceso sólo lectura).
public IncrementalIdGenerator TradeIdGenerator { get; set; }
value = matchingEngineAdapter.TradeIdGenerator
matchingEngineAdapter.TradeIdGenerator = value
Generador de identificación comercial.
public IdGenerator TransactionIdGenerator { get; set; }
value = matchingEngineAdapter.TransactionIdGenerator
matchingEngineAdapter.TransactionIdGenerator = value
Generador de id de transacciones para uso interno (con cancelación de grupos, posiciones cercanas).
Métodos
public void CheckLimitOrders(SecurityId securityId, decimal? tradePrice, DateTime time, List<Message> results)
matchingEngineAdapter.CheckLimitOrders(securityId, tradePrice, time, results)
Reevaluar las órdenes de descanso límite contra el libro de pedidos actual y ejecutar las que el mercado ha pasado. A diferencia de las órdenes de parada, las órdenes límite se igualan solamente en el tiempo de registro, por lo que un cambio de marca / cita a través de un límite de descanso lo dejaría sentado en el libro y después llenar a un precio que el mercado ha dejado atrás.
public void CheckStopOrders(SecurityId securityId, decimal price, DateTime time, List<Message> results)
matchingEngineAdapter.CheckStopOrders(securityId, price, time, results)
Revisa las órdenes de parada contra un precio y el proceso desencadenaron órdenes.
public SecurityState GetSecurityState(SecurityId securityId)
result = matchingEngineAdapter.GetSecurityState(securityId)
Obtenga o cree un estado de instrumento financiero para el instrumento financiero dado.
public void ProcessMessage(Message message, List<Message> results)
matchingEngineAdapter.ProcessMessage(message, results)
Procese un mensaje y recoja los resultados. Se puede llamar directamente (sin envío de asinc).
public void ProcessOrderCancel(OrderCancelMessage cancelMsg, List<Message> results)
matchingEngineAdapter.ProcessOrderCancel(cancelMsg, results)
Cancelación del pedido del proceso.
public void ProcessOrderRegister(OrderRegisterMessage regMsg, List<Message> results)
matchingEngineAdapter.ProcessOrderRegister(regMsg, results)
Registro de pedidos de procesos.
public ValueTask SendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = matchingEngineAdapter.SendOutMessageAsync(message, cancellationToken)
Envía mensaje.
Eventos
public event Func<Message, CancellationToken, ValueTask> NewOutMessageAsync
matchingEngineAdapter.NewOutMessageAsync += handler
Nuevo evento de mensaje.