Пример #1
0
        private void AddLowPoint(IKLineData klineData, int barPos)
        {
            ZigzagPoint point = new ZigzagPoint(klineData, barPos, false);

            this.currentPoints.Add(point);
            this.currentOperator = OPERATOR_ADDLOW;
        }
Пример #2
0
        private void AddHighPoint(IKLineData klineData, int barPos)
        {
            ZigzagPoint point = new ZigzagPoint(klineData, barPos, true);

            //this.highPoints.Add(point);
            this.currentPoints.Add(point);
            this.currentOperator = OPERATOR_ADDHIGH;
        }
Пример #3
0
 public static void DrawZigzagPoints(IStrategyDrawer_PriceRect drawHelper, List <ZigzagPoint> points, Color colorHigh, Color colorLow, int width)
 {
     for (int i = 0; i < points.Count; i++)
     {
         ZigzagPoint point = points[i];
         float       price = point.IsHigh ? point.GetBar().High : point.GetBar().Low;
         Color       color = point.IsHigh ? colorHigh : colorLow;
         drawHelper.DrawPoint(new graphic.shape.PriceShape_Point(point.BarPos, price, width, color));
     }
 }
Пример #4
0
        private int GetLastPointType(int barPos)
        {
            if (currentPoints.Count == 0)
            {
                return(LASTTYPE_UNKNOWN);
            }
            ZigzagPoint point = currentPoints.Last();

            if (point.IsHigh)
            {
                return(LASTTYPE_HIGH);
            }
            return(LASTTYPE_LOW);
        }
Пример #5
0
 public void Loop(int barPos)
 {
     this.zigzag_Simple.Loop(barPos);
     if (this.zigzag_Simple.CurrentOperator == Zigzag_Simple.OPERATOR_ADDHIGH ||
         this.zigzag_Simple.CurrentOperator == Zigzag_Simple.OPERATOR_ADDLOW)
     {
         List <ZigzagPoint> currentPoints = this.zigzag_Simple.GetPoints();
         if (currentPoints.Count < 2)
         {
             return;
         }
         ZigzagPoint lastSurePoint = currentPoints[currentPoints.Count - 2];
         AddNewSurePoint(lastSurePoint);
     }
 }