setup
Set up the Python backtesting environment. Detects OS, creates virtual environment, installs dependencies (openalgo, ta-lib, vectorbt, plotly), and creates the backtesting folder structure.
Security Assessment
Detected risks:
About setup
This skill sets up a complete Python backtesting environment for VectorBT and OpenAlgo. It solves the environment-bootstrap problem for quantitative trading workflows: detecting the operating system, creating and activating a virtual environment, optionally installing the TA-Lib C library, installing the required Python packages, creating the top-level backtesting folder, and configuring a .env file with data-source credentials.
The workflow detects the OS via uname, creates a venv, and installs packages such as vectorbt, plotly, pandas, numpy, yfinance, duckdb, ccxt, numba, and openstatz (noting openstatz replaces QuantStats and OpenAlgo's ta is the default indicator library). TA-Lib is treated as optional and only installed on explicit request; on Linux that path downloads and compiles the TA-Lib source from SourceForge and runs sudo make install, while macOS uses Homebrew and Windows uses a prebuilt wheel. It interactively asks which markets the user will backtest and collects the relevant credentials (OpenAlgo API key, DuckDB or Historify database path, optional CCXT exchange API and secret keys), then writes them to a root .env file. Importantly, it follows good secret-handling practice: it writes placeholders when keys are skipped and appends .env to .gitignore so secrets are never committed.
Target users are quantitative traders and developers building backtests with VectorBT and OpenAlgo across Indian, US, and crypto markets. Typical use is a one-time environment setup before running backtest scripts. Reviewers should note the setup uses sudo package installs and compiles a source tarball fetched over an unencrypted HTTP SourceForge URL on Linux, which is a minor supply-chain consideration, though it is the standard documented TA-Lib install path and is fully optional.
FAQ
What does this skill install?
A Python virtual environment plus packages including vectorbt, plotly, pandas, numpy, yfinance, python-dotenv, scipy, numba, ipywidgets, openstatz, ccxt, duckdb, and psutil, with OpenAlgo's ta as the default indicator library. TA-Lib is optional and only installed on explicit request.
Is TA-Lib required?
No. The skill notes OpenAlgo's ta already covers the same indicators plus more, so TA-Lib is optional. If requested, its C library is installed via Homebrew on macOS, compiled from source on Linux, or installed from a prebuilt wheel on Windows.
How are API keys and credentials handled?
The skill asks which markets you will backtest and collects the relevant credentials (OpenAlgo API key, DuckDB/Historify path, optional CCXT keys), writes them to a root .env file with placeholders when skipped, and appends .env to .gitignore so secrets are not committed.
Which markets does it support?
Indian markets via OpenAlgo or DuckDB, US markets via yfinance (no key needed), and crypto markets via CCXT (optional keys for private data).
What should I be aware of about the TA-Lib Linux install?
The optional Linux path uses sudo to install build tools and runs sudo make install after downloading and compiling the TA-Lib source tarball from a SourceForge HTTP URL. This is the standard documented install but involves elevated privileges and an unencrypted source download.
Install setup
Quick Setup:
- Copy the skill folder to
.claude/skills/ - Claude will automatically detect and use the skill
Repository
marketcalls/vectorbt-backtesting-skills