MatchingEngineAdapter

StockSharp.MatchingEngine

Adaptador de motor correspondente baseado em mensagens. Contém lógica pura de correspondência sem emulação (sem coincidência, sem correspondência de velas, sem comissões). Implementos IMessageTransport para integração baseada em mensagens.

Implementa: IMessageTransport

Construtores

MatchingEngineAdapter
public MatchingEngineAdapter()
matchingEngineAdapter = MatchingEngineAdapter()

Inicializa uma nova instância.

Propriedades

OrderIdGenerator
public IncrementalIdGenerator OrderIdGenerator { get; set; }
value = matchingEngineAdapter.OrderIdGenerator
matchingEngineAdapter.OrderIdGenerator = value

Gerador de identificação de encomendas.

PortfolioManager
public IPortfolioManager PortfolioManager { get; set; }
value = matchingEngineAdapter.PortfolioManager
matchingEngineAdapter.PortfolioManager = value

Gestor de carteira para lidar com o estado de portfólio.

Settings
public MatchingEngineSettings Settings { get; }
value = matchingEngineAdapter.Settings

A combinar as configurações do motor.

StopOrderManager
public IStopOrderManager StopOrderManager { get; }
value = matchingEngineAdapter.StopOrderManager

Parar o gerenciador de pedidos (acesso somente para leitura).

TradeIdGenerator
public IncrementalIdGenerator TradeIdGenerator { get; set; }
value = matchingEngineAdapter.TradeIdGenerator
matchingEngineAdapter.TradeIdGenerator = value

Gerador de identificação comercial.

TransactionIdGenerator
public IdGenerator TransactionIdGenerator { get; set; }
value = matchingEngineAdapter.TransactionIdGenerator
matchingEngineAdapter.TransactionIdGenerator = value

Gerador de id de transação para uso interno (com cancelamento do grupo, posições de fechamento).

Métodos

CheckLimitOrders
public void CheckLimitOrders(SecurityId securityId, decimal? tradePrice, DateTime time, List<Message> results)
matchingEngineAdapter.CheckLimitOrders(securityId, tradePrice, time, results)

Re-avaliar ordens limite de repouso contra o livro de ordens atual e executar os que o mercado passou. Ao contrário de ordens de parar, ordens de limite são compensadas apenas no momento do registro, então um tick / quote negociação através de um limite de descanso iria deixá-lo sentado no livro e mais tarde preencher a um preço que o mercado deixou para trás.

CheckStopOrders
public void CheckStopOrders(SecurityId securityId, decimal price, DateTime time, List<Message> results)
matchingEngineAdapter.CheckStopOrders(securityId, price, time, results)

Verifique as ordens de parada contra um preço e processo de ordens desencadeadas.

GetSecurityState
public SecurityState GetSecurityState(SecurityId securityId)
result = matchingEngineAdapter.GetSecurityState(securityId)

Obter ou criar o estado do instrumento financeiro para o instrumento financeiro determinado.

ProcessMessage
public void ProcessMessage(Message message, List<Message> results)
matchingEngineAdapter.ProcessMessage(message, results)

Processe uma mensagem e recolha resultados. Pode ser chamado diretamente (sem despacho de sincronização).

ProcessOrderCancel
public void ProcessOrderCancel(OrderCancelMessage cancelMsg, List<Message> results)
matchingEngineAdapter.ProcessOrderCancel(cancelMsg, results)

Processo de cancelamento de ordem.

ProcessOrderRegister
public void ProcessOrderRegister(OrderRegisterMessage regMsg, List<Message> results)
matchingEngineAdapter.ProcessOrderRegister(regMsg, results)

Registo da ordem de processo.

SendOutMessageAsync
public ValueTask SendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = matchingEngineAdapter.SendOutMessageAsync(message, cancellationToken)

Envie mensagem.

Eventos

NewOutMessageAsync
public event Func<Message, CancellationToken, ValueTask> NewOutMessageAsync
matchingEngineAdapter.NewOutMessageAsync += handler

Novo evento de mensagem.