protected XApiClient(XProvider provider, ConnectionInfo info, IXSpi spi = null) { Info = info; Provider = provider; User = provider.GetUserInfo(info.User); Server = provider.GetServerInfo(info.Server, info.UseType); Logger = LogManager.GetLogger($"{provider.Name}.{info.LogPrefix}.{User.UserID}"); Api = provider.CreateXApi(info); if (spi != null) { Api.RegisterSpi(spi); } Api.ErrorHappened += OnErrorHappened; Api.StatusChanged += OnStatusChanged; Api.InvestorReceived += OnInvestorReceived; Api.AccountReceived += OnRspQryAccount; Api.PositionReceived += OnRspQryPositions; Api.OrderReturn += OnRtnOrder; Api.TradeReturn += OnRtnTrade; Api.InstrumentReceived += OnInstrumentReceived; Api.MarketDataReceived += OnMarketDataReceived; Api.OrderReceived += OnOrderReceived; Api.TradeReceived += OnTradeReceived; Api.InstrumentStatusChanged += OnInstrumentStatusChanged; }
public void RegisterSpi(IXSpi spi) { if (_client != null) { return; } _client = new CtpMdClient(spi); }
public void RegisterSpi(IXSpi spi) { if (_client != null) { _client.RegisterSpi(spi); return; } _client = new CtpTradeClient(spi); }
public TraderClient CreateTrader(IXSpi spi) { var connection = GetConnectionInfo(TraderClient.ApiType); if (connection == null) { return(null); } if (!CheckConnection(connection)) { return(null); } return(new TraderClient(_provider, connection, spi)); }
public TraderClient(XProvider provider, ConnectionInfo info, IXSpi spi = null) : base(provider, info, spi) { }
public CtpTradeClient(IXSpi spi) { Spi = spi; _publisher = new StatusPublisher(spi); }
public void RegisterSpi(IXSpi spi) { _api?.RegisterSpi(spi); }
public TraderClient CreateTrader(IXSpi spi) { return(_connectManager.CreateTrader(spi)); }
public void RegisterSpi(IXSpi spi) { _spi = spi; }
public CtpMdClient(IXSpi spi) { _spi = spi; _publisher = new StatusPublisher(spi); }
public void RegisterSpi(IXSpi spi) { Spi = spi; _publisher = new StatusPublisher(spi); }
public CtpMdClient(IXSpi spi) { _spi = spi; _publisher = new StatusPublisher(spi); _instrumentsView = _instruments.ToArray(); }