Commit Graph
10 Commits
Author SHA1 Message Date
Miha Kralj 3734a1c5f6 feat: Introduce ITValuePublisher interface and refactor indicators for event-driven value updates. 2025-12-07 14:36:22 -08:00
Miha Kralj 3b146b68bd Refactor tests and improve random number generation handling; update Dema, Ema, Sma, Tema, Wma, and GBM classes for consistency and clarity 2025-12-05 10:33:27 -08:00
Miha Kralj 4a0435c217 Refactor EMA, SMA, and WMA indicators to improve warmup tracking and coverage calculations; enhance tests for IsHot behavior and period dependency; update project files for better structure and maintainability. 2025-12-03 13:49:45 -08:00
Miha Kralj 4a0a8d6da2 chore: Update project files and configurations; enhance .gitignore, add Qodana and SonarScanner scripts, and improve test project references 2025-12-03 09:27:29 -08:00
Miha Kralj 2d28b8f62a Add Span API for SMA, EMA, and WMA with zero-allocation performance improvements
- Implemented zero-allocation methods for SMA, EMA, and WMA calculations using ReadOnlySpan and Span.
- Added unit tests for Span API to validate input, match TSeries calculations, handle NaN values, and ensure zero allocation.
- Enhanced documentation to include usage examples for the new Span API.
- Introduced performance benchmarks comparing the new Span API against existing TSeries implementations and other libraries.
2025-11-29 20:48:01 -08:00
Miha Kralj 8f6142cfc0 refactor: clean up Ema and EmaVector tests for consistency, update TValue equality check 2025-11-29 17:30:20 -08:00
Miha Kralj 622e4c8ae6 refactor: update Ema and EmaVector tests to use DateTime.UtcNow for consistency 2025-11-29 16:54:15 -08:00
Miha Kralj 6cdebb984d feat: implement last-value substitution for NaN/Infinity in Ema and EmaVector, enhance documentation and tests 2025-11-29 13:19:04 -08:00
Miha Kralj acac3e610c updates from mac 2025-11-28 13:35:16 -08:00
Miha Kralj 74b49d2bb4 Add TBar, TBarSeries, TSeries, TValue, and IFeed implementations with comprehensive documentation and examples
- 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.
2025-11-27 19:51:43 -08:00