private void IndexEndBarPos() { foreach (KLinePeriod period in data.ReferedKLinePeriods) { if (period.Equals(data.MainKLinePeriod)) { continue; } AddOnBarData(data.GetMainKLineData().Length - 1, period, data.GetKLineData(period).Length - 1); } }
public void ForwardToday(double time) { this.time = time; int prevTickIndex = dataForForward.CurrentTickData.BarPos; ForwardToday_Tick(dataForForward.CurrentTickData, time); foreach (KLinePeriod period in dataForForward.ReferedKLinePeriods) { IKLineData_RealTime klineData = dataForForward.GetKLineData(period); ForwardToday_KLine(klineData, time, dataForForward.CurrentTickData, prevTickIndex); } ForwardToday_TimeLine(dataForForward.CurrentTimeLineData, time, dataForForward.CurrentTickData, prevTickIndex); }
private void ForwardKLine(int firstMainPosIfFinished) { bool isMainBarFinished = firstMainPosIfFinished >= 0; ForwardKLine(dataForForward_Code.MainKLine, isMainBarFinished, IsPeriodEnd(dataForForward_Code.MainKLinePeriod)); foreach (KLinePeriod period in dataForForward_Code.ReferedKLinePeriods) { IKLineData_RealTime klineData = dataForForward_Code.GetKLineData(period); if (klineData.Period.Equals(dataForForward_Code.MainKLinePeriod)) { continue; } int klineBarPos = forwardDataIndeier.GetOtherKLineBarPosIfFinished(firstMainPosIfFinished, period); bool isBarFinished = klineBarPos >= 0; ForwardKLine(klineData, isBarFinished, IsPeriodEnd(period)); } }
public static void ForwardNextDay(DataForForward_Code forwardData, int tradingDay) { forwardData.TradingDay = tradingDay; foreach (KLinePeriod period in forwardData.ReferedKLinePeriods) { IKLineData_RealTime klineData = forwardData.GetKLineData(period); ForwardNextDay_KLine(forwardData, klineData, period); } ForwardNextDay_TimeLine(forwardData); }
private void ForwardCurrentBar() { IKLineData_Extend mainKLineData = this.dataForForward.GetMainKLineData(); ITickBar tickBar = dataForForward.CurrentTickData.GetCurrentBar(); ForwardCurrentBar(mainKLineData, tickBar); foreach (KLinePeriod period in dataForForward.ReferedKLinePeriods) { if (dataForForward.MainKLinePeriod.Equals(period)) { continue; } ForwardCurrentBar(dataForForward.GetKLineData(period), tickBar); } }
public DataForForward_CodeIndeier(DataForForward_Code data) { this.data = data; IList <KLinePeriod> periods = data.ReferedKLinePeriods; for (int i = 0; i < periods.Count; i++) { KLinePeriod period = periods[i]; if (period.Equals(data.MainKLinePeriod)) { continue; } dic_Period_CurrentIndex.Add(period, data.GetKLineData(period).BarPos); } this.Index(); }
private void Init() { this.onBarArgument = new ForwardOnBarArgument(barFinishedInfos, this); foreach (KLinePeriod period in forwardData.ReferedKLinePeriods) { IKLineData_RealTime klineData = forwardData.GetKLineData(period); if (period.Equals(forwardPeriod.KlineForwardPeriod)) { this.mainKlineData = klineData; } } timer.Elapsed += Timer_Elapsed; timer.AutoReset = true; }
private void Print(IKLineBar bar, IList <KLineBarPos> posList, DataForForward_Code data1) { if (posList == null) { return; } StringBuilder sb = new StringBuilder(); sb.Append(bar.Time + ":"); //Console.Write(bar.Time + ":"); for (int i = 0; i < posList.Count; i++) { KLineBarPos periodBar = posList[i]; //Console.Write(periodBar + "," + data1.GetKLineData(periodBar.KLinePeriod).GetBar(periodBar.BarPos).Time + "|"); sb.Append(periodBar + "," + data1.GetKLineData(periodBar.KLinePeriod).GetBar(periodBar.BarPos).Time + "|"); //Assert.AreEqual(bar.Time, data1.GetKLineData(posList[i].KLinePeriod).Time); } //Console.WriteLine(); printLine.Add(sb.ToString()); }
public IKLineData GetKLineData(KLinePeriod klinePeriod) { return(navigateData.GetKLineData(klinePeriod)); }