private void DataForward_OnTick(object sender, IForwardOnTickArgument argument) { double time = argument.Time; //if (time < 20170601.205900) // return; int tradingDay = argument.TickInfo.TickData.TradingDay; if (prevTime == time) { return; } this.prevTime = time; ITickData_Extend tickData = GetTickData(tradingDay); //Console.WriteLine(tickData); DataNavigate_ChangeTime.ChangeTime_TickData(tickData, time); Assert.AreEqual(argument.TickInfo.TickBar.ToString(), tickData.ToString()); IRealTimeData_Code realTimeData = ((IRealTimeData_Code)sender); DataNavigate_ChangeTime.ChangeTime_KLineData(klineData_1Minute, tradingDay, time, tickData); Assert.AreEqual(realTimeData.GetKLineData(KLinePeriod.KLinePeriod_1Minute).ToString(), klineData_1Minute.ToString()); DataNavigate_ChangeTime.ChangeTime_KLineData(klineData_5Minute, tradingDay, time, tickData); Assert.AreEqual(realTimeData.GetKLineData(KLinePeriod.KLinePeriod_5Minute).ToString(), klineData_5Minute.ToString()); DataNavigate_ChangeTime.ChangeTime_KLineData(klineData_15Minute, tradingDay, time, tickData); Assert.AreEqual(realTimeData.GetKLineData(KLinePeriod.KLinePeriod_15Minute).ToString(), klineData_15Minute.ToString()); DataNavigate_ChangeTime.ChangeTime_KLineData(klineData_1Day, tradingDay, time, tickData); Assert.AreEqual(realTimeData.GetKLineData(KLinePeriod.KLinePeriod_1Day).ToString(), klineData_1Day.ToString()); ITimeLineData_RealTime timeLineData = GetTimeLineData(tradingDay); DataNavigate_ChangeTime.ChangeTime_TimeLineData(timeLineData, time, tickData); Assert.AreEqual(realTimeData.GetTimeLineData().ToString(), timeLineData.ToString()); }
public void TestController() { string code = "rb1710"; double time = 20170601.093055; KLinePeriod klinePeriod = KLinePeriod.KLinePeriod_1Minute; IDataNavigate dataNavigater = DataCenter.Default.DataNavigateFactory.CreateDataNavigate(code, time); IKLineData klineData = dataNavigater.GetKLineData(klinePeriod); int showKLineIndex = klineData.BarPos; ChartComponentData compData = new ChartComponentData(code, time, klinePeriod, showKLineIndex); ChartComponentController controller = new ChartComponentController(dataNavigater, compData); IRealTimeData_Code reader = controller.CurrentRealTimeDataReader_Code; IKLineData currentKLine = reader.GetKLineData(klinePeriod); Assert.AreEqual(compData.Code, currentKLine.Code); Assert.AreEqual(compData.Time, currentKLine.Time); Assert.AreEqual(compData.ShowKLineIndex, currentKLine.BarPos); Console.WriteLine(currentKLine); controller.Change("rb1801"); currentKLine = reader.GetKLineData(klinePeriod); Assert.AreEqual(compData.Code, currentKLine.Code); Assert.AreEqual(compData.Time, currentKLine.Time); Assert.AreEqual(compData.ShowKLineIndex, currentKLine.BarPos); Console.WriteLine(currentKLine); controller.Change(code); currentKLine = reader.GetKLineData(klinePeriod); Assert.AreEqual(compData.Code, currentKLine.Code); Assert.AreEqual(compData.Time, currentKLine.Time); Assert.AreEqual(compData.ShowKLineIndex, currentKLine.BarPos); Console.WriteLine(currentKLine); controller.ChangeChartType(ChartType.TimeLine); Console.WriteLine(compData); controller.Change(20170601.100531); controller.ChangeChartType(ChartType.KLine); Console.WriteLine(reader.GetKLineData(compData.KlinePeriod)); Console.WriteLine(compData); controller.Change("rb1801", 20171014.093000, KLinePeriod.KLinePeriod_1Minute); Console.WriteLine(compData); }
public IKLineData GetKLineData(KLinePeriod period) { return(realTimeDataReader_Code.GetKLineData(period)); }