indicator  by cinar

Technical analysis indicators and backtesting framework in Go

Created 4 years ago
720 stars

Top 47.8% on SourcePulse

GitHubView on GitHub
Project Summary

Indicator Go provides a comprehensive suite of technical analysis indicators, customizable trading strategies, and a robust backtesting framework for quantitative finance applications. It is designed for developers and researchers needing to build, test, and deploy algorithmic trading strategies with a focus on performance and flexibility.

How It Works

Version 2 of Indicator Go is a complete rewrite emphasizing code quality, testability, and efficient data handling. It leverages Golang generics for broad numeric type support and processes data via Go channels for stream-based operations, with helper functions for slice-based workflows. The architecture supports configurable indicators and strategies, allowing for deep customization without preset values, and integrates MCP (Multi-Client Protocol Server) for AI tool compatibility.

Quick Start & Requirements

  • Install: go get github.com/cinar/indicator/v2
  • Prerequisites: Go toolchain.
  • Usage examples for indicator-sync and indicator-backtest CLI tools are provided.

Highlighted Details

  • Supports over 70 technical indicators across Trend, Momentum, Volatility, and Volume categories.
  • Includes a wide range of strategy types: Base, Trend, Momentum, Volatility, Volume, Compound, and Decorator.
  • Offers multiple repository implementations (File System, In-Memory, Tiingo, Alpaca Markets) for data management.
  • Features a backtesting engine with visualization capabilities and an MCP Server for real-time strategy serving.

Maintenance & Community

Indicator is a community-supported project. Contribution guidelines and a Code of Conduct are available.

Licensing & Compatibility

v2.x.x and above are dual-licensed under GNU AGPLv3 and a commercial license. AGPLv3 allows free use and modification but requires derived works to be open-sourced under the same license. A commercial license is available for different terms. v1.x.x is under the MIT License.

Limitations & Caveats

The AGPLv3 license may impose copyleft restrictions on commercial, closed-source integrations. The project is actively developed, and users should consult contribution guidelines for the latest requirements.

Health Check
Last Commit

4 days ago

Responsiveness

Inactive

Pull Requests (30d)
10
Issues (30d)
4
Star History
23 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.