PolStock is a short-term trading signal assistant for Indonesian stocks.
Its job is to help answer:
Which tickers are bullish right now, backed by strong participation, and tradable over the next 1β14 days?
The project is now being refocused away from a news-first political-impact dashboard into a short-swing signal engine where market structure and participation lead, and news/policy context acts as an optional conviction boost.
PolStock v1 should prioritize:
- actionable long setups over broad event summaries
- 1d / 3d / 7d / 14d holding windows
- bullish continuation or rebound setups over generic sentiment labels
- participation-backed signals using volume and traded-value proxies
- clear trade plans: entry, stop-loss, take-profit, invalidation, reasons
-
breakout continuation
- price pushes through / above resistance
- bullish momentum confirmation
- participation expansion required
-
support rebound
- price near support
- oversold-to-recovery behavior
- momentum improving
-
squeeze breakout watch
- volatility compression / Bollinger squeeze
- bullish pressure building
- upgraded to BUY only when trigger + participation confirm
-
news-accelerated breakout
- a valid bullish technical setup gets extra conviction from relevant news/policy context
- news alone must not create a BUY signal
BUYβ bullish setup complete, participation confirmed, risk-definedWATCHβ setup forming, but trigger or participation is incompleteIGNOREβ no actionable edge
1dβ urgent breakout / ignition setup3dβ fresh continuation setup7dβ standard short swing14dβ slower but still actionable bullish development
These are intentionally out of scope for the first usable version:
- production-grade short-selling / bearish strategy optimization
- news-only BUY signals without technical confirmation
- ranking stocks primarily by political relevance instead of trade actionability
- pretending transaction-count data exists when the data source only supports volume/value proxies
PolStock still includes:
- on-demand refresh with
/api/refresh - Indonesian market/news ingestion
- stock quote + technical indicator fetching
- event/news analysis and policy-context enrichment
- signal history, snapshots, backtest infrastructure, and dashboard/bot surfaces
But the primary decision layer is being shifted toward:
Bullish market structure
+ momentum confirmation
+ participation expansion
+ trigger quality
+ optional event/news boost
= short-term trade signal
cd /opt/hermes/politics_stock_mapper
python3 app.pyThen open http://127.0.0.1/.
Core endpoints currently in the backend include:
GET /β dashboardGET /healthzβ health checkGET /api/dashboardβ consolidated dashboard payloadPOST /api/refreshβ fetch + analyze + render-ready JSONGET /api/signals/daily-summaryβ grouped daily signal summaryGET /api/signals/ticker/{ticker}β ticker-level signal explanationGET /api/signals/historyβ persisted signal historyGET /api/backtestβ backtest metricsGET /api/watchlist/PUT /api/watchlistβ watchlist state
docs/short-term-signal-spec.mdβ current product spec for the short-term signal pivotdocs/SPEC.mdβ broader legacy/refocus analysis and implementation inventorydocs/ARCHITECTURE.mdβ current system architecture overview (will be updated further as the pivot lands)
- The app uses live public data and caches refresh results for a short TTL.
- If transaction-count data is unavailable from the upstream source, v1 uses volume and traded-value proxies and labels them honestly.
- Relevant news/policy context still matters, but it should boost a valid setup rather than create one on its own.
- The project should not claim a setup is βactionableβ unless the signal has clear entry, risk, and holding-window logic.