12 Commits

Author SHA1 Message Date
porcelaincode 83eac3aa80 update README.md 2026-06-13 14:49:06 +05:30
porcelaincode fc0c756203 chore: remove all VectorBT references — raptorbt stands on its own
- README: remove VectorBT Comparison section and TOC entry, rewrite
  Overview/Performance as standalone benchmarks, clean metric-mapping
  table reference, update feature list to 7 strategy types including tick
- Cargo.toml / pyproject.toml: rewrite description without VectorBT mention
- __init__.py: rewrite module docstring without comparative framing
- Rust comments (engine.rs, position.rs, signals/processor.rs, core/types.rs,
  python/bindings.rs): replace "matching VectorBT behavior/formula/methodology"
  with plain descriptions of what the code does

Co-Authored-By: porcelaincode <contact@alphabench.in>
2026-06-03 21:52:30 +05:30
porcelaincode 3a9f7564ad docs(tick): document v0.4.0 tick-level processing API in README
Add Strategy Types §7 (Tick-Level Backtest) covering:
- run_tick_backtest usage with annotated example
- compute_tick_entry_signals / compute_tick_exit_signals
- All 6 tick feature functions with usage snippets
- Zerodha cumulative-sum handling note (buy_sell_imbalance_delta vs
  run_tick_backtest pre-conversion)

Add v0.4.0 changelog entry listing all 11 new public API additions
(TickData struct, TimeExit, run_tick_backtest, 2 signal functions,
6 feature functions, compute_backtest_metrics pub fn).

Co-Authored-By: porcelaincode <contact@alphabench.in>
2026-06-03 21:47:15 +05:30
porcelaincode c9451069d8 feat: add option settlement handling and single-leg spread types, bump to 0.3.4
Add settlement logic for option expiry with Settlement exit reason, leg_expiry_timestamps parameter for per-leg expiry tracking, and new single-leg spread types (LongCall, LongPut, NakedCall, NakedPut). Positions are force-closed at settlement with premiums replaced by intrinsic value, and re-entry is prevented after all legs expire.
2026-03-07 06:37:31 +05:30
porcelaincode e049a2f968 feat: add batch spread backtest with parallel execution, bump to 0.3.3
Introduces PyBatchSpreadItem and batch_spread_backtest function for running multiple spread strategies in parallel using Rayon, enabling efficient multi-strategy backtesting workflows.
2026-02-25 15:19:42 +05:30
porcelaincode 87545683eb docs: remove iframe from README, post1 release 2026-02-18 19:15:15 +05:30
porcelaincode 0ff67e7fe2 feat: add payoff_ratio and recovery_factor metrics, bump to 0.3.2
Add two new risk/reward metrics to BacktestMetrics:
- payoff_ratio: avg winning return / avg losing return (absolute)
- recovery_factor: net profit / max drawdown in absolute terms
Computed in both StreamingMetrics::finalize() and PortfolioEngine.
Exposed via PyO3 with #[pyo3(get)] on PyBacktestMetrics.
Updated README with API reference and changelog.
2026-02-18 18:57:42 +05:30
porcelaincode bb6ce05c57 feat: add instrument level config and bump to 0.3.0 2026-02-10 05:03:39 +05:30
porcelaincode c711e9ce8e feat: add new backtest functions 2026-02-08 06:04:43 +05:30
porcelaincode 196f63f5c3 update project metadata and documentation for clarity and branding 2026-01-29 23:11:15 +05:30
porcelaincode b367cdb275 fix product name 2026-01-28 14:53:10 +05:30
porcelaincode f6c60d7b8b Initial backtesting engine 2026-01-28 06:30:03 +05:30