New to Claude Skills? Learn how to install them →

tradermonty on GitHub

Exposure Coach

Free

Optimize your equity capital commitment with market insights.

Get this skill

Free · Opens the source repo

What Exposure Coach does

Exposure Coach is designed for traders who need a consolidated view of market conditions before making investment decisions. By integrating outputs from various analytical skills, it provides a comprehensive Market Posture summary that helps users determine how much capital to allocate to equities. This skill is particularly useful for solo traders who seek to navigate complex market signals and make informed decisions based on a unified analysis.

The skill synthesizes data from multiple sources, including market-breadth analysis, macro regime detection, and institutional flow tracking. By doing so, it generates actionable insights that inform capital commitment strategies. The resulting Market Posture summary includes key metrics such as exposure ceiling, bias direction, and participation assessment, along with a clear recommendation on whether to enter new positions or prioritize cash.

Using Exposure Coach involves a straightforward workflow that begins with gathering outputs from upstream skills. Users must ensure that the necessary JSON files are available, as these inputs are critical for accurate scoring. The skill then processes this data through a Python script, generating a report that outlines the market's current posture and provides a confidence level based on the completeness of the data.

This skill is ideal for traders looking to make timely decisions in fast-moving markets. It is particularly beneficial at the start of trading weeks or after significant market events, allowing users to recalibrate their exposure based on the latest information. However, traders should be aware of the skill's reliance on upstream data; incomplete inputs can affect the confidence of the recommendations provided.

When to use it

Use this skill before starting new stock positions or when reassessing portfolio exposure after market events.

When not to use it

Avoid using Exposure Coach if you lack the required upstream data inputs, as missing information can lead to reduced confidence in the recommendations.

What you can build with it

Weekly Portfolio Calibration

Use Exposure Coach at the start of each trading week to assess and adjust your portfolio exposure based on the latest market signals.

Market Reaction Assessment

After significant market events, run Exposure Coach to quickly reassess your capital commitment strategy in light of new information.

Conflict Resolution in Signals

When facing conflicting market signals, utilize Exposure Coach to obtain a unified recommendation on how to proceed with your investments.

How to install Exposure Coach

View source

1. Install with the skills CLI

npx skills add tradermonty/claude-trading-skills/exposure-coach --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by tradermonty

Exposure Coach

Overview

Exposure Coach synthesizes outputs from market-breadth-analyzer, uptrend-analyzer, macro-regime-detector, market-top-detector, ftd-detector, theme-detector, sector-analyst, and institutional-flow-tracker into a unified control-plane decision. The skill answers the solo trader's core question: "How much capital should I commit to equities right now?" before any individual stock analysis begins.

When to Use

  • Before initiating any new stock positions to determine appropriate capital commitment
  • At the start of each trading week to calibrate portfolio exposure
  • When multiple market signals conflict and a unified posture is needed
  • After significant macro or market events to reassess exposure ceiling
  • When transitioning between market regimes (broadening, concentration, contraction)

Prerequisites

  • Python 3.9+
  • FMP API key (set FMP_API_KEY environment variable) for institutional-flow-tracker data
  • Input JSON files from upstream skills (see Workflow Step 1)
  • Standard library + argparse, json, datetime

Workflow

Step 1: Gather Upstream Skill Outputs

Collect the most recent JSON outputs from integrated skills. Each file provides a specific signal dimension:

SkillOutput File PatternSignal Provided
market-breadth-analyzerbreadth_*.jsonAdvance/decline ratios, new highs/lows
uptrend-analyzeruptrend_*.jsonUptrend participation percentage
macro-regime-detectorregime_*.jsonCurrent regime (Concentration, Broadening, etc.)
market-top-detectortop_risk_*.jsonDistribution day count, top probability score
ftd-detectorftd_*.jsonFollow-Through Day quality (market bottom confirmation)
theme-detectortheme_detector_*.json or theme_*.jsonActive investment themes and rotation
sector-analystsector_*.jsonSector performance rankings
institutional-flow-trackerinstitutional_*.jsonNet institutional buying/selling

Step 2: Run Exposure Scoring Engine

Execute the exposure scoring script with paths to upstream outputs:

python3 skills/exposure-coach/scripts/calculate_exposure.py \
  --breadth reports/breadth_latest.json \
  --uptrend reports/uptrend_latest.json \
  --regime reports/regime_latest.json \
  --top-risk reports/top_risk_latest.json \
  --ftd reports/ftd_latest.json \
  --theme reports/theme_latest.json \
  --sector reports/sector_latest.json \
  --institutional reports/institutional_latest.json \
  --output-dir reports/

The script accepts partial inputs; missing files reduce confidence but do not block execution.

Canonical macro-regime reports must include nested regime.confidence and composite.data_quality with valid integer component counts. Missing or malformed availability metadata, very_low confidence, and zero usable components are treated as missing critical input. They do not contribute a regime score or bias, and the normal missing-input haircut and confidence cap apply. Never override this degradation by manually copying the report's regime label into the exposure decision.

Verification pitfall: After each run, inspect the generated JSON fields inputs_provided and inputs_missing. If a file you passed on the CLI still appears in inputs_missing (for example a theme-detector JSON that the exposure engine did not recognize), report the affected dimension as degraded and keep confidence capped; do not assume the supplied input was incorporated just because the CLI argument was present.

Theme-detector ingestion caveat: The theme detector commonly emits theme_detector_YYYY-MM-DD_HHMMSS.json with a themes object. If that file is not recognized by calculate_exposure.py and theme remains in inputs_missing, do not fold theme strength into the exposure ceiling manually. Instead, keep the Exposure Coach confidence capped, state that the theme dimension was not incorporated, and summarize theme/sector findings separately in the broader trading brief.

Step 3: Interpret the Market Posture Summary

Review the generated posture report containing:

  1. Exposure Ceiling -- Maximum recommended equity allocation (0-100%)
  2. Bias Direction -- Growth vs Value tilt based on regime and flow
  3. Participation Assessment -- Broad (healthy) vs Narrow (fragile) market
  4. Action Recommendation -- NEW_ENTRY_ALLOWED, REDUCE_ONLY, or CASH_PRIORITY
  5. Confidence Level -- HIGH, MEDIUM, or LOW based on input completeness

Step 4: Apply Exposure Guidance

Map the posture recommendation to portfolio actions:

RecommendationAction
NEW_ENTRY_ALLOWEDProceed with stock-level analysis and new positions
REDUCE_ONLYNo new entries; trim existing positions on strength
CASH_PRIORITYRaise cash aggressively; avoid all new commitments

Output Format

JSON Report

{
  "schema_version": "1.0",
  "generated_at": "2026-03-16T07:00:00Z",
  "exposure_ceiling_pct": 70,
  "bias": "GROWTH",
  "participation": "BROAD",
  "recommendation": "NEW_ENTRY_ALLOWED",
  "confidence": "HIGH",
  "component_scores": {
    "breadth_score": 65,
    "uptrend_score": 72,
    "regime_score": 80,
    "top_risk_score": 25,
    "ftd_score": 10,
    "theme_score": 68,
    "sector_score": 70,
    "institutional_score": 75
  },
  "inputs_provided": ["breadth", "uptrend", "regime", "top_risk"],
  "inputs_missing": ["ftd", "theme", "sector", "institutional"],
  "rationale": "Broad participation with low top risk supports elevated exposure."
}

Markdown Report

The markdown report provides a one-page summary suitable for quick review:

# Market Posture Summary
**Date:** 2026-03-16 | **Confidence:** HIGH

## Exposure Ceiling: 70%

| Dimension | Score | Status |
|-----------|-------|--------|
| Breadth | 65 | Healthy |
| Uptrend Participation | 72% | Broad |
| Regime | Broadening | Favorable |
| Top Risk | 25 | Low |

## Recommendation: NEW_ENTRY_ALLOWED

**Bias:** Growth > Value
**Participation:** Broad (healthy internals)

### Rationale
Broad participation with low distribution day count supports elevated equity exposure.
New positions allowed within the 70% ceiling.

Reports are saved to reports/ with filenames exposure_posture_YYYY-MM-DD_HHMMSS.{json,md}.

Resources

  • scripts/calculate_exposure.py -- Main orchestrator that scores and synthesizes inputs
  • references/exposure_framework.md -- Scoring rules and threshold definitions
  • references/regime_exposure_map.md -- Regime-to-exposure ceiling mappings

Key Principles

  1. Safety First -- Default to lower exposure when inputs are incomplete or conflicting
  2. Regime Alignment -- Let macro regime set the baseline; breadth adjusts within bounds
  3. Actionable Output -- Always produce a clear recommendation, not just data aggregation

Frequently asked questions about Exposure Coach

Similar skills