public bool Initialize( string address, short port, string protocolVersion, short yybId, string accountNo, short accountType, string tradeAccount, string tradePassword, string communicationPassword, out string error) { if (!_initialized) { lock (_initializationLockObj) { if (!_initialized) { TradingEnvironment.Initialize(); _client = new TradingClient(); if (!_client.LogOn(address, port, protocolVersion, yybId, accountNo, accountType, tradeAccount, tradePassword, communicationPassword, out error)) { _client.Dispose(); _client = null; return(false); } _quotePublisher = new QuotePublisher(_client, QuoteRefreshingInterval); _orderDispatcher = new OrderDispatcher(_client, OrderRefreshingInterval); _initialized = true; return(true); } } } error = "CtpSimulator has been initialized already, can't be reinitialized"; return(false); }
public void UnInitialize() { if (_initialized) { lock (_initializationLockObj) { if (_initialized) { _quotePublisher.Stop(); _quotePublisher = null; _orderDispatcher.Stop(); _orderDispatcher = null; _client.LogOff(); _client = null; TradingEnvironment.UnInitialize(); _initialized = false; } } } }