- Introduced TBar struct for efficient OHLCV data representation.
- Implemented TBarSeries class for high-performance collection of TBar instances using Structure of Arrays (SoA) layout.
- Added TSeries class for time-series data management with zero-copy access.
- Created TValue struct for time-value pairs with implicit conversions.
- Defined IFeed interface for consistent data feed implementations.
- Developed CsvFeed class for loading historical OHLCV data from CSV files.
- Implemented GBM class for generating synthetic financial data using Geometric Brownian Motion.
- Added Quantower project files for Averages indicator with necessary dependencies and configurations.
- Included extensive usage examples and notebooks for TBar, TBarSeries, TSeries, TValue, and feed implementations.
Add implementation of CVI - Chaikin's Volatility class and related tests.
* **Cvi Class Implementation:**
- Add `Cvi` class in `lib/volatility/Cvi.cs` to calculate Chaikin's Volatility.
- Use high and low prices for calculation.
- Include a constructor with `period` parameter.
- Add a method to calculate Chaikin's Volatility.
* **Quantower Indicator:**
- Add `CviIndicator` class in `quantower/Volatility/CviIndicator.cs`.
- Use `Cvi` class for calculation.
- Add input parameters for `period` and `showColdValues`.
- Implement `OnInit` and `OnUpdate` methods.
* **Tests:**
- Add a test method for `Cvi` class in `Tests/test_updates_volatility.cs`.
- Use random updates to test `Cvi`.
- Ensure initial and final values are equal.
---
For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/mihakralj/QuanTAlib?shareId=XXXX-XXXX-XXXX-XXXX).