End-to-end algorithmic trading system · NSE Indian equity market · Python
QuantIQ is a collaborative 12-week project to build a working paper-trading bot on the NSE using the Dhan API. Equal parts learning vehicle, team collaboration exercise, and portfolio piece.
Scope: Strategy design → backtesting → live paper trading via Dhan API Market: NSE equity (with F&O context) Timeline: 12 weeks · 5 phases · public after Week 8
Phase 1 roles assigned 17 May 2026. Reviewed again at end of Phase 1. P = primary, S = secondary.
| Name | Role | Status |
|---|---|---|
| RS | Project Lead | Active |
| GT | Co-Lead | Quant / Strategy (P) | Analyst / Docs (S) | Active |
| EB | Analyst / Docs (P) | Dev / Infra (S) | Active |
| AV | Quant / Strategy (P) | Data Engineering (S) | Active |
| AR | Dev / Infra (P) | Data Engineering (S) | Active |
| RT | Quant / Strategy (P) | Dev / Infra (S) | Active |
| NS | Dev / Infra (P) | Data Engineering (S) | Active |
| AJ | Data Engineering (P) | Quant / Strategy (S) | Active |
| SS | Quant / Strategy (P) | Analyst / Docs (S) | Active |
| SmS | Data Engineering (P) | Analyst / Docs (S) | Active |
| AK | Dev / Infra (P) | Data Engineering (S) | Active |
| ShS | Analyst / Docs (P) | Dev / Infra (S) | Active |
Roles reviewed end of Phase 1 / start of Phase 2.
| Phase | Weeks | Deliverable | Status |
|---|---|---|---|
| 0 — Onboarding | 1 | First commit from every member | ✅ Complete |
| 1 — Foundations | 2–4 | Python script: fetch + analyse NSE stock data | 🔄 In Progress |
| 2 — Data & Analysis | 5–7 | Shared market_analysis.ipynb on GitHub |
⏳ Pending |
| 3 — Strategy & Backtest | 8–9 | Backtest report: Sharpe, drawdown, win rate | ⏳ Pending |
| 4 — Paper Trading | 10–11 | Bot running across 3+ live trading sessions | ⏳ Pending |
| 5 — Ship It | 12 | Portfolio-ready public GitHub repo | ⏳ Pending |
⚠️ Python version: Use 3.12 only. Python 3.13+ will fail to install several core data libraries.
# 1. Clone and enter the repo
git clone https://github.com/Quant-IQ/quantiq.git
cd quantiq
# 2. Confirm your Python version
compgen -c python | sort -u # Must have 3.12.x (Runs only on bash)
# 3. Create a virtual environment
python3.12 -m venv venv # Mac / Linux
py -3.12 -m venv venv # Windows
# 4. Activate it
source venv/bin/activate # Mac / Linux
venv\Scripts\activate # Windows (Command Prompt)
source venv/Scripts/activate # Windows (Git Bash)
# 5. Install dependencies
python -m pip install --upgrade pip
pip install -r requirements.txt
# 6. Configure environment variables
cp .env.example .env
# Open .env and fill in your Dhan client ID and access token
# Verify .env is not tracked (it must NOT appear here)
git status
# 7. Make your first contribution
git checkout -b members/yourname
# Create members/yourname.md with your name, role, and goals
git add members/yourname.md
git commit -m "docs: add yourname profile"
git push origin members/yourname
# GitHub will print a URL in the terminal — open it to submit your PR| Layer | Tools |
|---|---|
| Language | Python 3.12 |
| Data | yfinance, pandas, numpy |
| Indicators | ta |
| Backtesting | vectorbt |
| Broker API | dhanhq (Dhan) |
| Dashboard | Streamlit |
| Charts | plotly |
quantiq/
├── src/
│ ├── data/ # Data fetching and indicator calculation
│ ├── strategy/ # Entry and exit logic
│ ├── execution/ # Dhan API and order management
│ └── dashboard/ # Streamlit app
├── notebooks/ # Jupyter analysis files
├── backtest/ # Backtest results and reports
├── logs/ # Trade signal logs (CSV)
├── members/ # One profile file per team member
└── docs/ # Architecture notes
| Tool | Purpose |
|---|---|
| Discord | Primary team communication — all project discussions |
| AppFlowy | Docs, weekly log, decisions log, Kanban overview |
| GitHub | Code, PRs, Issues, Projects board |
| Urgent personal messages only — not project tracking |
Discord channel guide:
#standup(Monday standups only) ·#dev(code + PRs) ·#markets(strategy) ·#data(pipelines) ·#resources(links only)
Read CONTRIBUTING.md before opening a PR. Key rules:
- Never push directly to
main - Never merge your own PR — all PRs require one reviewer
- Write
Closes #<issue>in your PR description to auto-close the linked issue - Branch naming:
feature/,fix/,data/,docs/,backtest/,members/
Algo trading on your own account for personal use is legal in India under SEBI guidelines. This project does not manage third-party capital and is not offered as a commercial service. The current binding regulation is the SEBI Circular — Safer Participation of Retail Investors in Algorithmic Trading (Feb 2025), which became fully mandatory on 1 April 2026.
README is a living document. Updated at the end of each phase by the Analyst / Docs role. Last updated: Week 1