Files
my-python-backteat/ferro-ta-main/docs/plugin-catalog.md
T
2026-07-09 05:08:16 +08:00

2.1 KiB

Plugin Catalog

A curated list of ferro-ta plugins and community extensions.

Note: This catalog is community-maintained and provided on a best-effort basis. Plugins are not endorsed or audited by the ferro-ta maintainers. Verify each plugin before use in production.


How to Add Your Plugin

  1. Verify that your plugin works with the current ferro-ta release.
  2. Open a pull request adding a row to the table below. Include:
    • Name: package name (PyPI or GitHub)
    • Description: one-line summary of what the plugin adds
    • Install: pip install ... command
    • Link: GitHub or PyPI URL

Listing criteria:

  • Has a README or documentation describing what it does.
  • Works with the current or previous minor version of ferro-ta.
  • Is publicly available (PyPI or GitHub).

Known Plugins

Name Description Install Link
(none yet — be the first!)

Reference Implementation

The examples/custom_indicator.py file in the ferro-ta repository serves as the canonical reference for building a plugin. See Writing a plugin for the full guide.

# Minimal plugin example
from ferro_ta.registry import register
from ferro_ta import RSI, SMA

def SMOOTH_RSI(close, timeperiod=14, smooth=3):
    """Smoothed RSI: RSI of RSI values."""
    return SMA(RSI(close, timeperiod=timeperiod), timeperiod=smooth)

register("SMOOTH_RSI", SMOOTH_RSI)

Publishing Your Plugin to PyPI

  1. Implement your indicator(s) following the plugin contract.
  2. Package with pyproject.toml using the ferro_ta.plugins entry point:
[project]
name = "ferro-ta-myplugin"
version = "1.0.0"
dependencies = ["ferro_ta>=1.0.0"]

[project.entry-points."ferro_ta.plugins"]
auto_register = "ferro_ta_myplugin:register_all"
  1. Publish to PyPI:
pip install build twine
python -m build
twine upload dist/*
  1. Submit a PR to add your plugin to this catalog.

Removal Requests

If you are the maintainer of a listed plugin and want it removed, open a GitHub issue with the title "Plugin catalog removal: ".