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; }
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); // } //} }