indicator-chart
Chart any technical indicator on a symbol using Plotly. Creates interactive dark-themed charts with candlestick, overlays, and subplots. Supports all 100+ openalgo.ta indicators.
Savant verdict: Pending analysis
Imported from the source hub; Savant's analysis is still running.
Live evaluation
Not evaluated yet. Workspaces can request a live evaluation.
Security assessment
Scan pending.
Structure
- No license declaredConfirm you may reuse this skill before importing it into your repository.
SKILL.md
---
name: indicator-chart
description: Chart any technical indicator on a symbol using Plotly. Creates interactive dark-themed charts with candlestick, overlays, and subplots. Supports all 100+ openalgo.ta indicators.
argument-hint: "[indicator] [symbol] [exchange] [interval]"
allowed-tools: Read, Write, Edit, Bash, Glob, Grep
---
Create an interactive Plotly chart for a technical indicator on a symbol.
## Arguments
Parse `$ARGUMENTS` as: indicator symbol exchange interval
- `$0` = indicator name (e.g., ema, rsi, macd, supertrend, bbands, adx, stochastic, ichimoku, obv, vwap). Default: ema
- `$1` = symbol (e.g., SBIN, RELIANCE, NIFTY, AAPL). Default: SBIN
- `$2` = exchange (e.g., NSE, BSE, NFO, NSE_INDEX). Default: NSE. For US symbols use: YFINANCE
- `$3` = interval (e.g., D, 1h, 5m). Default: D
If no arguments, ask the user which indicator and symbol they want.
## Instructions
1. Read the indicator-expert skill rules for reference patterns
2. Create `charts/{indicator_name}/` directory if it doesn't exist (on-demand)
3. Create a `.py` file in `charts/{indicator_name}/` named `{symbol}_{indicator}_chart.py`
4. Use the matching template from `rules/assets/{indicator}_chart/chart.py` as starting point (if available)
5. The script must:
- Load `.env` from project root using `find_dotenv()`
- Fetch data via OpenAlgo `client.history()` (or yfinance for US symbols)
- **Normalize data**: convert index to datetime, sort, strip timezone
- Compute the indicator using `openalgo.ta`
- Create a Plotly chart with `template="plotly_dark"` and `xaxis_type="category"`
- **Overlay indicators** (EMA, Bollinger, Supertrend, Ichimoku) go on the candlestick panel
- **Subplot indicators** (RSI, MACD, Stochastic, ADX, Volume, OBV) go below in separate panels
- Use `make_subplots` for multi-panel layouts
- Add horizontal reference lines where appropriate (RSI 30/70, Stochastic 20/80)
- Print a plain-language explanation of the current indicator reading
- Save chart as HTML: `{symbol}_{indicator}_chart.html`
- Show chart with `fig.show()`
6. Never use icons/emojis in code or output
## Indicator Chart Types
### Overlay Indicators (on candlestick panel)
| Indicator | Chart Type |
|-----------|-----------|
| ema, sma, wma, dema, tema, hma | Line overlay |
| bbands | Fill-between bands + midline |
| supertrend | Color-coded line (green=up, red=down) |
| ichimoku | 5 lines + cloud fill |
| keltner, donchian | Fill-between channels |
| sar | Dot markers above/below price |
| ma-envelopes | Upper/lower band lines |
### Subplot Indicators (separate panel below)
| Indicator | Chart Type |
|-----------|-----------|
| rsi | Line + horizontal 30/70 zones |
| macd | Line + signal + histogram bars |
| stochastic | K% + D% lines + 20/80 zones |
| adx | DI+, DI-, ADX lines + 25 threshold |
| cci | Line + horizontal +100/-100 zones |
| williams_r | Line + -20/-80 zones |
| obv | Line (cumulative) |
| mfi | Line + 20/80 zones |
| volume | Bar chart (green/red by price direction) |
| atr | Line (volatility) |
### Multi-Indicator Charts
If user asks for "multi" or multiple indicators, create a comprehensive multi-panel chart with:
- Row 1: Candlestick + EMA overlays
- Row 2: RSI(14)
- Row 3: MACD(12,26,9)
- Row 4: Volume bars
## Signal Markers
If the indicator generates clear buy/sell signals (e.g., crossover, supertrend direction change), add triangle markers:
- Buy: green triangle-up markers
- Sell: red triangle-down markers
## Data Periods
| Interval | Default Lookback |
|----------|-----------------|
| D | 1 year (365 days) |
| 1h | 6 months (180 days) |
| 15m, 30m | 3 months (90 days) |
| 5m | 1 month (30 days) |
| 1m | 7 days |
## Plain-Language Explanation
After creating the chart, print a brief explanation:
```
SBIN — RSI(14) Analysis
Current RSI: 42.3
Interpretation: Neutral zone (between 30-70). Neither overbought nor oversold.
Trend: RSI has been declining from 65 over the past 5 bars, suggesting weakening momentum.
```
## Example Usage
`/indicator-chart ema SBIN NSE D`
`/indicator-chart rsi RELIANCE NSE D`
`/indicator-chart macd AAPL YFINANCE D`
`/indicator-chart supertrend NIFTY NSE_INDEX D`
`/indicator-chart multi SBIN NSE D`
`/indicator-chart bbands INFY NSE 1h`