Technical Analyst
tradermonty/claude-trading-skills
This skill should be used when analyzing weekly price charts for stocks, stock indices, cryptocurrencies, or forex pairs.
Determine how to distribute capital across asset classes using strategic and tactical allocation frameworks.
$ npx skills add JoelLewis/finance_skills --skill asset-allocation -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install JoelLewis/finance_skills asset-allocation --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/JoelLewis/finance_skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/wealth-management/skills/asset-allocation .claude/skills/asset-allocation && 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 "asset-allocation" agent skill from https://github.com/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocation into .claude/skills/asset-allocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asset-allocation", 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/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocationType 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 JoelLewis/finance_skills --skill asset-allocation -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install JoelLewis/finance_skills asset-allocation --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JoelLewis/finance_skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/wealth-management/skills/asset-allocation .agents/skills/asset-allocation && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "asset-allocation" agent skill from https://github.com/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocation into .agents/skills/asset-allocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asset-allocation", 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 JoelLewis/finance_skills --skill asset-allocation -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install JoelLewis/finance_skills asset-allocation --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JoelLewis/finance_skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/wealth-management/skills/asset-allocation .cursor/skills/asset-allocation && 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 "asset-allocation" agent skill from https://github.com/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocation into .cursor/skills/asset-allocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asset-allocation", 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/JoelLewis/finance_skills.git --path plugins/wealth-management/skills/asset-allocation--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 JoelLewis/finance_skills --skill asset-allocation -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install JoelLewis/finance_skills asset-allocation --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JoelLewis/finance_skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/wealth-management/skills/asset-allocation .gemini/skills/asset-allocation && 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 "asset-allocation" agent skill from https://github.com/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocation into .gemini/skills/asset-allocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asset-allocation", 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 JoelLewis/finance_skills asset-allocationInstalls 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 JoelLewis/finance_skills --skill asset-allocation -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/JoelLewis/finance_skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/wealth-management/skills/asset-allocation .github/skills/asset-allocation && 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 "asset-allocation" agent skill from https://github.com/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocation into .github/skills/asset-allocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asset-allocation", 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 JoelLewis/finance_skills --skill asset-allocation -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install JoelLewis/finance_skills asset-allocation --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/JoelLewis/finance_skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/wealth-management/skills/asset-allocation .opencode/skills/asset-allocation && 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 "asset-allocation" agent skill from https://github.com/JoelLewis/finance_skills/tree/main/plugins/wealth-management/skills/asset-allocation into .opencode/skills/asset-allocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asset-allocation", 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.
asset-allocationDetermine how to distribute capital across asset classes using strategic and tactical allocation frameworks.
Asset Allocation is an agent skill from JoelLewis/finance_skills. Determine how to distribute capital across asset classes using strategic and tactical allocation frameworks. Use when the user asks about portfolio allocation, mean-variance optimization, Black-Litterman, risk parity, glide paths, or target-date strategies. Also trigger when users mention 'how much in stocks vs bonds', '60/40 portfolio', 'policy portfolio', 'core-satellite', 'liability-driven investing', 'asset-liability matching', or ask how to split their money across investments.
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/asset_allocation.py`).
It sits in Business, Finance & HR. The repository describes itself as: Claude Code skill plugins for financial services — 81 skills across 7 domain plugins covering investment management, compliance, advisory practice, trading, and operations. The licence is MIT.
Read from SKILL.md and the folder at commit 5c498ea. 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.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
uvpython3pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.
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.
Asset Allocation loads about 2.5k tokens when it runs. Until then it costs about 126 tokens; SKILL.md has 1,171 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); the scripts in this folder are not scanned.
The full file from JoelLewis/finance_skills at commit 5c498ea, republished under its MIT licence (© JoelLewis). 1,171 words, ~2,542 tokens.
.claude/skills/asset-allocation/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.The long-term policy portfolio based on an investor's risk tolerance, return objectives, time horizon, and constraints. SAA determines the baseline target weights (e.g., 60% equity / 30% bonds / 10% alternatives) and is the dominant driver of long-term portfolio returns. SAA should be revisited when investor circumstances change, not in response to market movements.
Short-to-medium-term deviations from the SAA based on market views, valuations, or momentum signals. TAA requires a disciplined process to avoid becoming ad hoc market timing. Key considerations:
Markowitz's framework for finding optimal portfolio weights that maximize risk-adjusted return:
max w'*mu - (lambda/2) * w'Sigmaw
subject to: sum(w_i) = 1, w_i >= 0 (if long-only), and any additional constraints.
Where:
MVO requires three inputs: expected returns, the covariance matrix, and risk aversion. The solution is highly sensitive to expected return inputs.
Combines market equilibrium returns with investor views to produce more stable, intuitive portfolio weights. Two-step process:
Step 1 — Implied Equilibrium Returns: Pi = lambda * Sigma * w_mkt
where w_mkt is the market-capitalization weight vector, lambda is the risk aversion parameter, and Sigma is the covariance matrix. These are the returns the market implicitly expects given current prices.
Step 2 — Blending with Views: E(R) = [(tau*Sigma)^(-1) + P'*Omega^(-1)P]^(-1) * [(tauSigma)^(-1)*Pi + P'*Omega^(-1)*Q]
where:
The result is a posterior expected return vector that tilts away from equilibrium toward the investor's views, proportional to confidence.
Equalizes the risk contribution from each asset (or factor) rather than equalizing capital allocation:
RC_i = w_i * (Sigma*w)_i / sigma_p
Set RC_i = RC_j for all i, j.
In a simple two-asset case with no correlation: w_i is proportional to 1/sigma_i
Risk parity portfolios allocate more capital to lower-volatility assets (typically bonds) and often require leverage to achieve competitive return targets.
An age-based or time-based allocation that systematically shifts from growth assets to defensive assets as the investor ages or the target date approaches:
Common rule of thumb: Equity % = 110 - Age
Target-date fund glide paths typically:
A hybrid approach combining:
This structure captures the market return efficiently (core) while allowing alpha generation or specific exposures (satellites).
For investors with defined liabilities (pensions, insurance, endowments with spending rules):
| Formula | Expression | Use Case |
|---|---|---|
| MVO Objective | max w'*mu - (lambda/2)*w'Sigmaw | Optimal portfolio weights |
| Equilibrium Returns | Pi = lambda * Sigma * w_mkt | Black-Litterman starting point |
| BL Posterior | E(R) = [(tau*Sigma)^(-1) + P'*Omega^(-1)P]^(-1) * [(tauSigma)^(-1)*Pi + P'*Omega^(-1)*Q] | Blended expected returns |
| Risk Contribution | RC_i = w_i * (Sigma*w)_i / sigma_p | Risk parity target |
| Risk Parity Condition | RC_i = RC_j for all i, j | Equal risk contribution |
| Glide Path Rule | Equity % = 110 - Age | Age-based allocation |
Given:
Calculate: Optimal weights
Solution:
Covariance matrix:
MVO with lambda=4 (solving numerically or via quadratic programming):
Optimal weights (long-only):
Portfolio: expected return = 5.60%, volatility = 8.71%
Note: International equity is driven to zero — it is highly correlated with US equity (0.75) but has a lower expected return, so the optimizer sees no reason to hold it. This is classic MVO behavior: small input differences produce corner solutions. Adding a maximum-weight or minimum-allocation constraint would force diversification. The high bond allocation reflects the heavy variance penalty (lambda=4); reducing lambda shifts toward equities.
Given: The same three assets and covariance matrix as Example 1.
Calculate: Equilibrium and posterior expected returns
Solution:
Step 1 — Equilibrium returns, Pi = lambda × Sigma × w_mkt:
Step 2 — View specification: P = [0, 1, -1], Q = [3%].
The equilibrium already implies Int'l beats Bonds by 5.23%, so a 3% view is bearish relative to equilibrium. Applying the Black-Litterman posterior formula:
The posterior tilts returns toward the view in proportion to confidence. Fed into MVO, these returns shift weights away from equities and toward bonds relative to market-cap weights — moderately, avoiding the extreme corner solutions that raw MVO produces (compare Example 1). Note that views are always evaluated relative to what equilibrium already implies, not in isolation.
uv run scripts/asset_allocation.py # run the demo (uses PEP 723 inline deps)
uv run scripts/asset_allocation.py --verify # check demo outputs against the worked examples (exit 1 on mismatch)
python3 scripts/asset_allocation.py # alternative (requires: pip install numpy scipy)The demo prints the calculations covered above; its values match the worked examples in this skill. Run --help for a list of the classes and functions. For programmatic use, import the module rather than running it — the demo only executes under python asset_allocation.py.
© JoelLewis, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in plugins/wealth-management/skills/asset-allocation of JoelLewis/finance_skills.
Open the folder on GitHubat commit 5c498ea
Asset Allocation 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 |
|---|---|---|---|---|---|---|
| Asset Allocation this skillJoelLewis/finance_skills | 205 | — | ~2.5k | 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/基金、财务、估值、资金流、公告新闻、板块概念与宏观数据等研究场景。
JoelLewis/finance_skills
Determine how much capital to allocate to individual positions within a portfolio.
JoelLewis/finance_skills
Analyze commodity markets including futures curve dynamics, roll yield, and supply/demand fundamentals.
JoelLewis/finance_skills
Analyze currency markets, exchange rate mechanics, and FX risk management for international portfolios.
JoelLewis/finance_skills
Provide frameworks for managing and paying off personal debt effectively.
JoelLewis/finance_skills
Build diversified portfolios using correlation analysis, efficient frontier construction, and factor-based diversification.
JoelLewis/finance_skills
Size and structure an emergency fund based on individual circumstances, income stability, and expense profile.
Categories
Determine how to distribute capital across asset classes using strategic and tactical allocation frameworks. Asset Allocation is an agent skill from JoelLewis/finance_skills. Determine how to distribute capital across asset classes using strategic and tactical allocation frameworks.
Asset Allocation fits situations like: the user asks about portfolio allocation; mean-variance optimization; black-Litterman; target-date strategies.
Run `npx skills add JoelLewis/finance_skills --skill asset-allocation -a claude-code`. Or copy the skill folder (plugins/wealth-management/skills/asset-allocation in JoelLewis/finance_skills) into .claude/skills/asset-allocation in your project. Claude Code loads it when a task matches its description.
Run `npx skills add JoelLewis/finance_skills --skill asset-allocation -a codex`. Or copy the skill folder (plugins/wealth-management/skills/asset-allocation in JoelLewis/finance_skills) into .agents/skills/asset-allocation 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 JoelLewis/finance_skills --skill asset-allocation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/asset-allocation, .gemini/skills/asset-allocation, .github/skills/asset-allocation and .opencode/skills/asset-allocation in your project.
Going by SKILL.md and its folder, Asset Allocation needs Python for the scripts in its folder and the command-line tools its instructions call (uv, python3 and python). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Asset Allocation 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.5k tokens (SKILL.md is roughly 10k 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 Asset Allocation: 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.
JoelLewis (a GitHub user) maintains it in JoelLewis/finance_skills, which has 205 GitHub stars. The repository holds 91 skills in this directory. The repository was last updated on July 18, 2026.
Source: JoelLewis/finance_skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.