Example #1
0
        public ViewModel()
        {
            // Init MtApi client
            mMtApiClient = new MtApi5Client();

            mMtApiClient.ConnectionStateChanged += new EventHandler <Mt5ConnectionEventArgs>(mMtApiClient_ConnectionStateChanged);
            mMtApiClient.QuoteAdded             += new EventHandler <Mt5QuoteEventArgs>(mMtApiClient_QuoteAdded);
            mMtApiClient.QuoteRemoved           += new EventHandler <Mt5QuoteEventArgs>(mMtApiClient_QuoteRemoved);
            mMtApiClient.QuoteUpdated           += new MtApi5Client.QuoteHandler(mMtApiClient_QuoteUpdated);

            _quotesMap = new Dictionary <string, QuoteViewModel>();

            ConnectionState   = mMtApiClient.ConnectionState;
            ConnectionMessage = "Disconnected";
            Port = 8228; //default local port

            InitCommands();

            var request = new MqlTradeRequest {
                Action    = ENUM_TRADE_REQUEST_ACTIONS.TRADE_ACTION_DEAL
                , Type    = ENUM_ORDER_TYPE.ORDER_TYPE_BUY
                , Volume  = 0.1
                , Comment = "Test Trade Request"
            };

            TradeRequest = new MqlTradeRequestViewModel(request);

            TimeSeriesValues       = new TimeSeriesValueViewModel();
            TimeSeriesValues.Count = 100;
        }
Example #2
0
 public void mMtApiClient_QuoteRemoved(object sender, Mt5QuoteEventArgs e, MtApi5Client mt)
 {
     if (mapQuotes.Keys.Contains(e.Quote.Instrument))
     {
         mapQuotes.Remove(e.Quote.Instrument);
     }
 }
Example #3
0
        }                                          //方位注释


        public PositionString(MtApi5Client mt, int index)
        {
            this.mt    = mt;
            this.index = index;

            RefreshFix();
        }
Example #4
0
        public ViewModel()
        {
            // Init MtApi client
            _mtApiClient = new MtApi5Client();

            _mtApiClient.ConnectionStateChanged += mMtApiClient_ConnectionStateChanged;
            _mtApiClient.QuoteAdded             += mMtApiClient_QuoteAdded;
            _mtApiClient.QuoteRemoved           += mMtApiClient_QuoteRemoved;
            _mtApiClient.QuoteUpdated           += mMtApiClient_QuoteUpdated;
            _mtApiClient.OnTradeTransaction     += mMtApiClient_OnTradeTransaction;
            _mtApiClient.OnBookEvent            += _mtApiClient_OnBookEvent;

            _quotesMap = new Dictionary <string, QuoteViewModel>();

            ConnectionState   = _mtApiClient.ConnectionState;
            ConnectionMessage = "Disconnected";
            Port = 8228; //default local port

            InitCommands();

            var request = new MqlTradeRequest {
                Action    = ENUM_TRADE_REQUEST_ACTIONS.TRADE_ACTION_DEAL
                , Type    = ENUM_ORDER_TYPE.ORDER_TYPE_BUY
                , Volume  = 0.1
                , Comment = "Test Trade Request"
            };

            TradeRequest = new MqlTradeRequestViewModel(request);

            TimeSeriesValues = new TimeSeriesValueViewModel {
                Count = 100
            };
        }
Example #5
0
        public MangerPosition(MtApi5Client mt)
        {
            int totalPostions = mt.PositionsTotal();

            for (int i = 0; i < totalPostions; i++)
            {
                ulong tick = mt.PositionGetTicket(i);
                positions.Add(tick, new PoisitionInfo(mt, i));
            }
        }
Example #6
0
 public MTFrame()
 {
     policyInterface = new Policy1();
     mt = new MtApi5Client();
     mt.ConnectionStateChanged += mMtApiClient_ConnectionStateChanged;
     mt.QuoteAdded             += mMtApiClient_QuoteAdded;
     mt.QuoteRemoved           += mMtApiClient_QuoteRemoved;
     mt.QuoteUpdate            += mMtApiClient_QuoteUpdate;
     mt.OnTradeTransaction     += mMtApiClient_OnTradeTransaction;
     mt.OnBookEvent            += _mtApiClient_OnBookEvent;
     mt.OnLastTimeBar          += _mtApiClient_OnLastTimeBar;
     mt.OnLockTicks            += _mtApiClient_OnLockTicks;
     mt.BeginConnect("127.0.0.1", 8228);
 }
Example #7
0
        public void mMtApiClient_QuoteUpdate(object sender, Mt5QuoteEventArgs e, MtApi5Client mt)
        {
            if (!mapHistoryQuotes.Keys.Contains(e.Quote.Instrument))
            {
                mapHistoryQuotes.Add(e.Quote.Instrument, new List <Mt5Quote>());
            }
            mapHistoryQuotes[e.Quote.Instrument].Add(e.Quote);

            var dig = mt.SymbolInfoInteger(e.Quote.Instrument, ENUM_SYMBOL_INFO_INTEGER.SYMBOL_SPREAD_FLOAT);

            if (null == s)
            {
                s = new SymbolInfo(e.Quote.Instrument, mt);
            }


            Console.WriteLine(s.stringSymbolInfo.PAGE);
        }
Example #8
0
 public PoisitionInfo(MtApi5Client mt, int index)
 {
     doubleInfo = new PositionDouble(mt, index);
     intInfo    = new PositionInt(mt, index);
     stringInfo = new PositionString(mt, index);
 }
Example #9
0
 public void mMtApiClient_ConnectionStateChanged(object sender, Mt5ConnectionEventArgs e, MtApi5Client mt)
 {
     if (mt.ConnectionState == Mt5ConnectionState.Connected)
     {
     }
 }
Example #10
0
 public void mMtApiClient_QuoteAdded(object sender, Mt5QuoteEventArgs e, MtApi5Client mt)
 {
 }
Example #11
0
 public void _mtApiClient_OnLockTicks(object sender, Mt5LockTicksEventArgs e, MtApi5Client mt)
 {
 }
        public MetaTraderCandleReader()
        {
            this._mtApiClient = new MtApi5Client();

            this._mtApiClient.ConnectionStateChanged += this.ConnectionStateChanged;
        }
Example #13
0
 public void _mtApiClient_OnBookEvent(object sender, Mt5BookEventArgs e, MtApi5Client mt)
 {
 }
Example #14
0
 public void mMtApiClient_OnTradeTransaction(object sender, Mt5TradeTransactionEventArgs e, MtApi5Client mt)
 {
 }
Example #15
0
 public SymbolInfoString(string symbolName, MtApi5Client mt)
 {
     SymbolName = symbolName.Clone() as string;
     this.mt    = mt;
     RefreshFix();
 }
Example #16
0
 public void _mtApiClient_OnLastTimeBar(object sender, Mt5TimeBarArgs e, MtApi5Client mt)
 {
 }
Example #17
0
 public SymbolInfoDouble(string symbolName, MtApi5Client mt)
 {
     SymbolName = symbolName.Clone() as string;
     this.mt    = mt;
 }