{"id":22408361,"url":"https://github.com/phmatray/talibstandard","last_synced_at":"2026-01-03T14:25:12.321Z","repository":{"id":49060233,"uuid":"126631575","full_name":"phmatray/TaLibStandard","owner":"phmatray","description":"TaLib in C# for .NET Standard","archived":false,"fork":false,"pushed_at":"2025-01-06T15:20:23.000Z","size":3977,"stargazers_count":81,"open_issues_count":7,"forks_count":25,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-31T07:07:24.514Z","etag":null,"topics":["dotnet-standard","talib","technical-analysis"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phmatray.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-24T19:06:07.000Z","updated_at":"2025-03-28T12:07:01.000Z","dependencies_parsed_at":"2024-12-05T11:17:34.160Z","dependency_job_id":"9eeed2b3-e999-4e6c-8766-07eb05b8da05","html_url":"https://github.com/phmatray/TaLibStandard","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FTaLibStandard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FTaLibStandard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FTaLibStandard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phmatray%2FTaLibStandard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phmatray","download_url":"https://codeload.github.com/phmatray/TaLibStandard/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247615385,"owners_count":20967184,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dotnet-standard","talib","technical-analysis"],"created_at":"2024-12-05T11:17:24.647Z","updated_at":"2026-01-03T14:25:12.315Z","avatar_url":"https://github.com/phmatray.png","language":"C#","readme":"# TaLibStandard\n[![Sparkline](https://stars.medv.io/phmatray/TaLibStandard.svg)](https://stars.medv.io/phmatray/TaLibStandard)\n\nA modern and robust C# Technical Analysis library based on the original open-source [TA-Lib](https://ta-lib.org) by Mario Fortier, using Generic Math and supporting Double, Float, and Decimal data types.\n\n---\n\n[![phmatray - TaLibStandard](https://img.shields.io/static/v1?label=phmatray\u0026message=TaLibStandard\u0026color=blue\u0026logo=github)](https://github.com/phmatray/TaLibStandard \"Go to GitHub repo\")\n[![License: GPL-3.0-or-later](https://img.shields.io/badge/License-GPLv3.0--or--later-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html)\n[![stars - TaLibStandard](https://img.shields.io/github/stars/phmatray/TaLibStandard?style=social)](https://github.com/phmatray/TaLibStandard)\n[![forks - TaLibStandard](https://img.shields.io/github/forks/phmatray/TaLibStandard?style=social)](https://github.com/phmatray/TaLibStandard)\n\n[![GitHub tag](https://img.shields.io/github/tag/phmatray/TaLibStandard?include_prereleases=\u0026sort=semver\u0026color=blue)](https://github.com/phmatray/TaLibStandard/releases/)\n[![issues - TaLibStandard](https://img.shields.io/github/issues/phmatray/TaLibStandard)](https://github.com/phmatray/TaLibStandard/issues)\n[![GitHub pull requests](https://img.shields.io/github/issues-pr/phmatray/TaLibStandard)](https://github.com/phmatray/TaLibStandard/pulls)\n[![GitHub contributors](https://img.shields.io/github/contributors/phmatray/TaLibStandard)](https://github.com/phmatray/TaLibStandard/graphs/contributors)\n[![GitHub last commit](https://img.shields.io/github/last-commit/phmatray/TaLibStandard)](https://github.com/phmatray/TaLibStandard/commits/master)\n[![codecov](https://codecov.io/gh/phmatray/TaLibStandard/branch/main/graph/badge.svg?token=041C4QKW6O)](https://app.codecov.io/gh/phmatray/TaLibStandard/tree/main)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/84e2475f22a04bc1bed551f081029e82)](https://app.codacy.com/gh/phmatray/TaLibStandard/dashboard)\n\n---\n\n## 📝 Table of Contents\n\n\u003c!-- TOC --\u003e\n* [TaLibStandard](#talibstandard)\n  * [📝 Table of Contents](#-table-of-contents)\n  * [📚 Introduction](#-introduction)\n  * [🎯 Goal](#-goal)\n  * [🏁 Getting started](#-getting-started)\n  * [📌 Features](#-features)\n    * [Roadmap (next features)](#roadmap-next-features)\n  * [📄 Documentation](#-documentation)\n  * [📥 Installation](#-installation)\n    * [📋 Prerequisites](#-prerequisites)\n    * [🚀 We use the latest C# features](#-we-use-the-latest-c-features)\n    * [📦 NuGet Packages](#-nuget-packages)\n    * [🧪 Tests Specifications](#-tests-specifications)\n  * [💾 Installation](#-installation-1)\n  * [📊 Code Quality](#-code-quality)\n  * [❓ Issues and Feature Requests](#-issues-and-feature-requests)\n  * [🤝 Contributing](#-contributing)\n  * [🌟 Contributors](#-contributors)\n  * [✉️ Contact](#-contact)\n  * [📝 Release notes](#-release-notes)\n  * [📜 License](#-license)\n\u003c!-- TOC --\u003e\n\n## 📚 Introduction\n\nTaLibStandard is a modern interpretation of the widely used [TA-Lib](https://ta-lib.org), reimagined in C# 14. It is designed to be reliable, efficient, and user-friendly for developers performing financial market analysis. The addition of .NET's Generic Math feature allows for a richer, more flexible library that can handle a variety of number types.\n\n## 🎯 Goal\n\nThe primary objective of TaLibStandard is to provide a comprehensive, feature-rich and accessible library for conducting technical analysis on financial market data.\n\n## 🏁 Getting started\n\nTo get started with TaLibStandard, you can clone the repository and explore the examples provided in the `examples` directory. You can also refer to the list of [available functions](./docs/functions.md) in the documentation for a comprehensive overview of the library's capabilities.\n\n## 📌 Features\n\n* [x] Support for Double, Float, and Decimal data types, with the help of .NET's Generic Math\n* [x] With some basic tests (coverage: \u003e= 80%)\n* [x] .NET Exception handling (BREAKING CHANGE)\n\n### Roadmap (next features)\n\n* [ ] Comprehensive API documentation that is easy to understand\n* [ ] High-Level API for common use cases\n* [ ] Support for more data types\n* [ ] Support for more functions\n* [ ] More tests\n* [ ] More examples\n* [ ] Add a Benchmark project\n* [ ] Create a gRPC server to expose the library as a service\n\n## 📄 Documentation\n\n**TaLibStandard** provides a [COMPLETE DOCUMENTATION](https://github.com/phmatray/TaLibStandard/blob/main/docs/README.md) of the library.\n\nAll summaries are written in English. If you want to help us translate the documentation, please open an issue to\ndiscuss it.\n\n\u003e **Note:** The documentation is generated using [Doraku/DefaultDocumentation]() tool. It is generated automatically when the project is built.\n\n## 📥 Installation\n\n### 📋 Prerequisites\n\n- .NET 10.0 (supported versions: 10.x)\n- A C# IDE (Visual Studio, JetBrains Rider, etc.)\n- A C# compiler (dotnet CLI, etc.)\n\n### 🚀 We use the latest C# features\n\nThis library targets .NET 10.0 and uses the latest C# features. It is written in C# 14.0 and uses the new `init`\nproperties, `record` types, `switch` expressions, `using` declarations and more.\n\nI invite you to read the [C# 14.0 documentation](https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-14) to\nlearn more about these features.\n\n### 📦 NuGet Packages\n\n| Package Name                         | NuGet Version Badge                                                                                                                                      | NuGet Downloads Badge                                                                                                                                     | Package Explorer                                                            |\n|--------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------|\n| Atypical.TechnicalAnalysis.Candles   | [![NuGet](https://img.shields.io/nuget/v/Atypical.TechnicalAnalysis.Candles.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Candles)     | [![NuGet](https://img.shields.io/nuget/dt/Atypical.TechnicalAnalysis.Candles.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Candles)     | [Explore](https://nuget.info/packages/Atypical.TechnicalAnalysis.Candles)   |\n| Atypical.TechnicalAnalysis.Functions | [![NuGet](https://img.shields.io/nuget/v/Atypical.TechnicalAnalysis.Functions.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Functions) | [![NuGet](https://img.shields.io/nuget/dt/Atypical.TechnicalAnalysis.Functions.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Functions) | [Explore](https://nuget.info/packages/Atypical.TechnicalAnalysis.Functions) |\n| Atypical.TechnicalAnalysis.Core      | [![NuGet](https://img.shields.io/nuget/v/Atypical.TechnicalAnalysis.Common.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Common)       | [![NuGet](https://img.shields.io/nuget/dt/Atypical.TechnicalAnalysis.Common.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Common)       | [Explore](https://nuget.info/packages/Atypical.TechnicalAnalysis.Common)    |\n\nThis table is automatically updated regularly the latest developments and releases in the Atypical Technical Analysis suite.\n\n### 🧪 Tests Specifications\n\n  * Target framework : .NET 10\n  * Language version : C# 14\n  * xUnit and Shouldly \n\n## 💾 Installation\n\nTo install TaLibStandard, you can use the NuGet package manager. Run the following command in your terminal:\n\n```shell\ndotnet add package Atypical.TechnicalAnalysis.Candles\ndotnet add package Atypical.TechnicalAnalysis.Functions\n```\n\n## 📊 Code Quality\n\nWe strive for the highest code quality in TaLibStandard, leveraging Codacy—an automated code analysis/quality tool. Codacy provides static analysis, cyclomatic complexity measures, duplication identification, and code unit test coverage changes for every commit and pull request.\n\nView our Codacy metrics [here](https://app.codacy.com/gh/phmatray/TaLibStandard).\n\n## ❓ Issues and Feature Requests\n\nFor reporting bugs or suggesting new features, kindly submit these as an issue to the [TaLibStandard Repository](https://github.com/phmatray/TaLibStandard/issues). We value your contributions, but before submitting an issue, please ensure it is not a duplicate of an existing one.\n\n## 🤝 Contributing\n\nWe welcome contributions from the community! If you'd like to contribute to TaLibStandard, please fork the repository and submit a pull request. For major changes, please open an issue first to discuss what you would like to change.\n\n## 🌟 Contributors\n\n[![Contributors](https://contrib.rocks/image?repo=phmatray/TaLibStandard)](http://contrib.rocks)\n\n## ✉️ Contact\n\nYou can contact us by opening an issue on this repository.\n\n## 📝 Release notes\n\n### v3.0.0 (January 2026) - .NET 10 LTS Release 🎉\n\n**Breaking Changes:**\n- **Upgraded to .NET 10 LTS** - Framework support extended until November 2028\n- **C# 14 Language Features** - Utilizing the latest C# capabilities\n- **Updated Dependencies** - All major packages updated to .NET 10 compatible versions\n- **Minimum .NET Version:** Now requires .NET 10.0 SDK\n\n**Major Improvements:**\n- **Code Quality:** Extensive refactoring eliminated ~1,200 lines of duplicated code\n- **Validation Consolidation:** Unified validation patterns across 99 indicators\n- **Result Classes:** Consolidated result types with inheritance hierarchy\n- **Mathematical Functions:** Template-based approach for 60+ math indicators\n- **Lookback Validation:** Standardized lookback calculations for 87 indicators\n- **Code Cleanup:** Removed unused code and consolidated common patterns\n\n**Performance:**\n- All 898 tests passing\n- No performance degradation\n- Maintained backward compatibility in algorithms\n\n**Documentation:**\n- Auto-generated API documentation updated\n- All function and candle pattern docs regenerated\n\nFor migration guide from v2.x to v3.0, see [Migration from v2 to v3](#migration-from-v2-to-v3).\n\n### Previous Releases\n\n- v2.0.0 (June 2025) - Major release with .NET Exception handling\n- v1.0.0 (June 2025) - First stable release\n- v0.4.0 (June 2025) - Generic Math support\n- v0.3.1 (June 2025) - Bug fixes and improvements\n- v0.3.0 (June 2025) - Enhanced functionality\n- v0.2.0 (June 2025) - Additional indicators\n- v0.1.0 (November 2023) - Initial release\n\n## Migration from v2 to v3\n\n### Prerequisites\n- **Update to .NET 10 SDK:** Download from [dotnet.microsoft.com](https://dotnet.microsoft.com/download)\n- **Update project target framework:**\n  ```xml\n  \u003cTargetFramework\u003enet10.0\u003c/TargetFramework\u003e\n  ```\n\n### Breaking Changes\n\n1. **Framework Requirement**\n   - Minimum version: .NET 10.0\n   - Projects targeting .NET 9 or earlier must upgrade\n\n2. **Package Dependencies**\n   - If you reference TaLibStandard packages, ensure your project can target .NET 10.0\n   - Update any conflicting package versions\n\n### API Compatibility\n- **No API breaking changes** - All public method signatures remain the same\n- **No behavioral changes** - All algorithms produce identical results\n- Code that worked with v2.x will work with v3.0 after framework upgrade\n\n### Testing Your Migration\n```csharp\n// No code changes needed - same API as v2.x\nvar rsiResult = TAFunc.Rsi(0, closePrices.Length - 1, closePrices, 14,\n    ref outBegIdx, ref outNBElement, ref rsiValues);\n```\n\n## 📜 License\n\nGNU General Public License v3.0 or later.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphmatray%2Ftalibstandard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphmatray%2Ftalibstandard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphmatray%2Ftalibstandard/lists"}