Ejemplo n.º 1
0
 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);
     }
 }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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));
            }
        }
Ejemplo n.º 4
0
 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);
 }
Ejemplo n.º 5
0
        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);
            }
        }
Ejemplo n.º 6
0
        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();
        }
Ejemplo n.º 7
0
 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;
 }
Ejemplo n.º 8
0
        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());
        }
Ejemplo n.º 9
0
 public IKLineData GetKLineData(KLinePeriod klinePeriod)
 {
     return(navigateData.GetKLineData(klinePeriod));
 }