maddogfinance/dsh-trading
dsh-trading
Trading research workbench for DeepSeek Harness (dsh): typed market-data seam, deterministic indicators, interactive chart cards
Install
npx @deepseek-ai/dsh plugin --profile trading add @dsh-trading/bundleRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-trading)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from maddogfinance/dsh-trading, cleaned of badges and images.
dsh-trading
A trading research workbench built as plugins for DeepSeek Harness (dsh). No fork, no patched core — just a bundle you stack on the stock web or headless profile.
Status: early scaffold. dsh itself is in developer preview and moves fast; expect breaking changes on both sides.
The workbench
Under dsh web with the optional shell frame, the app becomes chart-first: a
persistent, live chart column on the left, the conversation on the right.
┌──┬────────────────────────────────────┬─────────────────────────┐
│ │ CC.BTCUSDT 1m 5m [15m] 1h 1d │ ⌄ Market Analyst │
│▸ │ ┌──────────────────────────────┐ │ │
│ │ │ ╱╲ ╱╲ │ │ MU is coiling under │
│s │ │ ╱╲ ╱ ╲__╱ ╲_ ── 118,400 │ │ 118.4k; the 15m ADX … │
│e │ │ ╱ ╲_╱ ╲ ── 116,900 │ │ │
│s │ │▁▂▃▁▂▄▃▁▂▃▅▂▁▃▂▁▄▃▁▂▃ │ │ ▸ annotate_chart │
│s │ └──────────────────────────────┘ │ ✎ 6 marks — Show │
│ │ ● live · 15m · 5:05:10 PM 📌 │ │
└──┴────────────────────────────────────┴─────────────────────────┘
rail the chart you drive the agent you talk to
The column is yours: type a symbol, pick a timeframe, and it fetches over a loopback channel without going through the model at all. It also follows the conversation — when the agent charts something, the column loads that instrument live rather than mirroring the agent's frozen snapshot. Touching the chart at all — a symbol, a timeframe — pins it, and a 📌 chip says so; from then on the agent's drawings arrive as a Show offer on a pill instead of taking the chart out from under you. Click the chip to start following again.
Drawings work the same way in both directions. annotate_chart levels, zones
and paths land on the live column; the prose half of the same analysis —
the level table, the bull/bear scenario cards — stays in chat, where reading
text belongs. And the loop closes: the panel publishes what it is showing back
to the host, so the agent can read your chart (get_chart_view, plus a
one-line context injection each turn) instead of asking you to screenshot it.
Demo
The column is pinned to Micron. The agent's six marks are for Bitcoin — a different instrument, so the predicate refuses the merge and nothing lands on the wrong chart. They are offered on a pill instead; one click loads that chart with its marks. The clock in the top-right corner is a live feed off a local OpenD, ticking through the whole clip.
▶ Watch the full 90-second demo with narration — the loop above is one beat of it. The full cut also walks the shell, the symbol box and the timeframe row, the agent drawing on the live column, and the per-turn context line that lets it read your chart without asking for a screenshot.
None of it is a mockup: the footage is 1920x1080 Playwright captures of a real session against a live Futu OpenD, and the chart keeps ticking through every shot.
The earlier v0.2 demo — chart cards in the chat feed
▶ 80-second demo with narration on YouTube
…
