public static void GetIndicatorsFromServer(IndicatorCollection IndicatorList)
 {
     try
     {
         StablishedConnnectionToServer();
         NumberFormatInfo nfi = new NumberFormatInfo();
         nfi.NumberDecimalSeparator = ".";
         string answer;
         for (int i = 0; i < ViewConstants.get_indicators.Length; i++)
         {
             answer = ConnectionToServer.sendEspecificMessageToGets(Sender, ViewConstants.get_indicators[i]);
             try
             {
                 double d = Convert.ToDouble(answer, nfi);
                 IndicatorList[i] = new Indicator()
                 {
                     Name = ViewConstants.indicators_name[i], Value = d
                 };
             }
             catch (FormatException)
             {
                 //In Case of ERR, do nothing
             }
         }
     }
     catch (SocketException)
     {
         throw new FlightSimulatorConnectionException("It wasn't able to connect to the Server\n");
     }
 }
        public AutopilotTradingForm(SQLiteDatabase db, ITradingAPI tradingApi, IndicatorCollection indicators, Strategy strat, ExecutionStrategy execStrat, string instrument)
        {
            priceHistoryDatabase = db;

            new Thread(delegate()
            {
                streamer = new StreamingModul(indicators, strat, execStrat, tradingApi, instrument);

                //Prepare streamer
                List <TickData> tickdataToPrepare = priceHistoryDatabase.getPrices(Timestamp.getNow() - 24 * 60 * 60 * 1000, Timestamp.getNow(), instrument);
                foreach (TickData tick in tickdataToPrepare)
                {
                    streamer.prepareDataWithoutTrading(tick);
                }

                ssiApi = new SSI_Downloader(AvailableInstruments.allInstruments);
                ssiApi.sourceDataArrived += sourceDataArrived;
                ssiApi.start();

                webApi = new FXCMRatesDownloader();
                webApi.sourceDataArrived += tickdataArrived;
                webApi.start();

                while (true)
                {
                    if (continueLiveTradingThread)
                    {
                        streamer.doTradingTickWithoutNewData(Timestamp.getNow());
                        Thread.Sleep(1000 * 10);
                    }
                }
            }).Start();

            InitializeComponent();
        }
예제 #3
0
        public StreamingModul(IndicatorCollection indicators, Strategy strategy, ExecutionStrategy execStrat, ITradingAPI tradingApi, string instrument)
        {
            this.indicators = indicators;
            this.strategy   = strategy;
            this.execStrat  = execStrat;
            this.tradingApi = tradingApi;

            this.instrument = instrument;
        }
예제 #4
0
        private void AddIndicator(Series ser, FibonacciIndicatorKind kind)
        {
            // Get a collection of indicators.
            IndicatorCollection indicators =
                ((StockSeriesView)ser.View).Indicators;

            // Clear it.
            indicators.Clear();

            // Add a new indicator to it.
            indicators.Add(CreateIndicator(kind, new DateTime(2007, 12, 27),
                                           new DateTime(2008, 1, 17), ValueLevel.High));
        }
예제 #5
0
        private void InitializeIndicatorList()
        {
            int howmanyIndicators = ViewConstants.indicators_name.Count();

            IndicatorList = new IndicatorCollection();
            for (int i = 0; i < howmanyIndicators; i++)
            {
                IndicatorList.Add(new Indicator()
                {
                    Name = ViewConstants.indicators_name[i], Value = 0
                });
            }
            IndicatorList.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(IndicatorCollectionChanged);
        }
예제 #6
0
        private void UpdateFilteredData()
        {
            if (IndicatorCollection == null)
            {
                IndicatorCollection = new DashboardIndicators();
            }
            else
            {
                IndicatorCollection.Clean();
            }

            var statistics = StorageModel.GetFilteredCashPlayerStatistic();

            if (statistics == null)
            {
                return;
            }

            IndicatorCollection.UpdateSource(statistics);

            RaisePropertyChanged(nameof(IndicatorCollection));
        }
 public IndicatorCollection GetIndicators()
 {
     return(IndicatorCollection.GetIndicators());
 }