Beispiel #1
0
        private void addFirstBar(Bar newBar)
        {
            var d      = newBar;
            var newLeg = new Leg(d);

            d.PreviousBar = new Bar(d.Open, d.Open, d.Open, d.Open, d.Volume, d.DateTime);
            LegList.Add(newLeg);

            addBarDelegate        = addBar;
            updateLastBarDelegate = updateLastBar;
        }
Beispiel #2
0
        private void addBar(Bar newBar)
        {
            newBar.PreviousBar = LastBar;
            if (!LastLeg.AddBar(newBar))
            {
                LegList.Add(new Leg(newBar));
                //create new reference point of the last Leg

                //if(LastLeg.Direction == LegDirection.Up)
                //{
                //    createReferenceForLowOfThisBar(LastLeg.PreviousLeg.LowestBar);
                //    createReferenceForHighOfThisBar(newBar);
                //}
                //else
                //{
                //    createReferenceForHighOfThisBar(LastLeg.PreviousLeg.HighestBar);
                //    createReferenceForLowOfThisBar(newBar);
                //}
            }


            #region bar add
            //if((LastLeg.Direction == LegDirection.Up && newBar.Low >= LastBar.Low) ||
            //   (LastLeg.Direction == LegDirection.Down && newBar.High <= LastBar.High))
            //{
            //    LegList.Last().AddBar(newBar);
            //}
            //else
            //    LegList.Add(new Leg(newBar) { PreviousLeg = LegList.Last() });
            #endregion

            //if(LastLeg.Direction == LegDirection.Up)
            //{
            //    if(LastLeg.PreviousLeg.Direction == LegDirection.Up)
            //    {
            //        createReferenceForHighOfThisBar(LastLeg.PreviousLeg.HighestBar);
            //        createReferenceForLowOfThisBar(LastBar);
            //    }
            //    else
            //    {
            //        if (LastBar.Low > LastLeg.PreviousLeg.LowestBar.Low)
            //            createReferenceForLowOfThisBar(LastLeg.PreviousLeg.LowestBar);
            //        if (LastBar.Direction == BarDirection.OutsideUp)
            //            createReferenceForLowOfThisBar(LastBar);
            //    }
            //}
            //else
            //{
            //    if (LastLeg.PreviousLeg.Direction == LegDirection.Down)
            //    {
            //        createReferenceForLowOfThisBar(LastLeg.PreviousLeg.LowestBar);
            //        createReferenceForHighOfThisBar(LastBar);
            //    }
            //    else
            //    {
            //        if (LastBar.High > LastLeg.PreviousLeg.HighestBar.High)
            //            createReferenceForHighOfThisBar(LastLeg.PreviousLeg.HighestBar);
            //        if (LastBar.Direction == BarDirection.OutsideDown)
            //            createReferenceForHighOfThisBar(LastBar);
            //    }
            //}
        }