CtrlK
BlogDocsLog inGet started
Tessl Logo

backtesting-trading-strategies

Backtest crypto and traditional trading strategies against historical data. Calculates performance metrics (Sharpe, Sortino, max drawdown), generates equity curves, and optimizes strategy parameters. Use when user wants to test a trading strategy, validate signals, or compare approaches. Trigger with phrases like "backtest strategy", "test trading strategy", "historical performance", "simulate trades", "optimize parameters", or "validate signals".

72

Quality

67%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./plugins/crypto/trading-strategy-backtester/skills/backtesting-trading-strategies/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

100%

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

This is an excellent skill description that clearly defines its capabilities with specific financial metrics and actions, provides explicit trigger guidance with natural user phrases, and occupies a distinct niche in trading strategy backtesting. It follows best practices by using third person voice, listing concrete actions, and including both 'Use when' and 'Trigger with' clauses.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: backtesting strategies, calculating performance metrics (Sharpe, Sortino, max drawdown), generating equity curves, and optimizing strategy parameters. These are precise, actionable capabilities.

3 / 3

Completeness

Clearly answers both 'what' (backtest strategies, calculate metrics, generate equity curves, optimize parameters) and 'when' (explicit 'Use when' clause plus a 'Trigger with phrases like' section listing specific trigger phrases).

3 / 3

Trigger Term Quality

Excellent coverage of natural trigger terms including 'backtest strategy', 'test trading strategy', 'historical performance', 'simulate trades', 'optimize parameters', 'validate signals'. Also includes domain terms like 'crypto', 'trading strategies', 'Sharpe', 'Sortino', 'max drawdown', and 'equity curves' that users would naturally mention.

3 / 3

Distinctiveness Conflict Risk

Highly distinctive niche combining trading strategy backtesting, specific financial metrics, and historical simulation. The domain-specific terminology (Sharpe, Sortino, max drawdown, equity curves) and explicit trigger phrases make it very unlikely to conflict with other skills.

3 / 3

Total

12

/

12

Passed

Implementation

35%

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

The skill provides a well-structured overview of a backtesting framework with clear CLI commands and good organizational intent, but suffers from significant verbosity by explaining financial concepts Claude already knows. The referenced scripts and files don't exist in the bundle, undermining actual actionability, and the workflow lacks validation checkpoints critical for financial operations. There are also nonsensical inline comments ('# 10000: 10 seconds in ms', '# HTTP 200 OK') that appear to be artifacts.

Suggestions

Remove the metric description tables (Performance, Risk, Trade Statistics) — Claude already knows what Sharpe ratio, max drawdown, VaR, etc. are. Keep only the example output block if needed.

Add validation checkpoints to the workflow: verify data was fetched correctly (row count, date range), sanity-check backtest results (e.g., ensure trade count > 0, check for look-ahead bias warnings), and validate optimization output.

Fix the nonsensical inline comments ('# 10000: 10 seconds in ms' and '# HTTP 200 OK') which appear to be hallucinated artifacts and add confusion.

Provide the actual bundle files (scripts, references) or remove references to non-existent files to avoid misleading Claude about available resources.

DimensionReasoningScore

Conciseness

The content is excessively verbose. The large metric description tables (Performance Metrics, Risk Metrics, Trade Statistics) explain concepts Claude already knows (what Sharpe ratio, max drawdown, VaR, win rate, etc. are). The example output block, while illustrative, adds significant length. The inline comments like '# 10000: 10 seconds in ms' and '# HTTP 200 OK' appear to be hallucinated/nonsensical artifacts. The Supported Strategies table descriptions are also things Claude would already know.

1 / 3

Actionability

The skill provides concrete CLI commands with specific flags and parameters, which is good. However, all commands reference scripts (backtest.py, fetch_data.py, optimize.py) that don't exist in the bundle, making nothing actually executable. The commands are copy-paste ready in form but not in practice since no bundle files are provided.

2 / 3

Workflow Clarity

The 4-step workflow (fetch → backtest → analyze → optimize) is clearly sequenced and logical. However, there are no validation checkpoints — no guidance on what to do if data fetching fails, if a backtest produces suspicious results, or how to verify output integrity. For a financial backtesting workflow where incorrect results could lead to real capital loss, the absence of validation/verification steps is a significant gap.

2 / 3

Progressive Disclosure

The skill references external files (errors.md, examples.md, config/settings.yaml, multiple scripts) which is good structure, but none of these files exist in the bundle. The main SKILL.md also includes substantial inline content (metric tables, strategy tables, example output) that could be in reference files, making the overview heavier than necessary.

2 / 3

Total

7

/

12

Passed

Validation

81%

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

Validation9 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

9

/

11

Passed

Repository
jeremylongshore/claude-code-plugins-plus-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.