← 返回
效率工具

Stock Strategy Backtester

Backtest stock trading strategies on historical OHLCV data and report win rate, return, CAGR, drawdown, Sharpe ratio, and trade logs. Use when evaluating or...
在历史OHLCV数据上回测股票交易策略,报告胜率、收益率、CAGR、回撤、夏普比率和交易日志。用于评估或...
taylen
效率工具 clawhub v1.0.4 1 版本 97515.9 Key: 无需
★ 3
Stars
📥 7,163
下载
💾 517
安装
1
版本
#backtest#latest#quant#stocks

概述

Stock Strategy Backtester

Version Notice

  • 1.0.0 and 1.0.1 are deprecated.
  • Use 1.0.2 or newer only.
  • Deprecation reason: early versions bundled non-core marketplace automation files and may trigger security scanner warnings in some environments.

Overview

Run repeatable, long-only stock strategy backtests from daily OHLCV CSV files.

Use bundled scripts to generate consistent metrics and trade-level output, then summarize with investor-friendly conclusions.

Quick Start

  1. Prepare a CSV with at least Date and Close columns.
  2. Run a baseline backtest:
python scripts/backtest_strategy.py \
  --csv /path/to/prices.csv \
  --strategy sma-crossover \
  --fast-window 20 \
  --slow-window 60
  1. Export artifacts for review:
python scripts/backtest_strategy.py \
  --csv /path/to/prices.csv \
  --strategy rsi-reversion \
  --rsi-period 14 \
  --rsi-entry 30 \
  --rsi-exit 55 \
  --commission-bps 5 \
  --slippage-bps 2

Workflow

  1. Validate data
    • Ensure Date is parseable and sorted ascending.
    • Ensure Open/High/Low/Close are numeric; missing Open/High/Low falls back to Close.
  1. Pick strategy logic
    • sma-crossover: trend-following with fast/slow moving averages.
    • rsi-reversion: buy oversold and exit on momentum recovery.
    • breakout: enter on highs breakout and exit on lows breakdown.
  1. Set realistic assumptions
    • Always set --commission-bps and --slippage-bps.
    • Avoid reporting cost-free backtests as production-ready.
  1. Compare variants
    • Change one parameter block at a time.
    • Compare on the same date range and same cost model.
  1. Produce final summary
    • Report: total_return_pct, cagr_pct, win_rate_pct, max_drawdown_pct, sharpe_ratio, profit_factor, and trade count.
    • Use trade CSV to explain where alpha is coming from.

Supported Commands

  • Baseline SMA strategy:
python scripts/backtest_strategy.py \
  --csv /path/to/prices.csv \
  --strategy sma-crossover \
  --fast-window 10 \
  --slow-window 50
  • Breakout strategy:
python scripts/backtest_strategy.py \
  --csv /path/to/prices.csv \
  --strategy breakout \
  --lookback 20
  • JSON-only output (for automation pipelines):
python scripts/backtest_strategy.py \
  --csv /path/to/prices.csv \
  --strategy rsi-reversion \
  --quiet

Output Contract

  • Script prints a JSON object to stdout with:
  • strategy
  • period
  • metrics
  • config
  • trades

Analysis Guardrails

  1. Use out-of-sample logic
    • Prefer walk-forward validation over one-shot tuning.
  1. Avoid leakage
    • Compute signals from bar t, execute at bar t+1 open.
  1. Report downside with upside
    • Never present return without drawdown and trade count.
  1. Treat results as research
    • Backtests are not guarantees and should not be framed as financial advice.

References

  • Metrics details: references/backtest-metrics.md

版本历史

共 1 个版本

  • v1.0.4 当前
    2026-03-28 17:52 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

productivity

Word / DOCX

ivangdavila
创建、检查和编辑 Microsoft Word 文档及 DOCX 文件,支持样式、编号、修订记录、表格、分节符及兼容性检查等功能。
★ 437 📥 147,151
productivity

Nano Pdf

steipete
使用nano-pdf CLI通过自然语言指令编辑PDF
★ 274 📥 114,714
productivity

Obsidian

steipete
操作 Obsidian 仓库(纯 Markdown 笔记)并通过 obsidian-cli 自动化。
★ 429 📥 103,682