Generate TradingView-style candlestick charts with technical indicators for price visualization and analysis.
Works with
Supports candlestick charts with optional overlays (EMA, SMA, Bollinger Bands) and subplots (RSI, MACD) for crypto via CoinGecko and stocks/forex/commodities via Twelve Data
Auto-selects optimal data intervals (hourly for ≤31 days, daily for longer ranges) to balance visual quality and data volume
Chart scripts run standalone in the workspace using requests directly; template
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionchartingExecute the skills CLI command in your project's root directory to begin installation:
Fetches charting from starchild-ai-agent/official-skills and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate charting. Access via /charting in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Create detailed user stories, acceptance criteria, and feature specs
Example
Generate user stories for 'password reset feature' with acceptance criteria, edge cases, and test scenarios
Reduce spec writing time by 50%, ensure comprehensive coverage
Research competitors, compare features, identify gaps
Example
Analyze 5 competitor products, create feature comparison matrix, suggest differentiation opportunities
Complete competitive research in 2 hours instead of 2 days
Evaluate features using frameworks (RICE, ICE, Kano) and create prioritized backlogs
Example
Score 20 feature ideas using RICE framework, generate prioritized roadmap with rationale
1
total installs
1
this week
1
GitHub stars
0
upvotes
Run in your terminal
1
installs
1
this week
1
stars
NEVER call price_chart, get_coin_ohlc_range_by_id, twelvedata_time_series, or ANY market data tools when creating charts. Chart scripts fetch data internally. Calling these tools floods your context with 78KB+ of unnecessary data.
Workflow (4 steps):
skills/charting/scripts/scripts/bashread_file on the output PNG, then display it using markdown image syntax: You generate TradingView-quality candlestick charts. Dark theme, clean layout, professional colors. Every chart is a standalone Python script — no internal imports.
Additional Rules:
core. Use requests library directly, NOT proxied_get().PROXY_HOST env var exists, scripts automatically configure HTTP_PROXY/HTTPS_PROXY.Tools: write_file, bash, read_file
Simple price action → Candlestick with no indicators. Good for "show me BTC this month." Trend analysis → Add EMA/SMA overlays. Good for "is ETH in an uptrend?" Momentum check → Add RSI or MACD as subplots. Good for "is SOL overbought?" Full technical view → Candles + Bollinger Bands + RSI + MACD. Good for "give me the full picture on BTC." Volume analysis → Requires separate fetch from market_chart endpoint (OHLC endpoint has no volume). Asset comparison → Line chart comparing two assets (BTC vs Gold, ETH vs S&P500, etc.). Use comparison template for normalized or percentage-based comparisons.
Read and customize the template scripts in skills/charting/scripts/:
chart_template.py — Baseline candlestick chart with TradingView styling (crypto via CoinGecko)chart_with_indicators.py — RSI, MACD, Bollinger Bands, EMA/SMA examples (crypto via CoinGecko)chart_stock_template.py — Stock/forex chart using Twelve Data APIchart_comparison_template.py — Compare two assets (crypto vs commodity, stock vs crypto, etc.)Copy the relevant template to scripts/, customize the config section (coin, days, indicators), and run it.
The templates handle all data fetching internally with retry logic and error handling.
Note: These templates are for market data visualization (price charts, indicators). For backtest result charts (equity curves, drawdowns, performance dashboards), add matplotlib charting directly to your backtest script — the data is already there, no need to re-fetch or create a separate file.
| Element | Color | Hex |
|---|---|---|
| Up candles | Teal | #26a69a |
| Down candles | Red | #ef5350 |
| Background | Dark | #131722 |
| Grid | Subtle dotted | #1e222d |
| Text / axes | Light gray | #d1d4dc |
| MA lines | Blue / Orange | #2196f3 / #ff9800 |
| RSI line | Purple | #b39ddb |
| MACD line | Blue | #2196f3 |
| Signal line | Orange | #ff9800 |
Do not deviate from this palette unless the user asks.
Endpoint: https://pro-api.coingecko.com/api/v3/coins/{coin_id}/ohlc/range
Auth: Header x-cg-pro-api-key: {COINGECKO_API_KEY}
Use for: BTC, ETH, SOL, and all cryptocurrencies
Example:
url = f"https://pro-api.coingecko.com/api/v3/coins/{COIN_ID}/ohlc/range"
params = {"vs_currency": "usd", "from": from_ts, "to": now, "interval": "daily"}
headers = {"x-cg-pro-api-key": os.getenv("COINGECKO_API_KEY")}
resp = requests.get(url, params=params, headers=headers)
raw = resp.json() # [[timestamp_ms, open, high, low, close], ...]
Endpoint: https://api.twelvedata.com/time_series
Auth: Query param apikey={TWELVEDATA_API_KEY}
Use for: Stocks (AAPL, MSFT), Forex (EUR/USD), Commodities (XAU/USD for gold)
Common Symbols:
AAPL, MSFT, GOOGL, TSLA, SPYEUR/USD, GBP/JPY, USD/CHFXAU/USD (gold), XAG/USD (silver), CL/USD (crude oil)Intervals: 1min, 5min, 15min, 30min, 1h, 4h, 1day, 1week, 1month
Example:
url = "https://api.twelvedata.com/time_series"
params = {
"symbol": "XAU/USD", # Gold spot price
"interval": "1day",
"outputsize": 90, # Number of candles
"apikey": os.getenv("TWELVEDATA_API_KEY")
}
resp = requests.get(url, params=params)
data = resp.json()
# data["values"] = [{"datetime": "2024-01-01", "open": "2050.00", "high": "2060.00", ...}, ...]
IMPORTANT: Twelve Data returns data in reverse chronological order (newest first). Always reverse the list before creating a DataFrame:
values = data["values"][::-1] # Reverse to oldest-first
The templates now auto-select optimal intervals to minimize data volume while maintaining visual quality:
| Time Range | Auto-Selected Interval | Rationale |
|---|---|---|
| ≤31 days | Hourly | High granularity for short-term analysis |
| 32-365 days | Daily | Sufficient detail, lower data volume |
| >365 days | Daily | Daily is optimal for long-term trends |
Override: Set INTERVAL = "daily" or INTERVAL = "hourly" in the config to override auto-selection.
savefig facecolor: You MUST set facecolor='#131722' and edgecolor='#131722' in savefig, or the saved PNG reverts to white background.\n to add spacing from the top edge.returnfig=True: Use when you need post-plot customization (price formatting, annotations). When using it, call fig.savefig() manually — don't pass savefig to mpf.plot().[timestamp_ms, open, high, low, close] only. Use volume=False or fetch volume separately from coin_chart endpoint.panel_ratios when adding indicator subplots. E.g., (4, 1, 2) for candles + volume + one indicator, (5, 1, 2, 2) for two indicators.(14, 8). Increase to (14, 10) or (14, 12) when adding subplots.scripts/foo.py, not workspace/scripts/foo.py. The bash CWD is already workspace.output/ directory. Use os.makedirs("output", exist_ok=True).bash("python3 scripts/<name>.py") to verify it works.read_file on the generated PNG, then use markdown image syntax to display it: requests + os.getenv(). No internal imports, no dotenv.core.http_client. Always use requests.get() and requests.post() directly. This is an exception to the PLATFORM.md proxy rules because these scripts execute outside the main Star Child process. The templates demonstrate the correct pattern.os.getenv("COINGECKO_API_KEY") works directly.btc_30d_candles.png, eth_7d_rsi_macd.png.Templates auto-configure proxy from PROXY_HOST/PROXY_PORT env vars. If 401 errors occur:
Check environment:
bash("env | grep -E 'PROXY|REQUESTS_CA'")
Expected vars:
PROXY_HOST / PROXY_PORT - Proxy address (templates use these to set HTTP_PROXY/HTTPS_PROXY)REQUESTS_CA_BUNDLE - Proxy CA cert for SSLCOINGECKO_API_KEY / TWELVEDATA_API_KEY - Can be fake in proxied environmentsIf vars are missing, this is an environment configuration issue, not a script issue.
Make data-driven prioritization decisions faster
Draft PRDs, status updates, and stakeholder presentations
Example
Create executive summary of Q3 roadmap, monthly progress report, feature launch announcement
Save 3-5 hours/week on communication overhead
Prerequisites
Time Estimate
30-60 minutes to see productivity improvements
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use for user story writing, competitive research, roadmap prioritization, stakeholder communication, and PRD drafting. Best for reducing repetitive documentation and research work.
✗ Avoid when
Avoid for strategic product vision (requires deep customer empathy), pricing decisions (needs market and financial expertise), or when face-to-face customer discovery is more valuable than speed.
mattpocock/skills
parcadei/continuous-claude-v3
cursor/plugins
ailabs-393/ai-labs-claude-skills
pproenca/dot-skills
ailabs-393/ai-labs-claude-skills
I recommend charting for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Registry listing for charting matched our evaluation — installs cleanly and behaves as described in the markdown.
charting fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
Keeps context tight: charting is the kind of skill you can hand to a new teammate without a long onboarding doc.
charting reduced setup friction for our internal harness; good balance of opinion and flexibility.
Useful defaults in charting — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
Keeps context tight: charting is the kind of skill you can hand to a new teammate without a long onboarding doc.
charting has been reliable in day-to-day use. Documentation quality is above average for community skills.
charting reduced setup friction for our internal harness; good balance of opinion and flexibility.
We added charting from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
showing 1-10 of 62