Clarion regime check
Reports the current market regime color (GREEN / BLUE / ORANGE / RED / DANGER) and, if a risk-free rate is supplied, the equity hurdle rate.
When to use
User asks any of:
- "What's the market regime?"
- "Is the market risk-on or risk-off?"
- "What color is SPY/TLT today?"
- "What's the breadth signal?"
- "What hurdle rate should I use for new positions?"
How to run
python /home/workspace/clarion-intelligence-system/skills/clarion-regime-check/scripts/regime.py
If the user mentioned a 1Y T-bill yield, risk-free rate, or "rf rate", pass it (a percent value, no % sign):
python ... regime.py --rf-rate-pct 4.5
If the user wants the latest cached read without re-fetching from yfinance:
python ... regime.py --offline
Output
The script prints a structured markdown report:
- Heading — color and as-of date
- Rationale — a short paragraph stating which signal triggered the color
- Signals table — SPY 20d return, TLT 20d return, RSP-SPY 60d spread, SPY 252d drawdown
- Hurdle rate — only when
--rf-rate-pctis supplied - Footer — sources and timestamp
Pass the script output through to the user verbatim. Do not paraphrase the numbers or invent a new format.
If the user asks what a color means — e.g. "what does ORANGE imply?" or "how should I size positions in this regime?" — load references/regime-color-guide.md and answer from it.
On error
If the script prints REGIME_ERROR: ..., surface the error to the user. Common cases:
empty history for SPY/TLT/RSP— yfinance returned no rows. Network glitch or rate limit. Suggest waiting a minute and retrying, or running with--offlineif there's a recent cache.need at least 61 bars— the workspace is brand new and the cache hasn't backfilled enough history. Tell the user to wait for the first full fetch (the script will fetch ~5 years on first run).