Rewrite the README with secure setup instructions, add dedicated setup/security docs, and include the standalone local-volatility instability experiment materials for reproducible analysis. Made-with: Cursor
61 lines
1.0 KiB
Markdown
61 lines
1.0 KiB
Markdown
# Setup Guide
|
|
|
|
This guide describes a clean local setup for development and reproducible runs.
|
|
|
|
## Prerequisites
|
|
|
|
- Python 3.10+
|
|
- CMake 3.16+
|
|
- A C++20 compiler
|
|
- PostgreSQL 14+ (or Docker)
|
|
- On macOS, Homebrew packages for C++ DB support:
|
|
- `libpq`
|
|
- `libpqxx`
|
|
- `eigen`
|
|
- `pybind11`
|
|
|
|
## Python dependencies
|
|
|
|
```bash
|
|
python3 -m venv .venv
|
|
source .venv/bin/activate
|
|
pip install --upgrade pip
|
|
pip install -e .
|
|
pip install pandas yfinance sqlalchemy psycopg2-binary matplotlib scipy
|
|
```
|
|
|
|
## Environment configuration
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
```
|
|
|
|
Edit `.env` and set:
|
|
|
|
- `DB_HOST`, `DB_PORT`, `DB_NAME`, `DB_USER`, `DB_PASSWORD`
|
|
- `PIPELINE_SYMBOLS`
|
|
- admin credentials used only by setup script (`POSTGRES_ADMIN_*`)
|
|
|
|
## Database bootstrap
|
|
|
|
```bash
|
|
source .env
|
|
python scripts/setup_postgres.py
|
|
```
|
|
|
|
The script is idempotent and safe to rerun.
|
|
|
|
## Build and test C++
|
|
|
|
```bash
|
|
cmake -S . -B build
|
|
cmake --build build -j
|
|
ctest --test-dir build --output-on-failure
|
|
```
|
|
|
|
## Generate Doxygen docs
|
|
|
|
```bash
|
|
cmake --build build --target docs
|
|
```
|