/// <summary> /// /// </summary> /// <returns></returns> public bool Login(string username, string password) { bool result = false; if (OperationalState == OperationalStateEnum.Disposed) { return(false); } _messageLoopOperator.Invoke(delegate() { // This is a slow blocking call, make sure to execute outside of lock. MbtComMgr manager = new MbtComMgr(); _communicationManager = manager; //_communicationManager.OnLogonSucceed += new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); _orderClient = _communicationManager.OrderClient; _orderClient.SilentMode = true; //_quotes.Initialize(_communicationManager.Quotes); //_history.Initialize(_communicationManager.HistMgr); ///_orders.Initialize(_adapter, this, _communicationManager); //_communicationManager.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(_communicationManager_OnAlertAdded); _communicationManager.EnableSplash(false); ChangeOperationalState(OperationalStateEnum.Initialized); _communicationManager.EnableSplash(false); _communicationManager.SilentMode = true; result = _communicationManager.DoLogin(HostId, username, password, ""); }, TimeSpan.FromSeconds(25)); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> public bool Logout() { _orderClient = null; //_communicationManager.OnLogonSucceed -= new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); _communicationManager = null; GC.Collect(); //_communicationManager.disp return(true); }
internal MBT () { Client = new MbtComMgr(); Quotes = Client.Quotes; Orders = Client.OrderClient; Client.EnableSplash(false); Client.SilentMode = false; QN = new QuoteNotifier(); }
/// <summary> /// /// </summary> /// <returns></returns> public bool Login(string username, string password) { bool result = false; if (OperationalState != OperationalStateEnum.Initialized && OperationalState != OperationalStateEnum.Initializing && OperationalState != OperationalStateEnum.Constructed) { return(false); } _messageLoopOperator.Start(); _messageLoopOperator.Invoke(delegate() { try { // *Never* subscribe to COM events of a property, always make sure to hold the object alive // http://www.codeproject.com/Messages/2189754/Re-Losing-COM-events-handler-in-Csharp-client.aspx if (_communicationManager == null) { // This is a slow blocking call, make sure to execute outside of lock. MbtComMgr manager = new MbtComMgr(); _communicationManager = manager; _communicationManager.OnLogonSucceed += new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); } lock (this) { _quotes.Initialize(this, _communicationManager.Quotes); _history.Initialize(_communicationManager.HistMgr); _orders.Initialize(_adapter, this, _communicationManager); _communicationManager.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(_communicationManager_OnAlertAdded); _communicationManager.EnableSplash(false); } ChangeOperationalState(OperationalStateEnum.Initialized); _communicationManager.EnableSplash(false); _communicationManager.SilentMode = true; result = _communicationManager.DoLogin(HostId, username, password, ""); } catch (Exception ex) { SystemMonitor.OperationError(ex.Message); result = false; throw; } }, TimeSpan.FromSeconds(25)); return(result); }
/// <summary> /// /// </summary> public void Dispose() { try { lock (this) { if (_quotes != null) { _quotes.Dispose(); _quotes = null; } if (_history != null) { _history.Dispose(); _history = null; } if (_orders != null) { _orders.UnInitialize(); _orders.Dispose(); _orders = null; } if (_adapter != null) { _adapter = null; } if (_communicationManager != null) { _communicationManager.OnLogonSucceed -= new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); _communicationManager = null; } if (_messageLoopOperator != null) { _messageLoopOperator.Stop(); _messageLoopOperator.Dispose(); _messageLoopOperator = null; } ChangeOperationalState(OperationalStateEnum.Disposed); } } catch (Exception ex) { SystemMonitor.OperationError(ex.Message); } //GC.Collect(); }
/// <summary> /// /// </summary> public void UnInitialize() { try { if (_orderClient != null) { // An exception is generated here, upon trying to unsubscribe these events, so we shall leave them be. // the wrapper class around the actual COM does something and releases too early ?? // ALWAYS CONSUME ORDERS EVENTS AND OPERATIONS TROUGH THE _orderClient VARIABLE, NEVER like this "_commManager.OrderClient" _orderClient.OnAccountLoaded -= new _IMbtOrderClientEvents_OnAccountLoadedEventHandler(_ordersClient_OnAccountLoaded); _orderClient.OnBalanceUpdate -= new _IMbtOrderClientEvents_OnBalanceUpdateEventHandler(_ordersClient_OnBalanceUpdate); _orderClient.OnLogonSucceed -= new _IMbtOrderClientEvents_OnLogonSucceedEventHandler(_ordersClient_OnLogonSucceed); _orderClient.OnHistoryAdded -= new _IMbtOrderClientEvents_OnHistoryAddedEventHandler(_orderClient_OnHistoryAdded); _orderClient.OnSubmit -= new _IMbtOrderClientEvents_OnSubmitEventHandler(_orderClient_OnSubmit); _orderClient.OnAcknowledge -= new _IMbtOrderClientEvents_OnAcknowledgeEventHandler(_orderClient_OnAcknowledge); _orderClient.OnPositionAdded -= new _IMbtOrderClientEvents_OnPositionAddedEventHandler(_orderClient_OnPositionAdded); _orderClient.OnExecute -= new _IMbtOrderClientEvents_OnExecuteEventHandler(_orderClient_OnExecute); _orderClient.OnReplacePlaced -= new _IMbtOrderClientEvents_OnReplacePlacedEventHandler(_orderClient_OnReplacePlaced); _orderClient = null; } if (_timer != null) { _timer.Dispose(); _timer = null; } if (_commManager != null) { _commManager.OnAlertAdded -= new IMbtComMgrEvents_OnAlertAddedEventHandler(_commManager_OnAlertAdded); _commManager = null; } } catch (Exception ex) { SystemMonitor.OperationError(ex.Message); } finally { _orderClient = null; _timer = null; _commManager = null; _manager = null; _adapter = null; } }
/// <summary> /// /// </summary> public void Dispose() { lock (this) { //if (_quotes != null) //{ // _quotes.Dispose(); // _quotes = null; //} //if (_history != null) //{ // _history.Dispose(); // _history = null; //} //if (_orders != null) //{ // _orders.UnInitialize(); // _orders.Dispose(); // _orders = null; //} //if (_adapter != null) //{ // _adapter = null; //} if (_communicationManager != null) { //_communicationManager.OnLogonSucceed -= new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); _communicationManager = null; } if (_messageLoopOperator != null) { _messageLoopOperator.Stop(); _messageLoopOperator.Dispose(); _messageLoopOperator = null; } ChangeOperationalState(OperationalStateEnum.Disposed); } //GC.Collect(); }
/// <summary> /// /// </summary> public bool Initialize(MBTradingAdapter adapter, MBTradingConnectionManager manager, MbtComMgr communicationManager) { SystemMonitor.CheckError(_messageLoopOperator.InvokeRequred == false, "Init must better be called on message loop method."); StatusSynchronizationEnabled = true; StatusSynchronizationSource = manager; try { _adapter = adapter; _commManager = communicationManager; _orderClient = _commManager.OrderClient; // *Never* subscribe to COM events of a property, always make sure to hold the object alive // http://www.codeproject.com/Messages/2189754/Re-Losing-COM-events-handler-in-Csharp-client.aspx // *** ALWAYS CONSUME ORDERS EVENTS AND OPERATIONS TROUGH THE _orderClient VARIABLE, NEVER like this "_commManager.OrderClient" _commManager.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(_commManager_OnAlertAdded); _manager = manager; _orderClient.SilentMode = true; _timer = new Timer(TimerUpdate, null, 10000, 1000); _orderClient.OnAccountLoaded += new _IMbtOrderClientEvents_OnAccountLoadedEventHandler(_ordersClient_OnAccountLoaded); _orderClient.OnBalanceUpdate += new _IMbtOrderClientEvents_OnBalanceUpdateEventHandler(_ordersClient_OnBalanceUpdate); _orderClient.OnLogonSucceed += new _IMbtOrderClientEvents_OnLogonSucceedEventHandler(_ordersClient_OnLogonSucceed); _orderClient.OnHistoryAdded += new _IMbtOrderClientEvents_OnHistoryAddedEventHandler(_orderClient_OnHistoryAdded); _orderClient.OnSubmit += new _IMbtOrderClientEvents_OnSubmitEventHandler(_orderClient_OnSubmit); _orderClient.OnAcknowledge += new _IMbtOrderClientEvents_OnAcknowledgeEventHandler(_orderClient_OnAcknowledge); _orderClient.OnPositionAdded += new _IMbtOrderClientEvents_OnPositionAddedEventHandler(_orderClient_OnPositionAdded); _orderClient.OnExecute += new _IMbtOrderClientEvents_OnExecuteEventHandler(_orderClient_OnExecute); _orderClient.OnReplacePlaced += new _IMbtOrderClientEvents_OnReplacePlacedEventHandler(_orderClient_OnReplacePlaced); } catch (Exception ex) { SystemMonitor.OperationError(ex.Message); return(false); } return(true); }
public ServerMB(TLServer tls) { tl = tls; m_ComMgr = null; try { m_ComMgr = new MbtComMgrClass(); } catch (Exception ex) { System.Diagnostics.Process.Start(@"http://code.google.com/p/tradelink/wiki/ComFactoryErrors"); debug("An error occured: " + ex.Message + ex.StackTrace); return; } m_ComMgr.SilentMode = true; m_ComMgr.EnableSplash(false); m_OrderClient = m_ComMgr.OrderClient; m_OrderClient.SilentMode = true; if (!m_ComMgr.IsPreviousInstanceDetected("tradelink")) { m_OrderClient.OnDemandMode = false; v("order client on demand mode disabled as previous tradelink was running."); } m_Quotes = m_ComMgr.Quotes; m_Orders = m_OrderClient.OpenOrders; m_Hist = m_ComMgr.HistMgr; // tradelink bindings tl.newProviderName = Providers.MBTrading; tl.newFeatureRequest += new MessageArrayDelegate(tl_newFeatureRequest); tl.newSendOrderRequest += new OrderDelegateStatus(tl_newSendOrderRequest); tl.newRegisterSymbols += new SymbolRegisterDel(tl_newRegisterSymbols); tl.newOrderCancelRequest += new LongDelegate(tl_newOrderCancelRequest); tl.newAcctRequest += new StringDelegate(tl_newAcctRequest); tl.newPosList += new PositionArrayDelegate(tl_newPosList); tl.newUnknownRequest += new UnknownMessageDelegate(tl_newUnknownRequest); // mb bindings m_OrderClient.OnAccountLoaded += new _IMbtOrderClientEvents_OnAccountLoadedEventHandler(m_OrderClient_OnAccountLoaded); m_OrderClient.OnAccountLoading += new _IMbtOrderClientEvents_OnAccountLoadingEventHandler(m_OrderClient_OnAccountLoading); m_OrderClient.OnSubmit += new _IMbtOrderClientEvents_OnSubmitEventHandler(m_OrderClient_OnSubmit); m_OrderClient.OnClose += new _IMbtOrderClientEvents_OnCloseEventHandler(m_OrderClient_OnClose); m_OrderClient.OnConnect += new _IMbtOrderClientEvents_OnConnectEventHandler(m_OrderClient_OnConnect); m_OrderClient.OnLogonSucceed += new _IMbtOrderClientEvents_OnLogonSucceedEventHandler(m_OrderClient_OnLogonSucceed); m_ComMgr.OnCriticalShutdown += new IMbtComMgrEvents_OnCriticalShutdownEventHandler(m_ComMgr_OnCriticalShutdown); m_ComMgr.OnHealthUpdate += new IMbtComMgrEvents_OnHealthUpdateEventHandler(m_ComMgr_OnHealthUpdate); m_ComMgr.OnLogonSucceed += new IMbtComMgrEvents_OnLogonSucceedEventHandler(m_ComMgr_OnLogonSucceed); m_ComMgr.OnLogonDeny += new IMbtComMgrEvents_OnLogonDenyEventHandler(m_ComMgr_OnLogonDeny); m_Quotes.OnClose += new _IMbtQuotesEvents_OnCloseEventHandler(m_Quotes_OnClose); m_Quotes.OnConnect += new _IMbtQuotesEvents_OnConnectEventHandler(m_Quotes_OnConnect); m_Quotes.OnLogonSucceed += new _IMbtQuotesEvents_OnLogonSucceedEventHandler(m_Quotes_OnLogonSucceed); m_OrderClient.OnPositionAdded += new _IMbtOrderClientEvents_OnPositionAddedEventHandler(m_OrderClient_OnPositionAdded); m_OrderClient.OnPositionUpdated += new _IMbtOrderClientEvents_OnPositionUpdatedEventHandler(m_OrderClient_OnPositionUpdated); //m_OrderClient.OnExecute += new _IMbtOrderClientEvents_OnExecuteEventHandler( m_OrderClient_OnExecute ); m_OrderClient.OnCancelPlaced += new _IMbtOrderClientEvents_OnCancelPlacedEventHandler(m_OrderClient_OnCancelPlaced); m_OrderClient.OnCancelRejected += new _IMbtOrderClientEvents_OnCancelRejectedEventHandler(m_OrderClient_OnCancelRejected); //m_OrderClient.OnRemove += new _IMbtOrderClientEvents_OnRemoveEventHandler( m_OrderClient_OnRemove ); m_OrderClient.OnHistoryAdded += new _IMbtOrderClientEvents_OnHistoryAddedEventHandler(m_OrderClient_OnHistoryAdded); m_Hist.OnDataEvent += new _IMbtHistEvents_OnDataEventEventHandler(m_Hist_OnDataEvent); //disable old ticks //DisableOldTicks = Convert.ToBoolean(ConfigurationSettings.AppSettings["DisableOldTicks"]); DisableOldTicks = true; debug("all binding configured successfully."); }
/// <summary> /// /// </summary> public bool Initialize(MBTradingAdapter adapter, MBTradingConnectionManager manager, MbtComMgr communicationManager) { SystemMonitor.CheckError(_messageLoopOperator.InvokeRequred == false, "Init must better be called on message loop method."); StatusSynchronizationEnabled = true; StatusSynchronizationSource = manager; try { _adapter = adapter; _commManager = communicationManager; _orderClient = _commManager.OrderClient; // *Never* subscribe to COM events of a property, always make sure to hold the object alive // http://www.codeproject.com/Messages/2189754/Re-Losing-COM-events-handler-in-Csharp-client.aspx // *** ALWAYS CONSUME ORDERS EVENTS AND OPERATIONS TROUGH THE _orderClient VARIABLE, NEVER like this "_commManager.OrderClient" _commManager.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(_commManager_OnAlertAdded); _manager = manager; _orderClient.SilentMode = true; _timer = new Timer(TimerUpdate, null, 10000, 1000); _orderClient.OnAccountLoaded += new _IMbtOrderClientEvents_OnAccountLoadedEventHandler(_ordersClient_OnAccountLoaded); _orderClient.OnBalanceUpdate += new _IMbtOrderClientEvents_OnBalanceUpdateEventHandler(_ordersClient_OnBalanceUpdate); _orderClient.OnLogonSucceed += new _IMbtOrderClientEvents_OnLogonSucceedEventHandler(_ordersClient_OnLogonSucceed); _orderClient.OnHistoryAdded += new _IMbtOrderClientEvents_OnHistoryAddedEventHandler(_orderClient_OnHistoryAdded); _orderClient.OnSubmit += new _IMbtOrderClientEvents_OnSubmitEventHandler(_orderClient_OnSubmit); _orderClient.OnAcknowledge += new _IMbtOrderClientEvents_OnAcknowledgeEventHandler(_orderClient_OnAcknowledge); _orderClient.OnPositionAdded += new _IMbtOrderClientEvents_OnPositionAddedEventHandler(_orderClient_OnPositionAdded); _orderClient.OnExecute += new _IMbtOrderClientEvents_OnExecuteEventHandler(_orderClient_OnExecute); _orderClient.OnReplacePlaced += new _IMbtOrderClientEvents_OnReplacePlacedEventHandler(_orderClient_OnReplacePlaced); } catch (Exception ex) { SystemMonitor.OperationError(ex.Message); return false; } return true; }
/// <summary> /// /// </summary> /// <returns></returns> public bool Logout() { _orderClient = null; //_communicationManager.OnLogonSucceed -= new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); _communicationManager = null; GC.Collect(); //_communicationManager.disp return true; }
/// <summary> /// /// </summary> /// <returns></returns> public bool Login(string username, string password) { bool result = false; if (OperationalState == OperationalStateEnum.Disposed) { return false; } _messageLoopOperator.Invoke(delegate() { // This is a slow blocking call, make sure to execute outside of lock. MbtComMgr manager = new MbtComMgr(); _communicationManager = manager; //_communicationManager.OnLogonSucceed += new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); _orderClient = _communicationManager.OrderClient; _orderClient.SilentMode = true; //_quotes.Initialize(_communicationManager.Quotes); //_history.Initialize(_communicationManager.HistMgr); ///_orders.Initialize(_adapter, this, _communicationManager); //_communicationManager.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(_communicationManager_OnAlertAdded); _communicationManager.EnableSplash(false); ChangeOperationalState(OperationalStateEnum.Initialized); _communicationManager.EnableSplash(false); _communicationManager.SilentMode = true; result = _communicationManager.DoLogin(HostId, username, password, ""); }, TimeSpan.FromSeconds(25)); return result; }
/// <summary> /// /// </summary> /// <returns></returns> public bool Login(string username, string password) { bool result = false; if (OperationalState != OperationalStateEnum.Initialized && OperationalState != OperationalStateEnum.Initializing && OperationalState != OperationalStateEnum.Constructed) { return false; } _messageLoopOperator.Start(); _messageLoopOperator.Invoke(delegate() { try { // *Never* subscribe to COM events of a property, always make sure to hold the object alive // http://www.codeproject.com/Messages/2189754/Re-Losing-COM-events-handler-in-Csharp-client.aspx if (_communicationManager == null) { // This is a slow blocking call, make sure to execute outside of lock. MbtComMgr manager = new MbtComMgr(); _communicationManager = manager; _communicationManager.OnLogonSucceed += new IMbtComMgrEvents_OnLogonSucceedEventHandler(_communicationManager_OnLogonSucceed); } lock (this) { _quotes.Initialize(_communicationManager.Quotes); _history.Initialize(_communicationManager.HistMgr); _orders.Initialize(_adapter, this, _communicationManager); _communicationManager.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(_communicationManager_OnAlertAdded); _communicationManager.EnableSplash(false); } ChangeOperationalState(OperationalStateEnum.Initialized); _communicationManager.EnableSplash(false); _communicationManager.SilentMode = true; result = _communicationManager.DoLogin(HostId, username, password, ""); } catch (Exception ex) { SystemMonitor.OperationError(ex.Message); result = false; throw; } }, TimeSpan.FromSeconds(25)); return result; }
public ServerMB(TLServer tls) { v("VerboseDebugging: " + VerboseDebugging); tl = tls; m_ComMgr = null; try { m_ComMgr = new MbtComMgr(); //pmh - Preferred. Was MbtComMgrClass(). Either should work. } catch (Exception ex) { System.Diagnostics.Process.Start(@"http://code.google.com/p/tradelink/wiki/ComFactoryErrors"); debug("m_ComMgr = new MbtComMgr() failed: " + ex.Message + ex.StackTrace); //pmh return; } // m_ComMgr.SilentMode = true; //pmh - 9/18/12 - display login dialog if blank UID/Pwd (this allows me/pmh to connect to special servers for advanced testing) m_ComMgr.EnableSplash(false); m_OrderClient = m_ComMgr.OrderClient; m_OrderClient.SilentMode = true; /* //pmh - OnDemandMode has been deprecated if (!m_ComMgr.IsPreviousInstanceDetected("tradelink")) { m_OrderClient.OnDemandMode = false; v("order client on demand mode disabled as previous tradelink was running."); } */ m_Quotes = m_ComMgr.Quotes; m_OpenOrders = m_OrderClient.OpenOrders; m_HistMgr = m_ComMgr.HistMgr; // tradelink bindings tl.newProviderName = Providers.MBTrading; tl.newFeatureRequest += new MessageArrayDelegate(tl_newFeatureRequest); tl.newSendOrderRequest += new OrderDelegateStatus(tl_newSendOrderRequest); tl.newRegisterSymbols += new SymbolRegisterDel(tl_newRegisterSymbols); tl.newOrderCancelRequest += new LongDelegate(tl_newOrderCancelRequest); tl.newAcctRequest += new StringDelegate(tl_newAcctRequest); tl.newPosList += new PositionAccountArrayDelegate(tl_newPosList); tl.newUnknownRequest += new UnknownMessageDelegate(tl_newUnknownRequest); //pmh - 8/29/12 - reordered alphabetically and added almost all remaining events // MB Trading MbtComMgr bindings m_ComMgr.OnAlertAdded += new IMbtComMgrEvents_OnAlertAddedEventHandler(m_ComMgr_OnAlertAdded); //pmh m_ComMgr.OnAlertsRefresh += new IMbtComMgrEvents_OnAlertsRefreshEventHandler(m_ComMgr_OnAlertsRefresh); //pmh m_ComMgr.OnCriticalShutdown += new IMbtComMgrEvents_OnCriticalShutdownEventHandler(m_ComMgr_OnCriticalShutdown); //pmh m_ComMgr.OnHealthUpdate += new IMbtComMgrEvents_OnHealthUpdateEventHandler(m_ComMgr_OnHealthUpdate); m_ComMgr.OnLogonDeny += new IMbtComMgrEvents_OnLogonDenyEventHandler(m_ComMgr_OnLogonDeny); m_ComMgr.OnLogonSucceed += new IMbtComMgrEvents_OnLogonSucceedEventHandler(m_ComMgr_OnLogonSucceed); /* * pmh - add later if desired * m_ComMgr.OnMATAccountPercentSet += new IMbtComMgrEvents_OnMATAccountPercentSetEventHandler(m_ComMgr_OnMATAccountPercentSet); //pmh m_ComMgr.OnMATGroupAccountAdded += new IMbtComMgrEvents_OnMATGroupAccountAddedEventHandler(m_ComMgr_OnMATGroupAccountAdded); //pmh m_ComMgr.OnMATGroupAccountRemoved += new IMbtComMgrEvents_OnMATGroupAccountRemovedEventHandler(m_ComMgr_OnMATGroupAccountRemoved); //pmh m_ComMgr.OnMATGroupsGroupAdded += new IMbtComMgrEvents_OnMATGroupsGroupAddedEventHandler(m_ComMgr_OnMATGroupsGroupAdded); //pmh m_ComMgr.OnMATGroupsGroupRemoved += new IMbtComMgrEvents_OnMATGroupsGroupRemovedEventHandler(m_ComMgr_OnMATGroupsGroupRemoved); //pmh m_ComMgr.OnMATGroupsGroupRenamed += new IMbtComMgrEvents_OnMATGroupsGroupRenamedEventHandler(m_ComMgr_OnMATGroupsGroupRenamed); //pmh */ // MB Trading MbtOrderClient bindings m_OrderClient.OnAccountLoaded += new _IMbtOrderClientEvents_OnAccountLoadedEventHandler(m_OrderClient_OnAccountLoaded); m_OrderClient.OnAccountLoading += new _IMbtOrderClientEvents_OnAccountLoadingEventHandler(m_OrderClient_OnAccountLoading); m_OrderClient.OnAccountUnavailable += new _IMbtOrderClientEvents_OnAccountUnavailableEventHandler(m_OrderClient_OnAccountUnavailable); //pmh m_OrderClient.OnAcknowledge += new _IMbtOrderClientEvents_OnAcknowledgeEventHandler(m_OrderClient_OnAcknowledge); //pmh m_OrderClient.OnBalanceUpdate += new _IMbtOrderClientEvents_OnBalanceUpdateEventHandler(m_OrderClient_OnBalanceUpdate); //pmh m_OrderClient.OnCancelPlaced += new _IMbtOrderClientEvents_OnCancelPlacedEventHandler(m_OrderClient_OnCancelPlaced); m_OrderClient.OnCancelRejected += new _IMbtOrderClientEvents_OnCancelRejectedEventHandler(m_OrderClient_OnCancelRejected); m_OrderClient.OnClose += new _IMbtOrderClientEvents_OnCloseEventHandler(m_OrderClient_OnClose); m_OrderClient.OnConnect += new _IMbtOrderClientEvents_OnConnectEventHandler(m_OrderClient_OnConnect); //pmh - 9/21/12 - See note on DefaultAccount at end of document! //m_OrderClient.OnDefaultAccountChanged += new _IMbtOrderClientEvents_OnDefaultAccountChangedEventHandler(m_OrderClient_OnDefaultAccountChanged); //pmh m_OrderClient.OnExecute += new _IMbtOrderClientEvents_OnExecuteEventHandler(m_OrderClient_OnExecute); //pmh m_OrderClient.OnHistoryAdded += new _IMbtOrderClientEvents_OnHistoryAddedEventHandler(m_OrderClient_OnHistoryAdded); m_OrderClient.OnLogonSucceed += new _IMbtOrderClientEvents_OnLogonSucceedEventHandler(m_OrderClient_OnLogonSucceed); m_OrderClient.OnPositionAdded += new _IMbtOrderClientEvents_OnPositionAddedEventHandler(m_OrderClient_OnPositionAdded); m_OrderClient.OnPositionStrategyGroupAdded += new _IMbtOrderClientEvents_OnPositionStrategyGroupAddedEventHandler(m_OrderClient_OnPositionStrategyGroupAdded); //pmh m_OrderClient.OnPositionStrategyGroupRemoved += new _IMbtOrderClientEvents_OnPositionStrategyGroupRemovedEventHandler(m_OrderClient_OnPositionStrategyGroupRemoved); //pmh m_OrderClient.OnPositionStrategyGroupUpdated += new _IMbtOrderClientEvents_OnPositionStrategyGroupUpdatedEventHandler(m_OrderClient_OnPositionStrategyGroupUpdated); //pmh m_OrderClient.OnPositionUpdated += new _IMbtOrderClientEvents_OnPositionUpdatedEventHandler(m_OrderClient_OnPositionUpdated); m_OrderClient.OnRemove += new _IMbtOrderClientEvents_OnRemoveEventHandler(m_OrderClient_OnRemove); //pmh m_OrderClient.OnReplacePlaced += new _IMbtOrderClientEvents_OnReplacePlacedEventHandler(m_OrderClient_OnReplacePlaced); //pmh m_OrderClient.OnReplaceRejected += new _IMbtOrderClientEvents_OnReplaceRejectedEventHandler(m_OrderClient_OnReplaceRejected); //pmh m_OrderClient.OnSubmit += new _IMbtOrderClientEvents_OnSubmitEventHandler(m_OrderClient_OnSubmit); // MB Trading MbtQuote bindings m_Quotes.OnClose += new _IMbtQuotesEvents_OnCloseEventHandler(m_Quotes_OnClose); m_Quotes.OnConnect += new _IMbtQuotesEvents_OnConnectEventHandler(m_Quotes_OnConnect); m_Quotes.OnLogonSucceed += new _IMbtQuotesEvents_OnLogonSucceedEventHandler(m_Quotes_OnLogonSucceed); // MB Trading MbtHist bindings m_HistMgr.OnDataEvent += new _IMbtHistEvents_OnDataEventEventHandler(m_HistMgr_OnDataEvent); m_HistMgr.OnError += new _IMbtHistEvents_OnErrorEventHandler(m_HistMgr_OnError); //disable old ticks //DisableOldTicks = Convert.ToBoolean(ConfigurationSettings.AppSettings["DisableOldTicks"]); DisableOldTicks = true; debug("TL binding and MBT Desktop event mapping complete."); }