Plugins & Extras¶
Cracktrader keeps the core library focused on exchange connectivity, stores,
feeds, and brokers. Optional indicators, analyzers, strategies, and runnable
examples now live in the unified companion package named
cracktrader_extras.
Installing extras¶
Extras are published as a separate wheel. Install it alongside the core package when you need the additional components:
The extras project registers entry points so Cracktrader can discover optional
features at runtime. Use cracktrader.load(group) to fetch all plugins for a
specific group:
import cracktrader
indicators = cracktrader.load("cracktrader.plugins.indicators")
print(indicators.keys())
If no extras are installed load() returns an empty dictionary, allowing you to
write fallback logic easily.
Available entry point groups¶
The core library reserves three plugin namespaces:
cracktrader.plugins.indicatorscracktrader.plugins.analyzerscracktrader.plugins.strategies
Custom projects can contribute to these groups to register new functionality without modifying core code. Each entry point should resolve to an object (for example an indicator class) that Cracktrader can instantiate or expose.
Working inside the extras repo¶
cracktrader_extras packages community indicators and example strategies. It also
doubles as an integration test suite because the runnable examples are executed
as smoke tests in CI. Refer to that repository for contribution guidelines and
additional documentation.