The dashboard is already running at http://localhost:8001.
Five steps from zero to your first audit. Optional tracks for data upgrades,
AI thesis, and broker connection at the end.
Open portfolio.txt in the install folder. One ticker per line.
Comments with # are fine — use them to jot your thesis so future-you
knows why past-you bought.
The dashboard is auto-refreshing every few minutes. Open
http://localhost:8001 in any browser.
Within 30 seconds of saving portfolio.txt, each ticker shows up as a card with:
Every card is the output of 11 technical pillars + 13 risk pillars running against that ticker. Don't memorize the acronyms — hover any label and the tooltip explains it. Or jump to the full glossary.
Swing Deck uses a cascade of data providers. If a tier fails, it falls through to the next one automatically. You can run 100% free on Tier 3 (yfinance), add free API keys for Tiers 1–2, or subscribe to a paid feed for serious real-time.
Pick whichever combination fits your budget and how often you trade:
| Provider | Cost | Pros | Cons |
|---|---|---|---|
|
yfinance
T3 · Fallback
|
Free |
✓ Zero setup · works out of the box ✓ No API key ✓ Historical data back to 1970s |
✗ Yahoo rate-limits aggressively ✗ 15-min delayed quotes ✗ Breaks periodically when Yahoo changes HTML |
|
Stooq
T4 · Integrity
|
Free |
✓ Zero setup · no key needed ✓ Cross-checks against yfinance (price-drift monitor) |
✗ Slow from US IPs (Warsaw edge) ✗ Daily bars only (no intraday) ✗ No indices / no futures |
|
Finnhub
T2 · Primary
|
Free · 60/min |
✓ Real-time US quotes ✓ Free tier covers most hobby use ✓ Company news + basic fundamentals |
✗ 60 req/min cap (fine for <30 tickers) ✗ No options data on free tier ✗ Requires email signup for API key |
|
Alpha Vantage
T2 · Secondary
|
Free · 25/day |
✓ Fundamentals + earnings data ✓ Technical indicators pre-computed ✓ Good historical depth |
✗ Only 25 requests/day on free (very low) ✗ Data not truly real-time ✗ Paid tier ($50+/mo) for anything useful |
|
MarketAux
News/sentiment
|
Free · 100/day |
✓ Financial news with sentiment scoring ✓ Ticker-specific filtering ✓ Good coverage of earnings catalysts |
✗ 100 req/day cap ✗ Sometimes lags breaking news by ~30 min ✗ Sentiment scoring is basic |
|
Tradier
T1 · Best
|
Free dev account |
✓ Full options chains + Greeks (free) ✓ Sub-second quote latency ✓ No volume cap ✓ Works without opening a Tradier brokerage |
✗ Dev account requires a name + email ✗ Paid tier for level-2 / imbalance data ✗ Not all non-US symbols |
|
Polygon
Premium only
|
$29/mo+ |
✓ Institutional-grade real-time ✓ Tick-by-tick data ✓ Pre/post-market coverage |
✗ $29/mo starter; $200+/mo for full coverage ✗ Overkill for < 50 tickers ✗ Auto-enabled on Swing Deck Pro/Premium |
Open the dashboard → Settings (⚙) → ⚙ Setup tab → paste keys into the matching fields → click Save & Test. Green ✓ next to each key means it's working.
Key links:
AI thesis generates a plain-English narrative for each position: why this ticker scored what it scored, what to watch for, and what would change the picture. It's BYOK — bring your own key — which means the cost is whatever you'd pay your AI provider directly. We never charge a premium on top.
| Provider | Cost | Best for |
|---|---|---|
Anthropic Claude |
~$0.003/thesis |
Sharpest framework-style reasoning. Our recommended default. |
OpenAI GPT-4o |
~$0.004/thesis |
Strong general synthesis. Best if you already have an OpenAI key. |
Ollama (local) |
Free |
Fully offline · runs on your hardware · llama-3.1 70b recommended. |
With no broker connected, Swing Deck is a powerful read-only analysis tool. Connecting a broker unlocks Raise-Stop automation — the dashboard previews and places stop-loss updates directly on your account, guarded by a defense-in-depth safety stack.
| Broker | Status | What it does |
|---|---|---|
E*TRADE |
✓ Live | OAuth 1.0a · full positions read · raise-stop writes · options chains |
Tradier |
✓ Live | Bearer token · positions read · raise-stop writes · best options data |
Schwab, Fidelity, Robinhood, Vanguard |
CSV import | No API · drag-drop position CSV once a day to sync |
BROKER_MODE=dryrun by default. Every "place" call is short-circuited server-side — only the preview hits E*TRADE. Run dryrun for a few sessions, review the audit log, then flip to live only when the readiness checklist is all green.
Full broker setup walkthrough: docs/broker-setup.html
| Symptom | Fix |
|---|---|
| Dashboard won't load | Check http://localhost:8001. If the page says "can't connect," the control server isn't running. Re-launch Swing Deck. |
| All scores blank / "—" | Audit hasn't completed its first cycle. Wait 30s. If still blank, check audit_dashboard.log for errors. Usually a data-provider rate limit. |
| "Audit data is XXXs old" error | The audit cycle is taking longer than usual. Check if Stooq/yfinance are being rate-limited. Will self-heal within 2-3 cycles. |
| Broker chip stays red | Token expired or account ID mismatched. Dashboard → Settings → Brokers → re-authorize or update the account ID. |
| macOS "can't be opened" | Right-click the app → Open → Open. Unsigned during beta. After first launch, normal double-click works. |
| Windows SmartScreen blocks installer | Click "More info" → "Run anyway". Unsigned during beta. SmartScreen builds reputation after a few hundred downloads. |
| Any acronym confuses me | Hover the term in the dashboard for an inline tooltip, or open the full glossary. |
Deeper reference:
Can't find the answer? Email support@swing-deck.com —
usually a same-day reply. Include your audit_dashboard.log if you're hitting an error.