Technical Analyst
tradermonty/claude-trading-skills
This skill should be used when analyzing weekly price charts for stocks, stock indices, cryptocurrencies, or forex pairs.
Example driver: drive a time-based dollar-cost-averaging hypothesis into a recorded session.
$ npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install krakenfx/kraken-cli recipe-playground-dca --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/krakenfx/kraken-cli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/recipe-playground-dca .claude/skills/recipe-playground-dca && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "recipe-playground-dca" agent skill from https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dca into .claude/skills/recipe-playground-dca/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recipe-playground-dca", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dcaType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install krakenfx/kraken-cli recipe-playground-dca --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/krakenfx/kraken-cli.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/recipe-playground-dca .agents/skills/recipe-playground-dca && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "recipe-playground-dca" agent skill from https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dca into .agents/skills/recipe-playground-dca/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recipe-playground-dca", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install krakenfx/kraken-cli recipe-playground-dca --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/krakenfx/kraken-cli.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/recipe-playground-dca .cursor/skills/recipe-playground-dca && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "recipe-playground-dca" agent skill from https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dca into .cursor/skills/recipe-playground-dca/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recipe-playground-dca", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/krakenfx/kraken-cli.git --path skills/recipe-playground-dca--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install krakenfx/kraken-cli recipe-playground-dca --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/krakenfx/kraken-cli.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/recipe-playground-dca .gemini/skills/recipe-playground-dca && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "recipe-playground-dca" agent skill from https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dca into .gemini/skills/recipe-playground-dca/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recipe-playground-dca", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install krakenfx/kraken-cli recipe-playground-dcaInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/krakenfx/kraken-cli.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/recipe-playground-dca .github/skills/recipe-playground-dca && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "recipe-playground-dca" agent skill from https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dca into .github/skills/recipe-playground-dca/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recipe-playground-dca", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install krakenfx/kraken-cli recipe-playground-dca --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/krakenfx/kraken-cli.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/recipe-playground-dca .opencode/skills/recipe-playground-dca && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "recipe-playground-dca" agent skill from https://github.com/krakenfx/kraken-cli/tree/main/skills/recipe-playground-dca into .opencode/skills/recipe-playground-dca/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recipe-playground-dca", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
recipe-playground-dcaExample driver: drive a time-based dollar-cost-averaging hypothesis into a recorded session.
Recipe Playground Dca is an agent skill from krakenfx/kraken-cli. Example driver: drive a time-based dollar-cost-averaging hypothesis into a recorded session.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Business, Finance & HR. The repository describes itself as: The first AI-native CLI for trading crypto, stocks, forex, and derivatives. The licence is MIT.
Read from SKILL.md and the folder at commit aa56e59. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
jqFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Recipe Playground Dca loads about 2.2k tokens when it runs. Until then it costs about 29 tokens; SKILL.md has 896 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from krakenfx/kraken-cli at commit aa56e59, republished under its MIT licence (© krakenfx). 896 words, ~2,206 tokens.
.claude/skills/recipe-playground-dca/SKILL.md (or your agent's skills folder).PREREQUISITE: Load
kraken-playgroundandkraken-dca-strategyto run this recipe. This recipe is an example, not a boundary. Adapt the steps to your hypothesis, or write your own driver (seekraken-playground→ Driving Your Own Hypothesis).
Test a dollar-cost-averaging hypothesis on live prices with no real money. Buy on a fixed cadence, optionally only when price dips below a short-term average, and record every buy, skip, and average cost into one session for later replay and P&L.
Use this skill for:
This recipe records a session inside a paper workspace. It never places a live order. Paper results may overstate live performance: fees and slippage are simulated and there are no partial fills (see kraken-paper-strategy).
Pacing is external. /loop owns the schedule and fires one round per interval (see kraken-playground → Pacing). One decision per interval, paced from outside, so the session is interventional over the window (see kraken-playground → Running over a Window).
Every number that gates a buy or skip goes in --strategy-params, not only in prose reasons. That is what makes two sessions comparable knob-for-knob:
dollars_per_buy: quote currency deployed per qualifying roundrounds: session length in decision roundsinterval_s: spacing between rounds; set the /loop interval to this valuedip_threshold_pct (dip-gated variant): only buy when price is at least this far below the short-term average; omit for unconditional time-based DCANatural language:
Dollar-cost-average into Bitcoin over 10 hours. Buy $100 every hour if the
price dips more than 0.10% below the 1-hour SMA. Record all buys, skips, and
average cost. At the end, show P&L.Work inside a paper workspace (create one once: kraken workspace create dca --capital 10000 --mode paper), then:
export KRAKEN_WORKSPACE=dca
kraken session start \
--symbols BTC/USD --channels ticker,trade --to duckdb,jsonl \
--label dca-btc-$(date +%Y%m%d-%H%M%S) \
--strategy recipe-playground-dca \
--strategy-params '{"dollars_per_buy":100,"rounds":10,"interval_s":3600,"dip_threshold_pct":-0.10}' \
-o json 2>/dev/null &
# The session_started stdout line carries the id: {"type":"session_started","session":"s<n>",...}Print the session id to the user right after starting, and again in the final report — it is the handle for resuming the /loop, checking kraken session show, and locating the artifacts.
/loop owns the pacing. Set its interval to interval_s and it fires each round on cadence (late under jitter, never early). Parse the interval from the user's request: "every hour" to 1h, "every 30 minutes" to 30m, "twice a day" to 12h.
The scheduler floor is 60 seconds (/loop, cron, and ScheduleWakeup all clamp to a one-minute minimum). interval_s must be >= 60; a sub-minute cadence is impossible — clamp to 60 and tell the user if they ask for less.
/loop 1h "Run one DCA round for session s<n> in workspace dca per recipe-playground-dca"Do not re-add an elapsed-time gate inside the round. /loop already enforces the spacing.
On each firing: stop if the session is complete, otherwise READ, THINK, ACT.
Check the last completed round against rounds. The round cursor lives in the session's typed state cell (kraken session state get/set) — not in the decision log, whose reasons stay free narrative (keep writing "round N" in them for the post-mortem story, but nothing parses it). Reading the cursor is O(1) however long the session runs, and a typo'd field refuses at set instead of silently steering the loop:
ROUNDS=10 # the `rounds` you set in --strategy-params
SESSION_ID=s1 # from the session_started line
# The typed cursor is the loop's memory: unset reads as round 0.
LAST_ROUND=$(kraken session state get --session "$SESSION_ID" -o json 2>/dev/null \
| jq '.cursor.round // 0')
if [ "${LAST_ROUND:-0}" -ge "$ROUNDS" ]; then
kraken session stop -o json 2>/dev/null
exit 0
fi
ROUND=$((LAST_ROUND + 1))
# CLAIM the round BEFORE acting: a crash after the claim skips one buy
# (harmless); the reverse order would redo the round and buy twice. `set`
# replaces the whole cursor — carry every field your strategy tracks.
kraken session state set --round "$ROUND" -o json 2>/dev/nullREAD: price and the short-term average. Mind the response shapes: the ticker
is keyed by Kraken's INTERNAL pair name (XXBTZUSD, not BTC/USD), so read
the price through the value (.[].last_price). The ohlc rows live under
.candles; read that array directly — the sibling last cursor would poison
naive iteration of the object.
PRICE=$(kraken ticker BTCUSD -o json 2>/dev/null | jq -r '.[].last_price')
# True 1h SMA: the last twelve 5-minute closes (NOT --interval 60, whose
# full-window mean is a multi-day average).
SMA=$(kraken ohlc BTCUSD --interval 5 -o json 2>/dev/null | jq '[.candles[-12:][].close] | add / length')Fail loud, never fabricate: if either value comes back empty, the round must not guess — note an alert and end the firing, or the decision log fills with plausible-looking false reasons:
if [ -z "$PRICE" ] || [ -z "$SMA" ]; then
kraken session note --kind alert --symbol BTC/USD \
--reason "round $ROUND aborted: READ failed (price='$PRICE' sma='$SMA')" -o json 2>/dev/null
exit 0
fiCompute in jq/bc, do not eyeball it.
THINK:
vs_sma = (price - sma) / sma * 100vs_sma <= dip_threshold_pct, buy dollars_per_buy / price units. Otherwise skip.ACT (buy):
kraken order buy BTC/USD <volume> --type market \
--reason "DCA round N: BTC/USD at <price> is <vs_sma>% below 1h SMA <sma> (threshold <dip>%); deploying \$<dollars_per_buy>" \
-o json 2>/dev/nullInside the paper workspace the order fills on the paper account, and the reason lands in the active session's decision log.
ACT (skip):
kraken session note --kind skip --symbol BTC/USD \
--reason "skip round N: BTC/USD at <price> is <vs_sma>% from 1h SMA (threshold <dip>%)" \
-o json 2>/dev/nullThe round is already claimed, so nothing to write after acting: buy or skip, log the reason, and exit the firing.
Always pass the numeric reason so the decision log carries the "why" behind every round.
kraken session stop -o json 2>/dev/null
kraken session show -o json 2>/dev/null | jq '.summary'
kraken explain pnl --session latest -o json 2>/dev/null | jq '{anchor, waterfall: [.components[] | {kind, amount}]}'
kraken session decisions --session "$SESSION_ID" -o json 2>/dev/null \
| jq -c '.decisions[] | {kind, symbol, reason, timestamp}'Report:
dollars_per_buy × rounds)/loop drives the pace and the agent runs each round. The CLI has no scheduler and runs no strategy./loop enforces spacing./loop fire only runs what the agent may invoke unprompted. Keep kraken order buy, kraken session note, and kraken session show permitted non-interactively, or a fire stalls waiting on an approval you never see.--strategy-params and the arithmetic in jq/bc, so a rerun on the same tape reproduces the decisions.session.json, decisions.jsonl, and the tape sinks) is owned by the CLI recorder. The agent only reads it, and only for the stop-time summary. Never write, edit, mkdir, or append inside it — every buy and skip goes through kraken order buy / kraken session note, so the recorder stays the single writer.kraken feedback.© krakenfx, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/recipe-playground-dca of krakenfx/kraken-cli.
Open the folder on GitHubat commit aa56e59
Recipe Playground Dca next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Recipe Playground Dca this skillkrakenfx/kraken-cli | 751 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Technical Analysttradermonty/claude-trading-skills | 3k | 4 repos | ~4.6k | Automated safety check: Pass | MIT | |
| Theme Detectortradermonty/claude-trading-skills | 3k | 2 repos | ~4.9k | Automated safety check: Pass | MIT | |
| Creating Financial ModelsChen-zexi/open-ptc-agent | 729 | 3 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Stock APIzhangxiangliang/stock-api | 2k | — | ~507 | Automated safety check: Pass | MIT | |
| Itr Walakaranb192/itr-wala | 871 | — | ~3.6k | Automated safety check: Pass | MIT |
tradermonty/claude-trading-skills
This skill should be used when analyzing weekly price charts for stocks, stock indices, cryptocurrencies, or forex pairs.
tradermonty/claude-trading-skills
Detect and analyze trending market themes across sectors. An agent skill from tradermonty/claude-trading-skills.
Chen-zexi/open-ptc-agent
This skill provides an advanced financial modeling suite with DCF analysis, sensitivity testing, Monte Carlo simulations, and scenario planning for investment decisions
zhangxiangliang/stock-api
Fetch real-time stock quotes, K-line (candlestick) history, and search symbols for China A-shares, Hong Kong, and US markets.
karanb192/itr-wala
File Indian income tax returns (ITR) for FY 2025-26 / AY 2026-27.
zillionare/zillionare
面向中文自然语言的 Tushare 数据研究技能。用于把“看看这只股票最近怎么样”“帮我查财报趋势”“最近哪个板块最强”“北向资金在买什么”“给我导出一份行情数据”这类请求,转成可执行的数据获取、清洗、对比、筛选、导出与简要分析流程。适用于 A 股、指数、ETF/基金、财务、估值、资金流、公告新闻、板块概念与宏观数据等研究场景。
krakenfx/kraken-cli
Price alerts, threshold monitoring, and notification triggers for agents.
krakenfx/kraken-cli
Progress from manual trading to full agent autonomy with controlled risk at each level.
krakenfx/kraken-cli
Capture the spot-futures price spread with delta-neutral basis trades.
krakenfx/kraken-cli
Dollar cost averaging with scheduled buys and performance tracking.
krakenfx/kraken-cli
Discover staking strategies, allocate funds, and track earn positions.
krakenfx/kraken-cli
Handle order failures, network errors, and duplicate submissions safely.
Categories
Example driver: drive a time-based dollar-cost-averaging hypothesis into a recorded session. Recipe Playground Dca is an agent skill from krakenfx/kraken-cli. Example driver: drive a time-based dollar-cost-averaging hypothesis into a recorded session.
Recipe Playground Dca fits situations like: business, Finance & HR work in your project.
Run `npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a claude-code`. Or copy the skill folder (skills/recipe-playground-dca in krakenfx/kraken-cli) into .claude/skills/recipe-playground-dca in your project. Claude Code loads it when a task matches its description.
Run `npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a codex`. Or copy the skill folder (skills/recipe-playground-dca in krakenfx/kraken-cli) into .agents/skills/recipe-playground-dca in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add krakenfx/kraken-cli --skill recipe-playground-dca -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/recipe-playground-dca, .gemini/skills/recipe-playground-dca, .github/skills/recipe-playground-dca and .opencode/skills/recipe-playground-dca in your project.
Going by SKILL.md and its folder, Recipe Playground Dca needs the command-line tools its instructions call (jq).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Recipe Playground Dca is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Recipe Playground Dca: Technical Analyst (tradermonty/claude-trading-skills, 3k stars), Theme Detector (tradermonty/claude-trading-skills, 3k stars), Creating Financial Models (Chen-zexi/open-ptc-agent, 729 stars) and Stock API (zhangxiangliang/stock-api, 2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
krakenfx (a GitHub organization) maintains it in krakenfx/kraken-cli, which has 751 GitHub stars. The repository holds 59 skills in this directory. The repository was last updated on August 7, 2026.
Source: krakenfx/kraken-cli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.