Open-source multi-agent ICT/SMC signal framework for Deriv synthetic indices, Forex, and metals. Scans 32 pairs across multiple timeframes (1M → 4H), scores setups against your own strategy vault, debates them bull-vs-bear before approval, draws levels on TradingView, fires Discord alerts, and can auto-execute Deriv Multiplier contracts.
This repo is the framework only. It ships with an empty strategy vault (
vault_template/) — you supply your own trading knowledge, Discord server, and broker credentials. No trading data, signals, or strategy content is included.
Risk disclaimer: trading synthetic indices and leveraged products carries a high risk of loss. This software is provided for educational and research purposes — nothing here is financial advice. Use demo mode first.
Automated chart markup — VOL75 SHORT setup with SSL sweep confirmed, inducement
done, bearish OB entry, SL, TP1 (1:1R) and TP2 at the SSL target, all drawn by
vault_tradingview_markup.py:
Educational cards generated by vault_image_generator.py and posted to Discord
by the content scheduler:
| Strategy library card | Signal concept card |
|---|---|
![]() |
![]() |
TradingView Desktop (via tradingview-mcp, CDP)
│
▼
ollama_prescan.py ──── local LLM pre-filter (H4+H1+M15 sweep check,
│ FLAGGED / WATCH / SKIP tiers — token saver)
▼
vault_orchestrator.py ── full multi-TF scan per pair
│
├── vault_brain_analyzer.py confluence scoring vs your vault (0–4.0)
├── vault_debate_engine.py bull vs bear analyst debate gate
├── vault_levels.py key level detection
├── vault_tradingview_markup.py Entry/SL/TP/OB/FVG drawn on chart
│
▼
vault_discord_multi_post.py ── tiered Discord alerts (signals, risk log, digest)
│
├── vault_price_alert.py pm2 daemon — Deriv WebSocket tick monitor,
│ entry-tap + TP1/breakeven management alerts
├── vault_autotrader.py auto-buys Deriv Multiplier contracts (demo/live)
├── vault_track_record.py outcome eval — vault-true limit-fill model
└── vault_journal.py Obsidian/NotebookLM markdown journal export
- Vault-driven scoring — the analyzer reads exact conditions from your
.mdstrategy files, not hardcoded generic signals. Confluence ≥ 3.5/4.0 earns TIER_1_A_PLUS; only those are trade candidates. - Vault-true fill model — a setup only counts as filled when price physically reaches the limit/OTE zone. No phantom fills, no inflated win rates.
- Debate gate — six analyst personas argue both sides; weak setups get rejected before they ever reach Discord.
- Local-first — Ollama handles the high-volume prescan so cloud LLM tokens are spent only on setups worth analyzing.
| Group | Symbols |
|---|---|
| Volatility | VOL10/25/50/75/100 + 1s variants |
| Jump | JUMP10/25/50/75/100 |
| Crash/Boom | CRASH500/1000, BOOM500/1000 |
| Other synthetics | STEP_INDEX, RDBULL, RDBEAR |
| Forex | EURUSD, GBPUSD, USDJPY, AUDUSD, GBPJPY |
| Metals/Indices | GOLD, SILVER, US30, NAS100, SPX500 |
- macOS or Linux, Python 3.10+, Node 18+
- TradingView Desktop — works with any TradingView tier + tradingview-mcp (CDP bridge)
- Claude Code — drives the scan protocol and analysis; works with Fable 5, Opus, and Sonnet models
- A Discord server you control (bot token)
- Ollama for the local prescan (optional but recommended)
- Deriv account + API token (only for price alerts / auto-trading; demo supported)
git clone https://github.com/marioxau/vault-trading-framework.git
cd vault-trading-framework
pip3 install -r requirements.txt
npm install
# 1. Configure — interactive, writes .env (never committed)
node setup.js
# 2. Point the framework at your TradingView MCP clone
echo 'VAULT_MCP_PATH=/path/to/tradingview-mcp' >> .env
# 3. Build your vault — copy the template and write your strategies
cp -R vault_template ~/TRADING_KNOWLEDGE_VAULT
$EDITOR ~/TRADING_KNOWLEDGE_VAULT/01_STRATEGIES/
# 4. Run a scan
python3 vault_orchestrator.py
# 5. (optional) daemons — price alerts, scheduler
pm2 start ecosystem.config.cjsSee SETUP.md for the full Discord bot + webhook walkthrough and
.env.example for every variable.
| Path | Purpose |
|---|---|
vault_orchestrator.py |
Scan engine — all pairs, multi-TF, markup, Discord |
vault_brain_analyzer.py |
Strategy-vault confluence scoring engine |
vault_debate_engine.py |
Bull/bear debate gate |
vault_price_alert.py |
Deriv WebSocket daemon — entry + management alerts |
vault_autotrader.py |
Deriv Multiplier auto-execution (--demo default) |
vault_track_record.py |
Outcome logging + vault-true evaluation |
vault_journal.py |
Obsidian/NotebookLM journal export |
ollama_prescan.py |
Local LLM prescan tiering |
src/ |
Discord bot, webhook receiver, market feeds (Node) |
vault_template/ |
Empty strategy vault — start here |
examples/video_pipeline/ |
Optional YouTube content automation |
MIT — see LICENSE.
Not affiliated with TradingView Inc. or Deriv. See the tradingview-mcp disclaimer for how chart access works.


