Ejemplo n.º 1
0
        public void OnQuoteAdded(MtQuote quote)
        {
            Log.DebugFormat("OnQuoteAdded: begin. quote = {0}", quote);

            QuoteAdded?.Invoke(quote);

            Log.Debug("OnQuoteAdded: end.");
        }
Ejemplo n.º 2
0
        private void expert_QuoteChanged(MtExpert expert, MtQuote quote)
        {
            Log.DebugFormat("expert_QuoteChanged: begin. expert = {0}, quote = {1}", expert, quote);

            _service.QuoteUpdate(quote);

            Log.Debug("expert_QuoteChanged: end.");
        }
Ejemplo n.º 3
0
        public void OnQuoteRemoved(MtQuote quote)
        {
            Debug.WriteLine("[INFO] MtClient::OnQuoteRemoved");

            if (QuoteRemoved != null)
            {
                QuoteRemoved(quote);
            }
        }
Ejemplo n.º 4
0
        private void FireOnQuoteChanged(MtQuote quote)
        {
            var handler = QuoteChanged;

            if (handler != null)
            {
                handler(this, quote);
            }
        }
Ejemplo n.º 5
0
        public MtExpert(int handle, MtQuote quote, IMetaTraderHandler mtHandler)
        {
            if (mtHandler == null)
            {
                throw new ArgumentNullException(nameof(mtHandler));
            }

            Quote     = quote;
            Handle    = handle;
            _mtHadler = mtHandler;
        }
Ejemplo n.º 6
0
        public void OnQuoteUpdate(MtQuote quote)
        {
            if (quote != null)
            {
                if (QuoteUpdated != null)
                {
                    QuoteUpdated(quote);
                }

                Debug.WriteLine("[INFO] MtClient::OnQuoteUpdate: " + quote);
            }
        }
Ejemplo n.º 7
0
        public void OnQuoteUpdate(MtQuote quote)
        {
            Log.DebugFormat("OnQuoteUpdate: begin. quote = {0}", quote);

            if (quote == null)
            {
                return;
            }

            QuoteUpdated?.Invoke(quote);

            Log.Debug("OnQuoteUpdate: end.");
        }
Ejemplo n.º 8
0
        public MtExpert(int handle, string symbol, double bid, double ask, IMetaTraderHandler mtHandler)
        {
            if (mtHandler == null)
            {
                throw new ArgumentNullException(nameof(mtHandler));
            }

            _quote = new MtQuote {
                ExpertHandle = handle, Instrument = symbol, Bid = bid, Ask = ask
            };
            Handle    = handle;
            _mtHadler = mtHandler;
        }
Ejemplo n.º 9
0
        public override void UpdateQuote(MtQuote quote)
        {
            Log.Debug("UpdateQuote: begin.");

            base.UpdateQuote(quote);

            if (IsTestMode)
            {
                //reset timer
                _stopTimer.Stop();
                _stopTimer.Start();
            }

            Log.Debug("UpdateQuote: end.");
        }
Ejemplo n.º 10
0
        public void OnQuoteRemoved(MtQuote quote)
        {
            try
            {
                mClientsLocker.AcquireReaderLock(2000);

                List <IMtApiCallback> crashedClientsCallback = null;

                try
                {
                    foreach (var callback in mClientCallbacks)
                    {
                        try
                        {
                            callback.OnQuoteRemoved(quote);
                        }
                        catch (Exception)
                        {
                            if (crashedClientsCallback == null)
                            {
                                crashedClientsCallback = new List <IMtApiCallback>();
                            }

                            crashedClientsCallback.Add(callback);
                        }
                    }
                }
                finally
                {
                    mClientsLocker.ReleaseReaderLock();
                }

                removeCrashedClientCallbacks(crashedClientsCallback);
            }
            catch (ApplicationException)
            {
            }
        }
Ejemplo n.º 11
0
 public void OnQuoteRemoved(MtQuote quote)
 {
     ExecuteCallbackAction(a => a.OnQuoteRemoved(quote));
 }
Ejemplo n.º 12
0
 public void QuoteUpdate(MtQuote quote)
 {
     ExecuteCallbackAction(a => a.OnQuoteUpdate(quote));
 }
Ejemplo n.º 13
0
 private void FireOnQuoteChanged(MtQuote quote)
 {
     QuoteChanged?.Invoke(this, quote);
 }
Ejemplo n.º 14
0
 public MtExpert(int handle, MtQuote quote, IMetaTraderHandler mtHandler)
 {
     Quote = quote;
     Handle = handle;
     mMtHadler = mtHandler;
 }
Ejemplo n.º 15
0
 private void expert_QuoteChanged(MtExpert expert, MtQuote quote)
 {
     mService.QuoteUpdate(quote);
 }
Ejemplo n.º 16
0
        public void OnQuoteRemoved(MtQuote quote)
        {
            try
            {
                mClientsLocker.AcquireReaderLock(2000);

                List<IMtApiCallback> crashedClientsCallback = null;

                try
                {
                    foreach (var callback in mClientCallbacks)
                    {
                        try
                        {
                            callback.OnQuoteRemoved(quote);
                        }
                        catch (Exception)
                        {
                            if (crashedClientsCallback == null)
                                crashedClientsCallback = new List<IMtApiCallback>();

                            crashedClientsCallback.Add(callback);
                        }
                    }
                }
                finally
                {
                    mClientsLocker.ReleaseReaderLock();
                }

                removeCrashedClientCallbacks(crashedClientsCallback);
            }
            catch (ApplicationException)
            {
            }
        }
Ejemplo n.º 17
0
        public void OnQuoteUpdate(MtQuote quote)
        {
            if (quote != null)
            {                
                if (QuoteUpdated != null)
                {
                    QuoteUpdated(quote);
                }

                Debug.WriteLine("[INFO] MtClient::OnQuoteUpdate: " + quote);
            }
        }
Ejemplo n.º 18
0
 private void expert_QuoteChanged(MtExpert expert, MtQuote quote)
 {
     mService.QuoteUpdate(quote);
 }
Ejemplo n.º 19
0
 public MtExpert(int handle, MtQuote quote, IMetaTraderHandler mtHandler)
 {
     Quote     = quote;
     Handle    = handle;
     _mtHadler = mtHandler;
 }
Ejemplo n.º 20
0
        public void OnQuoteRemoved(MtQuote quote)
        {
            Debug.WriteLine("[INFO] MtClient::OnQuoteRemoved");

            if (QuoteRemoved != null)
            {
                QuoteRemoved(quote);
            }
        }
Ejemplo n.º 21
0
        public void OnQuoteRemoved(MtQuote quote)
        {
            Debug.WriteLine("[INFO] MtClient::OnQuoteRemoved");

            QuoteRemoved?.Invoke(quote);
        }