public void LoadHistoricalChartData(object chartIdentifier, DateTime startDate, DateTime endDate) { ChartIdentifier = chartIdentifier; StartDate = startDate; EndDate = endDate; Market market = chartIdentifier as Market; ezDateRange dateRangeRequested = new ezDateRange(); ezDateRange dateRangeProcessed = new ezDateRange(); // Start with an empty set of TradeBars. chartData.TradeBars.Clear(); // Load the data for the selected market. BarInterval interval = new BarInterval(APIConvert.ToChartInterval(BarInterval.Interval), BarInterval.Period); ChartDataSeries ctsChartData = new ChartDataSeries(market, interval, SessionTimeRange.Empty); var session = new ezSessionTimeRange(); /*EZChartDataSeries myChartData = new EZChartDataSeries(market.Description, BarInterval, session); * myChartData.DataLoadComplete += myChartData_DataLoadComplete; * myChartData.DataSeriesUpdated += myChartData_DataSeriesUpdated;*/ var chartThread = new ChartDataThread(ctsChartData, chartData, startDate, endDate); var thread = new Thread(new ThreadStart(chartThread.Run)); thread.Name = market.Description + ":" + BarInterval; thread.Start(); //if (DataLoadComplete != null) DataLoadComplete(this, new ezDataLoadCompleteEventArgs(zDataLoadStatus.Success, dateRangeRequested, dateRangeProcessed)); }
public void DataProviderLoadComplete() { if (DataLoadComplete != null) { ezDateRange requested = new ezDateRange(); ezDateRange processed = new ezDateRange(); DataLoadComplete(this, new ezDataLoadCompleteEventArgs(zDataLoadStatus.Success, requested, processed)); } }
public void LoadHistoricalChartData(object chartIdentifier, DateTime startDate, DateTime endDate) { string ticker = chartIdentifier as string; int startYear = startDate.Year; int startMonth = startDate.Month - 1; // have to subtract 1 from the month to get the right data from Yahoo int startDay = startDate.Day; int endYear = endDate.Year; int endMonth = endDate.Month - 1; // have to subtract 1 from the month to get the right data from Yahoo int endDay = endDate.Day; ezDateRange dateRangeRequested = new ezDateRange(); ezDateRange dateRangeProcessed = new ezDateRange(); List <HistoricalStock> historical = YahooHistoricalDownloader.Instance.DownloadData(ticker, startDate, endDate); // Start with an empty set of TradeBars. chartData.TradeBars.Clear(); // Yahoo downloads the data in reverse date order (most recent dates first, then previous day, and so on). So // we need to reverse it when we put it into our chart data. for (int i = historical.Count - 1; i >= 0; i--) { HistoricalStock hs = historical[i]; ezBarDataPoint bdp = new ezBarDataPoint(); bdp.TradeDate = hs.Date; bdp.Open = hs.Open; bdp.High = hs.High; bdp.Low = hs.Low; bdp.Close = hs.Close; bdp.Volume = hs.Volume; chartData.TradeBars.Add(bdp); } if (DataLoadComplete != null) { DataLoadComplete(this, new ezDataLoadCompleteEventArgs(zDataLoadStatus.Success, dateRangeRequested, dateRangeProcessed)); } }
public ezDataLoadCompleteEventArgs(zDataLoadStatus status, ezDateRange requested, ezDateRange processed) { this.status = status; this.dateRangeRequested = requested; this.dateRangeProcessed = processed; }