CtrlK
BlogDocsLog inGet started
Tessl Logo

cot-contrarian-detector

Detect crowded speculative positioning in CFTC futures markets (COT report analysis) to find contrarian setups using Jason Shapiro's methodology. Screens large-speculator ("non-commercial") net positioning across 65 futures markets (indices, rates, FX, metals, energy, crypto) via the FMP Commitment of Traders API, computes a 3-year and 26-week COT Index per market, and classifies extremes as CROWDED_LONG / CROWDED_SHORT. Use when the user asks about COT report analysis, crowded positioning, "who is trapped", speculative positioning extremes, contrarian futures setups, or wants to run Jason Shapiro-style analysis. This skill automates crowding DETECTION only (step 1 of 5) — it does not generate trade signals by itself.

77

Quality

96%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

92%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, highly actionable skill body: executable commands, clearly sequenced phases with validation gates, and clean one-level-deep reference routing verified against the actual bundle. The only weakness is mild repetition of the not-a-trade-signal guardrail across three sections.

Suggestions

State the 'crowding alone is not a trade signal' guardrail once (Guardrails) and reference it from the Overview and Phase 3 with a one-line pointer instead of restating it fully each time.

Merge the duplicated speculator-vs-commercial rationale (Overview 'Core thesis' and Guardrails 'Fade speculators, not commercials') into a single location, leaving the other as a brief cross-reference.

DimensionReasoningScore

Conciseness

The body is largely lean and its domain content (Shapiro's thesis, COT Index thresholds, publication lag) is genuinely non-obvious, but the 'crowding alone is not a trade signal' guardrail is stated three times (Overview, Phase 3, Guardrails) and the fade-speculators-not-commercials rationale appears twice, so minor trimming is possible. Not 3: padding is minor and intentional, not unnecessary explanation of known concepts.

4 / 5

Actionability

Three copy-paste-ready command variants ('--core', '--symbols', full universe) with exact script paths, named output files with their schemas, and concrete per-step manual guidance (WebSearch for news failure, stop at swing extreme, exit at COT Index toward 50).

5 / 5

Workflow Clarity

Phases 1–3 are clearly sequenced with prerequisites validated upfront (FMP API key, Premium+ plan, Python 3.9+), a feedback mechanism for failed/insufficient-history markets (skipped list with reasons, 'never silently dropped'), and an explicit confirmation gate ('steps 2 and 3 must both confirm first'). The screening is read-only, so the destructive/batch cap does not apply.

5 / 5

Progressive Disclosure

The body is an overview with both referenced files (references/shapiro-methodology.md, references/cot-index-calculation.md) existing as real one-level-deep files and no further nesting, plus a 'When to Load References' section that explicitly says references are not needed for regular execution.

5 / 5

Total

19

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: concrete third-person capabilities, comprehensive natural-language triggers, an explicit when-to-use clause, and a scope boundary that prevents over-triggering. It is dense but every clause is load-bearing.

DimensionReasoningScore

Specificity

Lists multiple concrete actions in third person — 'Screens large-speculator (non-commercial) net positioning across 65 futures markets', 'computes a 3-year and 26-week COT Index', 'classifies extremes as CROWDED_LONG / CROWDED_SHORT' via the FMP API — with comprehensive coverage and no vague filler.

5 / 5

Completeness

Explicitly answers both what ('Detect crowded speculative positioning… Screens… computes… classifies…') and when ('Use when the user asks about…'), and adds a scope boundary ('automates crowding DETECTION only (step 1 of 5) — it does not generate trade signals by itself').

5 / 5

Trigger Term Quality

The 'Use when' clause covers the natural phrases users would actually say — 'COT report analysis', 'crowded positioning', 'who is trapped', 'speculative positioning extremes', 'contrarian futures setups', 'Jason Shapiro-style analysis' — including synonyms and both the CFTC and COT abbreviations.

5 / 5

Distinctiveness Conflict Risk

A clear niche — Shapiro-methodology COT contrarian screening on CFTC futures positioning — with distinct trigger terms that would not plausibly fire a generic market-analysis or equities skill.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
tradermonty/claude-trading-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.