private bool Forward_NextDay() { //判断是否是最后一个交易日 int tradingDay = dataForForward_Code.GetNextTradingDay(); if (!dataForForward_Code.TradingDayReader.IsTrade(tradingDay)) { isEnd = true; return(false); } isTradingTimeStart = true; isTradingTimeEnd = false; isDayEnd = false; isDayStart = true; //切换交易日 ChangeTradingDay(tradingDay); int lastMainKLineBarPos; int firstMainBarPos = this.forwardDataIndeier.GetMainKLineBarPosIfFinished(0, out lastMainKLineBarPos); ForwardKLine(firstMainBarPos); ForwardToday_TimeLineData(firstMainBarPos); DealEvent_Today(); return(true); }
private bool ForwardNextDay() { int tradingDay = forwardData.GetNextTradingDay(); if (!forwardData.TradingDayReader.IsTrade(tradingDay)) { isEnd = true; return(false); } //this.lastEndPrice = forwardData.CurrentTickData.Arr_Price[forwardData.CurrentTickData.Length - 1]; ForwardNextDay(forwardData, tradingDay); return(true); }
private void ForwardTimeLineData() { if (!navigateData.UseTimeLineData) { return; } if (navigateData.CurrentTimeLineData == null) { return; } ITimeLineData_RealTime timeLineData = navigateData.CurrentTimeLineData; if (navigateData.CurrentTimeLineData.BarPos >= navigateData.CurrentTimeLineData.Length - 1) { int nextTradingDay = navigateData.GetNextTradingDay(); if (nextTradingDay < 0) { return; } navigateData.TradingDay = nextTradingDay; navigateData.CurrentTimeLineData = new TimeLineDataExtend_RealTime(DataPackage.GetTimeLineData(navigateData.TradingDay)); } if (mainKLineData.BarPos >= mainKLineData.Length - 1) { return; } double nextTime_KLine = mainKLineData.Arr_Time[mainKLineData.BarPos + 1]; int nextTimeLineBarPos = timeLineData.BarPos; double nextTime_TimeLine = timeLineData.Arr_Time[nextTimeLineBarPos]; while (nextTime_TimeLine < nextTime_KLine && nextTimeLineBarPos < timeLineData.Length - 1) { nextTimeLineBarPos++; nextTime_TimeLine = timeLineData.Arr_Time[nextTimeLineBarPos]; } timeLineData.BarPos = nextTimeLineBarPos; }