Install
openclaw skills install finclawAI finance assistant — real-time quotes, charts, technical analysis, portfolio tracking, price alerts, watchlists, daily briefings, macro economics, and sentiment analysis for US stocks, BIST, crypto, and forex.
openclaw skills install finclawYour personal finance assistant covering US stocks, BIST (Turkish market), crypto, and forex. Includes portfolio tracking, price alerts, charts, technical analysis, daily briefings, and more.
Run once after installation to create the Python venv and database:
python3 {baseDir}/scripts/setup.py
Then add to openclaw.json under skills.entries:
"finclaw": {
"env": {
"FINNHUB_API_KEY": "",
"FRED_API_KEY": "",
"ALPHA_VANTAGE_API_KEY": "",
"EXCHANGE_RATE_API_KEY": ""
}
}
API keys are optional — core features (prices, charts, TA, portfolio, alerts) work without any keys.
All scripts use the skill's Python venv:
{baseDir}/venv/bin/python3 {baseDir}/scripts/<script>.py [args]
Auto-detects asset type from symbol. Results cached for 60 seconds.
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py AAPL # US stock
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py THYAO.IS # BIST stock
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py BTC # Crypto
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py USD/TRY # Forex
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py AAPL MSFT BTC # Multiple
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py AAPL --force # Skip cache
{baseDir}/venv/bin/python3 {baseDir}/scripts/quote.py AAPL --json # JSON output
Symbol detection: .IS → BIST | BTC/ETH/SOL... → Crypto | USD/TRY → Forex | else → US stock
{baseDir}/venv/bin/python3 {baseDir}/scripts/crypto.py price BTC # Binance price
{baseDir}/venv/bin/python3 {baseDir}/scripts/crypto.py top --limit 10 # Top gainers
{baseDir}/venv/bin/python3 {baseDir}/scripts/crypto.py try BTC # Price in TRY
{baseDir}/venv/bin/python3 {baseDir}/scripts/forex.py rate USD TRY
{baseDir}/venv/bin/python3 {baseDir}/scripts/forex.py convert USD TRY --amount 1000
{baseDir}/venv/bin/python3 {baseDir}/scripts/forex.py multi USD --targets TRY EUR GBP
Generates PNG charts. Send the saved file to the user.
{baseDir}/venv/bin/python3 {baseDir}/scripts/chart.py AAPL # Candlestick
{baseDir}/venv/bin/python3 {baseDir}/scripts/chart.py BTC --type line --period 1y # Line chart
{baseDir}/venv/bin/python3 {baseDir}/scripts/chart.py AAPL --sma 20 50 200 # With SMAs
Periods: 1d, 5d, 1mo, 3mo, 6mo, 1y, 2y, 5y, max
SMA, EMA, RSI, MACD, Bollinger Bands with buy/sell signals.
{baseDir}/venv/bin/python3 {baseDir}/scripts/technical.py AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/technical.py BTC --period 1y --json
{baseDir}/venv/bin/python3 {baseDir}/scripts/news.py company --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/news.py market --category crypto
{baseDir}/venv/bin/python3 {baseDir}/scripts/screener.py us # US gainers
{baseDir}/venv/bin/python3 {baseDir}/scripts/screener.py bist --direction bottom # BIST losers
{baseDir}/venv/bin/python3 {baseDir}/scripts/screener.py crypto --limit 15 # Crypto gainers
{baseDir}/venv/bin/python3 {baseDir}/scripts/portfolio.py add --symbol AAPL --shares 10 --price 150
{baseDir}/venv/bin/python3 {baseDir}/scripts/portfolio.py sell --symbol AAPL --shares 5 --price 175
{baseDir}/venv/bin/python3 {baseDir}/scripts/portfolio.py remove --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/portfolio.py list
{baseDir}/venv/bin/python3 {baseDir}/scripts/portfolio.py summary
Optional: --fees 1.50, --date 2024-01-15, --name "Apple Inc", --notes "Long hold"
{baseDir}/venv/bin/python3 {baseDir}/scripts/alerts.py create --symbol AAPL --condition above --target 200
{baseDir}/venv/bin/python3 {baseDir}/scripts/alerts.py create --symbol BTC --condition below --target 60000 --note "Buy signal"
{baseDir}/venv/bin/python3 {baseDir}/scripts/alerts.py list
{baseDir}/venv/bin/python3 {baseDir}/scripts/alerts.py delete --id 3
{baseDir}/venv/bin/python3 {baseDir}/scripts/alerts.py snooze --id 3 --hours 48
Conditions: above, below, change_pct, volume_above
{baseDir}/venv/bin/python3 {baseDir}/scripts/check_alerts.py
{baseDir}/venv/bin/python3 {baseDir}/scripts/pnl.py # All positions
{baseDir}/venv/bin/python3 {baseDir}/scripts/pnl.py --symbol AAPL # Single symbol
{baseDir}/venv/bin/python3 {baseDir}/scripts/watchlist.py create --name "Tech"
{baseDir}/venv/bin/python3 {baseDir}/scripts/watchlist.py add --name "Tech" --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/watchlist.py show --name "Tech" --prices
{baseDir}/venv/bin/python3 {baseDir}/scripts/watchlist.py list
{baseDir}/venv/bin/python3 {baseDir}/scripts/briefing.py morning # Full morning briefing
{baseDir}/venv/bin/python3 {baseDir}/scripts/briefing.py close # End-of-day summary
{baseDir}/venv/bin/python3 {baseDir}/scripts/briefing.py weekend # Weekend crypto + forex recap
{baseDir}/venv/bin/python3 {baseDir}/scripts/macro.py dashboard
{baseDir}/venv/bin/python3 {baseDir}/scripts/macro.py indicator --name fed_rate
{baseDir}/venv/bin/python3 {baseDir}/scripts/macro.py list
{baseDir}/venv/bin/python3 {baseDir}/scripts/earnings.py calendar
{baseDir}/venv/bin/python3 {baseDir}/scripts/earnings.py symbol --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/sentiment.py --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/sentiment.py --topics technology
{baseDir}/venv/bin/python3 {baseDir}/scripts/research.py AAPL