CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

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.

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

86%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 skill body: executable commands for every invocation mode, a clearly sequenced three-phase workflow with data-quality checkpoints, and textbook progressive disclosure into two real, one-level-deep reference files. The main improvements are removing verbatim caveat repetition across Overview/Do-NOT-use/Guardrails and adding an explicit output-verification step before presenting the report.

Suggestions

Consolidate the repeated 'crowding is not a trade signal' warning: state it once in Guardrails and reference it from the Overview/Do-NOT-use sections with a pointer instead of restating it three more times — same for the 'fade speculators, not commercials' rationale duplicated between Overview and Guardrails.

Add an explicit verification checkpoint at the end of Phase 1 (e.g., 'Confirm reports/cot_crowding_<date>.json and .md exist and the run_context.data_date matches the latest Friday release; check the skipped list before presenting') to close the workflow_clarity gap.

In Phase 3, replace the pointer to a separate 'position-sizer' skill with either a concrete inline sizing rule (e.g., fixed fractional risk per trade) or a note that the skill may not be installed, so the guidance stays actionable standalone.

DimensionReasoningScore

Conciseness

The body is mostly lean — methodology specifics (Shapiro's five steps, the 3-day publication lag, the 156w/26w windows) are domain knowledge Claude does not already have and earn their tokens, and code/command blocks are minimal. It sits at 4 rather than 5 because key caveats are repeated nearly verbatim across sections: 'crowding is not a trade signal' appears in the Overview, 'Do NOT use when', Phase 3, and Guardrails, and 'fade speculators, not commercials' appears in both the Overview and Guardrails — one of each could be trimmed.

4 / 5

Actionability

Phase 1 gives copy-paste-ready commands covering the common cases ("--core", "--symbols \"ES,GC,CL\"", and full-universe invocations with --output-dir), prerequisites name the exact env var and plan tier, and the Output section specifies the exact artifact paths and their contents. This matches the 'fully executable; copy-paste ready; covers common cases' anchor.

5 / 5

Workflow Clarity

Phases 1-3 are clearly sequenced and include real checkpoints: insufficient-history markets surface in a 'skipped' list with reasons rather than being silently dropped, the Cadence section flags the 3-9 day data lag, and the guardrail gates any entry recommendation on steps 2-3 confirming. It falls short of the 5 anchor because there is no explicit verify-the-output step before presenting (e.g., confirm the report file was generated and the as-of date is the expected Friday release).

4 / 5

Progressive Disclosure

SKILL.md is a genuine overview with details split into two references (shapiro-methodology.md, cot-index-calculation.md), both verified to exist and only one level deep; each is described with its contents and when to load it, and the 'When to Load References' section makes navigation explicit while noting regular execution needs none. This matches the 5 anchor's clear overview with well-signaled one-level-deep references.

5 / 5

Total

18

/

20

Passed

Description

92%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.

A strong description: concrete, third-person capability statements paired with an explicit 'Use when...' clause containing natural trigger phrases in both concept and methodology terms. The only soft spot is keyword coverage that stops just short of comprehensive (no spelled-out 'commitment of traders' or CFTC-report synonym variants).

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'Screens large-speculator ("non-commercial") net positioning across 65 futures markets', 'computes a 3-year and 26-week COT Index per market', and 'classifies extremes as CROWDED_LONG / CROWDED_SHORT' — with comprehensive coverage and consistent third-person voice. This matches the anchor for multiple specific concrete actions; the only level below (4) would require minor coverage gaps, which are not present.

5 / 5

Completeness

It explicitly answers both 'what' (detect/screen/compute/classify, with named tooling) and 'when' ('Use when the user asks about COT report analysis, crowded positioning, "who is trapped"...') with concrete trigger phrases, and adds a scope boundary ('automates crowding DETECTION only (step 1 of 5)'). This directly matches the 5 anchor; the 4 anchor's 'when could be more explicit' does not apply.

5 / 5

Trigger Term Quality

Natural trigger phrases like 'COT report analysis', 'crowded positioning', 'who is trapped', 'speculative positioning extremes', and 'Jason Shapiro-style analysis' give good keyword coverage. It falls short of the 5 anchor because a few natural synonyms users might say are missing (e.g., 'commitment of traders' spelled out, 'CFTC positioning', 'hedgers report'), but it is clearly above the 3 anchor's 'missing common variations'.

4 / 5

Distinctiveness Conflict Risk

A clear niche (COT contrarian crowding detection) with distinct triggers — 'COT report', 'who is trapped', 'Jason Shapiro-style' — that are unlikely to fire for unrelated skills, and the 'Do NOT use when' scope note further reduces overlap. It fits the 'clear niche with distinct triggers; minimal conflict risk' anchor.

5 / 5

Total

19

/

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

Path

skills/cot-contrarian-detector/SKILL.md

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.