public void PriceBar_Write_Works() { //Arrange var priceBars = new PriceBars(10); var priceBar1 = new PriceBar(DateTime.Now.Ticks, 1, 2, 3, 4); var priceBar2 = new PriceBar(); priceBar2.Write(DateTime.Now.Ticks, 1, 2, 3, 4); //Act priceBars.Write(priceBar1.Timestamp, priceBar1.Open, priceBar1.High, priceBar1.Low, priceBar1.Close); priceBars.Write(priceBar2.Timestamp, priceBar2.Open, priceBar2.High, priceBar2.Low, priceBar2.Close); priceBars.Write(priceBar1.Timestamp, priceBar1.Open, priceBar1.High, priceBar1.Low, priceBar1.Close); //Assert Assert.AreEqual(3, priceBars.Length); Assert.AreEqual(priceBars.Current.Timestamp, priceBar1.Timestamp); Assert.AreEqual(priceBars.Current.Open, priceBar1.Open); Assert.AreEqual(priceBars.Current.High, priceBar1.High); Assert.AreEqual(priceBars.Current.Low, priceBar1.Low); Assert.AreEqual(priceBars.Current.Close, priceBar1.Close); Assert.AreEqual(priceBars.Current.Volume, 0); Assert.AreEqual(priceBars.Previous.Timestamp, priceBar2.Timestamp); Assert.AreEqual(priceBars.Previous.Open, priceBar2.Open); Assert.AreEqual(priceBars.Previous.High, priceBar2.High); Assert.AreEqual(priceBars.Previous.Low, priceBar2.Low); Assert.AreEqual(priceBars.Previous.Close, priceBar2.Close); Assert.AreEqual(priceBars.Previous.Volume, 0); }
public void AddPrice(float open, float high, float low, float close, float volume = 0) { PriceBar priceBar = new PriceBar(); priceBar.Write(_timeStamper.Next, open, high, low, close, volume); _priceBars.Add(priceBar); }
public void HeikenAshiBar_Write_Works() { //Arrange var haBars = new HeikenAshiBars(10); haBars.BarUpdated += delegate(IHeikenAshiBar current) { }; var priceBar1 = new PriceBar(DateTime.Now.Ticks, 1, 2, 3, 4); var priceBar2 = new PriceBar(DateTime.Now.Ticks, 2, 3, 4, 0); var priceBar3 = new PriceBar(); priceBar3.Write(DateTime.Now.Ticks, 1, 2, 3, 4); //Act haBars.Write(priceBar2); haBars.Write(priceBar1); haBars.Write(priceBar3); haBars.Write(priceBar1.Timestamp, priceBar1.Open, priceBar1.High, priceBar1.Low, priceBar1.Close); //Assert Assert.AreEqual(4, haBars.Length); Assert.AreEqual(haBars.Current.Timestamp, priceBar1.Timestamp); Assert.AreEqual(haBars.Previous.Timestamp, priceBar3.Timestamp); }
public void CandlestickBar_Write_Works() { //Arrange var CandlestickBars = new CandlestickBars(1000); CandlestickBars.BarUpdated += delegate(ICandlestickBar current) { }; var priceBar1 = new PriceBar(DateTime.Now.Ticks, 2, 3, 4, 0); var priceBar2 = new PriceBar(); var priceBar3 = new PriceBar(DateTime.Now.Ticks, 1, 2, 3, 4); priceBar2.Write(DateTime.Now.Ticks, priceBar3.Open, priceBar3.High, priceBar3.Low, priceBar3.Close); //Act CandlestickBars.Write(priceBar1); CandlestickBars.Write(priceBar3); CandlestickBars.Write(priceBar2); CandlestickBars.Write(priceBar3.Timestamp, priceBar3.Open, priceBar3.High, priceBar3.Low, priceBar3.Close); //Assert Assert.AreEqual(4, CandlestickBars.Length); Assert.AreEqual(CandlestickBars.Current.Timestamp, priceBar3.Timestamp); Assert.AreEqual(CandlestickBars.Previous.Timestamp, priceBar2.Timestamp); }