private void RealTimeReader_OnBar(object sender, IForwardOnBarArgument argument)
        {
            OnBar_ReferedStrategies(this.Strategy, argument);
            IKLineData_Extend mainKLineData = argument.MainBar.KLineData;

            if (this.strategyExecutorInfo != null)
            {
                this.strategyExecutorInfo.CurrentKLineData = mainKLineData;
            }
            if (HasBarFinishedEvent())
            {
                if (tempBarFinishedArguments == null)
                {
                    tempBarFinishedArguments = new StrategyBarFinishedArguments(this.strategyExecutorInfo);
                }
                DealBarFinishEvent(tempBarFinishedArguments);
            }
            if (HasDayFinishedEvent() && mainKLineData.IsDayEnd())
            {
                if (tempDayFinishedArguments == null)
                {
                    tempDayFinishedArguments = new StrategyDayFinishedArguments(this.strategyExecutorInfo);
                }
                DealDayFinishEvent(tempDayFinishedArguments);
            }

            this.strategyExecutorInfo.CurrentKLineData = mainKLineData;
            this.strategyExecutorInfo.CurrentDay       = mainKLineData.GetTradingTime().TradingDay;

            if (mainKLineData.IsDayStart())
            {
                this.strategyExecutorInfo.CurrentDayIndex++;
                //this.strategyExecutorInfo.CurrentDay = mainKLineData.GetTradingTime().TradingDay;
            }
        }
Beispiel #2
0
 private void HistoryDataForward_Code_OnBar(object sender, IForwardOnBarArgument argument)
 {
     if (timeChange != null)
     {
         timeChange(this);
     }
 }
        private void KlineDataForward_OnBar(object sender, IForwardOnBarArgument argument)
        {
            IForwardKLineBarInfo mainOnBarInfo = argument.MainBar;

            printStrs_Forward_Tick.Add("kline:" + mainOnBarInfo.KLineBar);
            Console.WriteLine("kline:" + mainOnBarInfo.KLineBar);
        }
        private void HistoryDataForward_OnBar(object sender, IForwardOnBarArgument argument)
        {
            string code1txt = code + ":" + argument.AllFinishedBars[0];
            string code2txt = code2 + ":" + argument.GetOtherData(code2).GetKLineData(KLinePeriod.KLinePeriod_1Minute);

            printStrs_Forward_KLine.Add(code1txt);
            printStrs_Forward_KLine.Add(code2txt);
        }
 private void KlineDataForward_OnBar_CompareWithReader(object sender, IForwardOnBarArgument argument)
 {
     for (int i = 0; i < argument.AllFinishedBars.Count; i++)
     {
         IForwardKLineBarInfo info = argument.AllFinishedBars[i];
         Console.WriteLine(info.KLinePeriod + ":" + info.KLineBar);
         AddContent_KLine(info.KLinePeriod, info.KLineBar.ToString());
         //list_OnBar.Add(info.KLinePeriod + ":" + info.KLineBar);
     }
 }
        private void RealTimeReader_OnBar(object sender, IForwardOnBarArgument argument)
        {
            IForwardKLineBarInfo onBarInfo = argument.AllFinishedBars[0];
            int barPos = onBarInfo.BarPos;

            if (barPos == 0)
            {
                return;
            }
            Console.WriteLine("kline:" + onBarInfo.KLineData.GetBar(barPos - 1));
        }
Beispiel #7
0
 public DataForward_Code_KLine(IDataCenter dataCenter, IDataPackage_Code dataPackage, ForwardReferedPeriods referedPeriods, ForwardPeriod forwardPeriod)
 {
     this.dataCenter              = dataCenter;
     this.navigateData            = new DataForForward_Code(dataPackage, referedPeriods);
     this.navigateData.TradingDay = navigateData.StartDate;
     this.forwardPeriod           = forwardPeriod;
     this.mainKLineData           = this.navigateData.GetKLineData(forwardPeriod.KlineForwardPeriod);
     this.listenedCodes[0]        = mainKLineData.Code;
     this.onBarArgument           = new ForwardOnBarArgument(this.barFinishedInfos, this);
     InitKLine();
 }
Beispiel #8
0
 private void KlineDataForward_OnBar(object sender, IForwardOnBarArgument argument)
 {
     for (int i = 0; i < argument.AllFinishedBars.Count; i++)
     {
         IForwardKLineBarInfo info = argument.AllFinishedBars[i];
         Assert.AreEqual(info.KLineBar.End, info.KLineData.End);
         Console.WriteLine(info.KLinePeriod + ":" + info.KLineBar);
         list_OnBar.Add(info.KLinePeriod + ":" + info.KLineBar);
         AddContent(info.KLinePeriod, info.KLineBar.ToString());
     }
     //Print((IDataForward_Code)sender);
     //AddToList(list_OnBar, (IHistoryDataForward_Code)sender);
 }
        private void OnBar_ReferedStrategies(IStrategy strategy, IForwardOnBarArgument argument)
        {
            IList <IStrategy> referedStrategies = strategy.GetReferedStrategies();

            if (referedStrategies != null)
            {
                for (int i = 0; i < referedStrategies.Count; i++)
                {
                    IStrategy referedStrategy = referedStrategies[i];
                    OnBar_ReferedStrategies(referedStrategy, argument);
                }
            }
            strategy.OnBar(this, new StrategyOnBarArgument((ForwardOnBarArgument)argument));
        }
Beispiel #10
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;
 }
        private void KlineDataForward_OnBar1(object sender, IForwardOnBarArgument argument)
        {
            IDataForward_Code klineDataForward = (IDataForward_Code)sender;

            //Console.WriteLine("DayEnd:" + klineDataForward.IsDayEnd
            //        + "|1MinuteEnd:" + klineDataForward.IsPeriodEnd(KLinePeriod.KLinePeriod_1Minute)
            //        + "|5MinuteEnd:" + klineDataForward.IsPeriodEnd(KLinePeriod.KLinePeriod_5Minute)
            //        + "|15MinuteEnd:" + klineDataForward.IsPeriodEnd(KLinePeriod.KLinePeriod_15Minute)
            //        + "|DayEnd:" + klineDataForward.IsPeriodEnd(KLinePeriod.KLinePeriod_1Day));
            Console.WriteLine("1minute:" + klineDataForward.GetKLineData(KLinePeriod.KLinePeriod_1Minute));
            Console.WriteLine("tradingTimeStart:" + klineDataForward.IsTradingTimeStart
                              + "|tradingTimeEnd:" + klineDataForward.IsTradingTimeEnd
                              + "|dayStart:" + klineDataForward.IsDayStart
                              + "|dayEnd:" + klineDataForward.IsDayEnd);
        }
Beispiel #12
0
 private void PrepareData()
 {
     this.listenedCodes[0] = this.dataForForward_Code.Code;
     this.dataForForward_Code.TradingDay = dataPackage.StartDate;
     this.forwardDataIndeier             = new ForwardDataIndeier(dataForForward_Code);
     this.onBarArgument = new ForwardOnBarArgument(barFinishedInfos, this);
     foreach (KLinePeriod period in referedPeriods.UsedKLinePeriods)
     {
         IKLineData_RealTime klineData = this.dataForForward_Code.GetKLineData(period);
         klineData.ChangeCurrentBar(KLineUtils.GetKLineBar(dataForForward_Code.CurrentTickData));
     }
     if (dataForForward_Code.UseTimeLineData)
     {
         ITimeLineData_RealTime timeLineData = dataForForward_Code.CurrentTimeLineData;
         timeLineData.ChangeCurrentBar(TimeLineUtils.GetTimeLineBar(dataForForward_Code.CurrentTickData, timeLineData.YesterdayEnd));
     }
 }
        private void KlineDataForward_OnBar2(object sender, IForwardOnBarArgument argument)
        {
            Console.WriteLine("Tick:" + ((IDataForward_Code)sender).GetTickData());
            printStrs_Forward_TimeInfo_OnBar.Add("Tick:" + ((IDataForward_Code)sender).GetTickData());

            IList <IForwardKLineBarInfo> onBarInfos = argument.AllFinishedBars;

            for (int i = 0; i < onBarInfos.Count; i++)
            {
                IForwardKLineBarInfo onBar_Info = onBarInfos[i];
                //Assert.AreEqual(onBar_Info.KLineBar.End, onBar_Info.KlineData.End);
                Console.WriteLine(onBar_Info.KLinePeriod + ":" + onBar_Info.KLineBar.ToString());
                printStrs_Forward_TimeInfo_OnBar.Add(onBar_Info.KLinePeriod + ":" + onBar_Info.KLineBar.ToString());
            }
            //PrintOnBar((IHistoryDataForward_Code)sender);
            //printStrs.Add("kline:" + klineData.GetBar(index));
            //Console.WriteLine("kline:" + klineData.GetBar(index));
        }
Beispiel #14
0
 private void Forward_OnBar2(object sender, IForwardOnBarArgument arguments)
 {
 }
 private void KlineDataForward_OnBar_Long(object sender, IForwardOnBarArgument argument)
 {
 }