chore: prepare v1.1.0 release
Update version numbers across Rust, Python, and documentation files to 1.1.0. Enhance the .gitignore to include macOS dSYM files and plans directory. Introduce new dependencies in the Rust core library and update the README to reflect recent performance benchmarks and backtesting engine capabilities. Add new artifacts to the benchmarks manifest and improve documentation for the backtesting engine API.
This commit is contained in:
+74
-1
@@ -59,10 +59,83 @@ Module status
|
||||
* - ``ferro_ta.analysis.*``
|
||||
- Adjacent tooling
|
||||
- Useful analytics helpers, but not the primary product story.
|
||||
* - ``ferro_ta.analysis.resample``
|
||||
- Supported (v1.2.0)
|
||||
- ``resample_ohlcv()``, ``align_to_coarse()``, ``resample_ohlcv_labels()`` — pure-NumPy
|
||||
OHLCV bar aggregation across timeframes.
|
||||
* - ``ferro_ta.analysis.multitf``
|
||||
- Supported (v1.2.0)
|
||||
- ``MultiTimeframeEngine`` — multi-timeframe signal generation with automatic alignment.
|
||||
* - ``ferro_ta.analysis.adjust``
|
||||
- Supported (v1.2.0)
|
||||
- ``adjust_ohlcv()``, ``adjust_for_splits()``, ``adjust_for_dividends()`` — backward-adjusted
|
||||
price series for equity/index strategies.
|
||||
* - ``ferro_ta.analysis.plot``
|
||||
- Supported (v1.2.0)
|
||||
- ``plot_backtest()`` — interactive Plotly backtest visualization (requires plotly).
|
||||
* - ``ferro_ta.analysis.regime``
|
||||
- Supported (v1.2.0)
|
||||
- ``detect_volatility_regime()``, ``detect_trend_regime()``, ``detect_combined_regime()``,
|
||||
``RegimeFilter`` — pure-NumPy 6-state market regime labeling; no ML dependencies.
|
||||
* - ``ferro_ta.analysis.optimize``
|
||||
- Supported (v1.2.0)
|
||||
- ``PortfolioOptimizer``, ``mean_variance_optimize()``, ``risk_parity_optimize()``,
|
||||
``max_sharpe_optimize()`` — portfolio optimization via SLSQP (requires scipy).
|
||||
* - ``ferro_ta.analysis.live``
|
||||
- Supported (v1.2.0)
|
||||
- ``PaperTrader`` — event-driven paper trading bridge matching backtest logic exactly.
|
||||
* - MCP, WASM, GPU, plugin, and agent-oriented tooling
|
||||
- Experimental or adjacent
|
||||
- Evaluate these independently from the core indicator library.
|
||||
|
||||
Backtesting engine features
|
||||
---------------------------
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Feature
|
||||
- Status
|
||||
- Notes
|
||||
* - Flat/proportional commission
|
||||
- Supported
|
||||
- Via ``CommissionModel`` presets and ``BacktestEngine.with_commission_model()``.
|
||||
* - Bid-ask spread model (``spread_bps``)
|
||||
- Supported (v1.2.0)
|
||||
- New ``CommissionModel.spread_bps`` field; half-spread deducted per leg.
|
||||
* - Short borrow cost (``short_borrow_rate_annual``)
|
||||
- Supported (v1.2.0)
|
||||
- New ``CommissionModel.short_borrow_rate_annual`` field; accrued per bar for short positions.
|
||||
* - Trailing stop loss
|
||||
- Supported
|
||||
- ``BacktestEngine.with_trailing_stop(pct)`` — intrabar high-water mark tracking.
|
||||
* - Breakeven stop (``breakeven_pct``)
|
||||
- Supported (v1.2.0)
|
||||
- ``BacktestEngine.with_breakeven_stop(pct)`` — moves stop to entry once profit reaches ``pct``.
|
||||
* - Bracket order priority
|
||||
- Supported (v1.2.0)
|
||||
- When both SL and TP are breached on the same bar, the level closer to open fires first.
|
||||
* - Leverage / margin modeling
|
||||
- Supported (v1.2.0)
|
||||
- ``BacktestEngine.with_leverage(margin_ratio, margin_call_pct)`` — tracks margin and
|
||||
triggers force-close on margin call.
|
||||
* - Loss circuit breakers
|
||||
- Supported (v1.2.0)
|
||||
- ``BacktestEngine.with_loss_limits(daily, total)`` — halts trading on drawdown breach.
|
||||
* - Portfolio constraints
|
||||
- Supported (v1.2.0)
|
||||
- ``BacktestEngine.with_portfolio_constraints(max_asset_weight, max_gross_exposure,
|
||||
max_net_exposure)`` for multi-asset backtests.
|
||||
* - Volatility-target position sizing
|
||||
- Supported
|
||||
- ``BacktestEngine.with_position_sizing("volatility_target", ...)``.
|
||||
* - Walk-forward / Monte Carlo
|
||||
- Supported
|
||||
- Available via ``BacktestEngine`` higher-level methods.
|
||||
* - Benchmark comparison
|
||||
- Supported
|
||||
- ``BacktestEngine.with_benchmark(close_array)`` — alpha, beta, information ratio.
|
||||
|
||||
Supported Python versions
|
||||
-------------------------
|
||||
|
||||
@@ -107,7 +180,7 @@ For source builds, packaging details, and platform notes, see
|
||||
Release status
|
||||
--------------
|
||||
|
||||
These docs track package version ``1.0.6``.
|
||||
These docs track package version ``1.2.0``.
|
||||
|
||||
- Release notes by version: :doc:`changelog`
|
||||
- Canonical project changelog: `CHANGELOG.md <https://github.com/pratikbhadane24/ferro-ta/blob/main/CHANGELOG.md>`_
|
||||
|
||||
Reference in New Issue
Block a user