Commit Graph

191 Commits

Author SHA1 Message Date
Miha Kralj 57aaec1ac8 feat: Add Blackman Window Moving Average (BLMA) implementation and documentation 2025-12-22 22:15:27 -08:00
Miha Kralj 7b1e0c738d feat: add Ooples WWMA tests and validate convergence for Aroon Oscillator
refactor: update BOP indicator properties to static and improve performance
2025-12-22 21:34:05 -08:00
Miha Kralj 4efa0e773e Enhance documentation and validation for various indicators 2025-12-22 20:42:26 -08:00
Miha Kralj 31cca5557f fix: update return statement to use spread operator for TSeries in Adx and Adxr classes 2025-12-22 15:51:44 -08:00
Miha Kralj 2c114fdb08 feat: add timestamp handling in Adx and remove obsolete Pwma comparison tests 2025-12-22 15:41:09 -08:00
Miha Kralj 6bd0096297 feat: enhance validation tests for Aroon Oscillator and ADOSC 2025-12-22 15:31:38 -08:00
Miha Kralj d2a622bff9 test tolerances updated 2025-12-22 12:50:41 -08:00
Miha Kralj a7b7207801 Refactor documentation to remove "Zero-Allocation Design" sections across various trend indicators and implement a PowerShell script for automated cleanup
- Updated mathematical foundations and performance profiles where necessary to maintain clarity and coherence.
2025-12-21 14:37:44 -08:00
Miha Kralj 54c309e5cf feat: Implement Ehlers Ultimate Smoother Filter (USF) with documentation and tests 2025-12-20 15:57:38 -08:00
Miha Kralj d21fea3c18 feat: Enhance volume indicators with ADOSC and SSF implementation and validation 2025-12-20 15:08:07 -08:00
Miha Kralj a37d5818be fix: Update ADL calculation to handle empty source and improve versioning in Publish.yml 2025-12-18 22:00:11 -08:00
Miha Kralj b5358091ae feat: Add Absolute Price Oscillator (APO) implementation and documentation
feat: Implement ADL (Accumulation/Distribution Line) indicator
2025-12-18 21:32:01 -08:00
Miha Kralj 35e5571237 docs 2025-12-18 13:51:06 -08:00
Miha Kralj 5d03dec741 Refactor documentation for clarity and detail 2025-12-17 23:00:52 -08:00
Miha Kralj 1084644a3d Add Aroon Indicator implementation and tests
- Implemented Aroon Indicator with constructor, initialization, and update methods.
- Added unit tests for AroonIndicator to verify default settings, historical depth, short name, source code link, and processing of historical bars.
- Created Aroon class for core calculations, including methods for updating with TBar and TBarSeries.
- Added validation tests to ensure Aroon calculations match results from Skender and TA-Lib.
- Updated documentation for Aroon Indicator with calculation methods and usage examples.
- Refactored Dema and Wma classes to use Batch methods for calculations.
- Enhanced performance benchmarks by increasing bar count and integrating OoplesFinance indicators.
- Updated project dependencies to include OoplesFinance.StockIndicators.
2025-12-17 13:18:25 -08:00
Miha Kralj facc814ede chore: Update action versions in Publish.yml; improve .gitignore entries; refactor Alma, Super, and Trima classes for clarity and performance 2025-12-17 10:16:37 -08:00
Miha Kralj 612d2d2c89 Refactor code structure for improved readability and maintainability 2025-12-17 07:51:53 -08:00
Miha Kralj 8cec2fec8d feat: Refactor TBar and TValue to record structs; improve readability and performance
fix: Update condition checks in Htit and Mgdi for better numerical stability
refactor: Simplify parameter struct in T3 and enhance Vidya state management
2025-12-17 07:27:45 -08:00
Miha Kralj d277e08056 refactoring 2025-12-16 21:16:50 -08:00
Miha Kralj a67ad65fa5 Test completeness 2025-12-14 21:55:40 -08:00
Miha Kralj f761cc5712 feat: Add Awesome Oscillator (AO) implementation with tests and documentation 2025-12-14 21:01:21 -08:00
Miha Kralj db6f994d75 feat: Implement ADX Indicator with tests, documentation, and integration 2025-12-14 20:37:30 -08:00
Miha Kralj 016c10b68a feat: Implement ADX Indicator with Quantower integration 2025-12-14 20:32:01 -08:00
Miha Kralj 78775c1da0 feat: implement SuperTrend indicator with tests and documentation 2025-12-14 19:28:07 -08:00
Miha Kralj 18759beb5e feat: implement McGinley Dynamic Indicator (MGDI) with tests and documentation 2025-12-14 17:14:51 -08:00
Miha Kralj 822aaa0d40 Add Ehlers Hilbert Transform Instantaneous Trend (HTIT) implementation and tests
- Implemented the HTIT indicator in Htit.cs, utilizing the Hilbert Transform for trend analysis.
- Added unit tests for HTIT validation against TA-Lib, Skender, and Ooples implementations in Htit.Validation.Tests.cs.
- Created documentation for HTIT in Htit.md, detailing its core concepts, formula, parameters, usage, and interpretation.
2025-12-14 16:52:02 -08:00
Miha Kralj f7b8fe1654 feat: implement DMX indicator with comprehensive tests and documentation 2025-12-13 23:17:56 -08:00
Miha Kralj fd3065e7b9 fix: add validation for empty span in MinScalar and MaxScalar methods; ensure valid OHLC values in GBM calculations 2025-12-13 22:51:26 -08:00
Miha Kralj 7168866098 fix: update return type for empty source in Jma to an empty array 2025-12-13 22:32:12 -08:00
Miha Kralj c1a476ed9c fix: update validation logic to prevent negative start index and improve error message for alpha parameter 2025-12-13 22:16:29 -08:00
Miha Kralj 9587560cd8 feat: Add Jurik Composite Fractal Behavior (CFB) indicator and tests 2025-12-13 21:38:32 -08:00
Miha Kralj 4b17984cfd Add PWMA implementation and tests; enhance documentation 2025-12-13 20:21:21 -08:00
Miha Kralj 60227a23c1 Implement Jurik Moving Average (JMA) with adaptive smoothing and comprehensive tests 2025-12-12 21:35:00 -08:00
Miha Kralj 79dcbcaddd Refactor validation tests to improve tolerance handling and clarify validation logic for TEMA and VIDYA indicators 2025-12-12 19:03:23 -08:00
Miha Kralj cea3e0c46d Refactor validation tests for various indicators to utilize shared test data structure 2025-12-12 13:47:57 -08:00
Miha Kralj e6033638ad Refactor trend indicators to use record structs for state management 2025-12-10 21:58:45 -05:00
Miha Kralj cfc54bf1f7 Enhance SIMD support in moving average implementations; add AVX512 and ARM64 optimizations for HMA, SMA, and WMA 2025-12-10 21:12:14 -05:00
Miha Kralj 053234045f VIDYA indicator with adaptive smoothing based on market volatility. 2025-12-10 20:07:46 -05:00
Miha Kralj 66b1fc3dca Add RMA indicator implementation and related tests; update existing indicators to return empty array for zero count 2025-12-10 19:24:55 -05:00
Miha Kralj 8df3480d1f DWMA Indicator implementation and tests 2025-12-10 18:22:10 -05:00
Miha Kralj 81830c9031 Optimize memory allocation in ALMA and Conv classes; improve performance by using stackalloc for small periods 2025-12-10 15:15:20 -05:00
Miha Kralj 47884bddab Refactor and optimize TBar, TBarSeries, and TSeries notebooks; remove obsolete code
- Enhanced Alma class by simplifying the CalculateWeightedSum method and removing unnecessary comments.
- Removed SIMD-related methods from Conv class, replacing them with optimized DotProduct calls.
- Updated Sma and Wma classes to use source.ContainsNonFinite() for non-finite value checks, improving readability and performance.
2025-12-10 15:03:58 -05:00
Miha Kralj b26d5d7751 Enhance code quality and stability across various modules
- Updated .coderabbit.yaml to exclude additional file types from reviews, improving the focus on relevant code changes.
- Modified scanner.sh to handle test failures more gracefully, ensuring that analysis stops on test failures and improving logging.
- Improved sonarscanner.sh to ensure build and test failures are properly reported, enhancing CI reliability.
- Refined SimdExtensions.cs documentation for clarity on variance calculation methods.
- Cleaned up TSeries.Tests.cs by simplifying the test structure and ensuring proper namespace usage.
- Fixed potential issues in tseries.cs by ensuring correct handling of DateTime values.
- Enhanced CsvFeed.cs to improve error handling during CSV parsing, ensuring robustness against malformed data.
- Updated GBM.cs to correctly calculate volume in the current bar, ensuring accurate simulation.
- Adjusted index.html to use globalThis for better compatibility across environments.
- Refined quantalib.csproj to exclude unnecessary files from compilation, streamlining the build process.
- Added comprehensive tests for the Mama class to ensure correct behavior during updates and state management.
- Improved error handling in various trend classes (Kama, Dema, Ema, T3, Tema, Wma) to ensure NaN values are managed correctly.
- Removed redundant Mama.Repro.Tests.cs file and consolidated tests into Mama.Tests.cs for better organization.
- Enhanced T3 and Tema classes to maintain state integrity during updates, particularly with NaN values.
2025-12-10 14:51:58 -05:00
Miha Kralj 7a4850956b Convolution Indicator (CONV) with customizable kernel support 2025-12-10 11:48:52 -05:00
Miha Kralj b46e83475e Add MAMA Indicator Implementation and Tests 2025-12-09 21:32:06 -05:00
Miha Kralj 8959d9584d chore: update project files and configurations for improved compatibility and performance 2025-12-09 16:04:19 -05:00
Miha Kralj c802a9ea80 fix: address code review issues in indicators and core components 2025-12-09 16:00:04 -05:00
Miha Kralj 861571d249 LSMA indicator with tests and documentation 2025-12-09 14:19:33 -05:00
Miha Kralj c1caaf36b4 refactor: Update list initialization in DEMA, EMA, SMA, T3, TEMA, TRIMA, and WMA classes for improved readability 2025-12-08 19:11:53 -05:00
Miha Kralj 5f57cbbe74 refactor: Simplify TSeries and Dema constructors, and streamline benchmark methods for improved readability 2025-12-08 18:43:23 -05:00