예제 #1
0
        /// <summary>
        /// Initializes the exchange.
        /// </summary>
        /// <param name="e">The e.</param>
        private void InitExchange(Exchange e)
        {
            Log.LogEvent(C_CLASS_NAME, "[" + e.Name + " GATEWAY STARTING...]");
            try
            {
                //Inizializzazione Gateway
                GatewayParameters gDefault = new GatewayParameters()
                {
                    Ip   = e.Ip,
                    Port = e.Port,
                    Url  = e.Url
                           //ActivateLog = true,
                           //DontFilterExecutedPrices = true,
                           //DontSubscribeOrders = true,
                           //NumberOfThreadForWebPooling = p.Threads,
                           //StartTime = p.StartTime,
                           //StopTime = p.StopTime,
                           //ClientId = settings.UniqueId,
                           //Ip = p.DataServerIp,
                           //PriceIp = p.SubscriptionServerIp,
                           //PricePort = p.DataServerPort,
                           //Port = p.SubscriptionServerPort,
                           //BaseURL = p.BaseURL,
                };

                gateway.AddGateway(e.Name,
                                   e.GatewayType,
                                   e.GatewayMode,
                                   gDefault,
                                   //frmMain.WebBrowser
                                   null
                                   );

                //if (!providerKeyToInternalKey.ContainsKey(p.Name))
                //    providerKeyToInternalKey.TryAdd(p.Name, new ConcurrentDictionary<string, ProviderKeyEntity>());

                Thread tStartGateway = new Thread(new ParameterizedThreadStart(StartGatewayInternal));
                tStartGateway.Start(e.Name);
            }
            catch (Exception ex)
            {
                Log.LogEvent(C_CLASS_NAME, "[INIT STANDARD PROVIDER FAILED ! " + ex.Message);
            }
        }
예제 #2
0
파일: Gateway.cs 프로젝트: sv-dev2/ELEVEN
        /// <summary>
        /// Adds the gateway.
        /// </summary>
        /// <param name="gatewayName">Name of the gateway.</param>
        /// <param name="gatewayType">Type of the gateway.</param>
        /// <param name="gatewayMode">The gateway mode.</param>
        /// <param name="gatewayParam">The gateway parameter.</param>
        /// <param name="objectParam">The object parameter.</param>
        public void AddGateway(string gatewayName, ConstEnum.GatewayType gatewayType, ConstEnum.GatewayMode gatewayMode, GatewayParameters gatewayParam, Object objectParam)
        {
            log.LogEvent(C_CLASS_NAME, "Adding gateway " + gatewayName + " " + gatewayType + " " + gatewayMode + " " + gatewayParam);

            IToggleGateway newGateway = null;

            //MT4 Gateway
            if (gatewayType == ConstEnum.GatewayType.MT4Lib)
            {
                //newGateway = new MT4API(this, gatewayParam)
                //{
                //    Name = gatewayName,
                //    GatewayType = gatewayType
                //};

                //gateways.TryAdd(gatewayName, newGateway);
                //priceGateways.TryAdd(gatewayName, (IPriceGateway)newGateway);
            }
            //BitFinex
            if (gatewayType == ConstEnum.GatewayType.BitFinex)
            {
                //newGateway = new BitFinexGateway(this, gatewayParam)
                //{
                //    Name = gatewayName,
                //    GatewayType = gatewayType
                //};

                //gateways.TryAdd(gatewayName, newGateway);
                //priceGateways.TryAdd(gatewayName, (IPriceGateway)newGateway);
            }
        }
예제 #3
0
파일: MT4API.cs 프로젝트: sv-dev2/ELEVEN
 public MT4API(Gateway gateway, GatewayParameters gatewayParameters)
 {
     Gateway           = gateway;
     GatewayParameters = gatewayParameters;
 }