private void InitializeMoves() { List <IBar> upTrendBars = BarMocks.UpMove(5, 100.00); List <IBarDatum> upTrendBarData = upTrendBars.ToBarDatum().ToList(); bars.AddRange(upTrendBarData); var moveAlpha = Move.Open(moves.Count, upTrendBarData.First(), 2) .Close(upTrendBarData.Last()); moves.Add(moveAlpha); IBarDatum last = moveAlpha.End; List <IBar> downTrend = BarMocks.DownMove(3, last.High - 10); List <IBarDatum> downData = downTrend.ToBarDatum().ToList(); bars.AddRange(downData); var moveBeta = Move.Open(moves.Count, downData.First(), 3) .Close(downData.Last()); moves.Add(moveBeta); last = moveBeta.End; upTrendBars = BarMocks.UpMove(5, last.Low + 10); upTrendBarData = upTrendBars.ToBarDatum().ToList(); bars.AddRange(upTrendBarData); var moveGamma = Move.Open(moves.Count, upTrendBarData.First(), 2) .Close(upTrendBarData.Last()); moves.Add(moveGamma); }
public void WaveTest() { InitializeMoves(); IBarDatum lastTrendBar = moves.Last().End; List <IBar> testBar = BarMocks.DownMove(1, lastTrendBar.High - 5); List <IBarDatum> testDatum = testBar.ToBarDatum().ToList(); bars.ForEach(b => moveManager.Insert(b)); var ir = moveManager.Highs.Where(b => b.High < testDatum.First().Low) .Select(b => b.High).ToList(); var lowBarQuery = moveManager.Lows.Where(b => b.Low < testDatum.First().Low) .Select(b => b.Low).ToList(); ir.AddRange(lowBarQuery); Assert.IsTrue(ir.Count == 2); }