Пример #1
0
        private void FindPlatForm(MaData maData, Platform lastPlatForm)
        {
            List <MaCrossPoint> points = maData.RecentCrossPoints;

            if (points.Count < 15)
            {
                return;
            }

            MaCrossPoint startPoint   = points[points.Count - 15];
            int          lastEndIndex = lastPlatForm == null ? 0 : lastPlatForm.EndIndex;

            if (startPoint.BarPos < lastEndIndex)
            {
                return;
            }
            MaCrossPoint endPoint = points[points.Count - 1];

            if (endPoint.BarPos - startPoint.BarPos < 60)
            {
                int      startIndex = startPoint.BarPos;
                int      endIndex   = endPoint.BarPos;
                Platform platform   = new Platform(klineData, startIndex, endIndex);
                platForms.Add(platform);
            }
        }
Пример #2
0
        public override void OnBar(object sender, IStrategyOnBarArgument currentData)
        {
            looper_ma.Loop(currentData.CurrentData.GetKLineData(KLinePeriod.KLinePeriod_1Minute).BarPos);
            MaData maData = looper_ma.GetMaData(MaPeriod);

            FindPlatForm(maData, platForms.Count == 0 ? null : platForms[platForms.Count - 1]);
        }