← 返回 Skills 市场
salihgun

FinClaw

作者 salihgun · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
619
总下载
2
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install finclaw
功能描述
AI finance assistant — real-time quotes, charts, technical analysis, portfolio tracking, price alerts, watchlists, daily briefings, macro economics, and sent...
使用说明 (SKILL.md)

FinClaw — AI Finance Assistant

Your personal finance assistant covering US stocks, BIST (Turkish market), crypto, and forex. Includes portfolio tracking, price alerts, charts, technical analysis, daily briefings, and more.

First-Time Setup

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.

Running Scripts

All scripts use the skill's Python venv:

{baseDir}/venv/bin/python3 {baseDir}/scripts/\x3Cscript>.py [args]

Market Data

quote.py — Real-Time Quotes

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

crypto.py — Crypto Market Data

{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

forex.py — Exchange Rates

{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

chart.py — Price Charts

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

technical.py — Technical Analysis

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

news.py — Financial News (requires FINNHUB_API_KEY)

{baseDir}/venv/bin/python3 {baseDir}/scripts/news.py company --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/news.py market --category crypto

screener.py — Stock Screener

{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

Portfolio & Alerts

portfolio.py — Position Management

{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"

alerts.py — Price Alerts

{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

check_alerts.py — Alert Checker (for cron)

{baseDir}/venv/bin/python3 {baseDir}/scripts/check_alerts.py

pnl.py — Profit & Loss

{baseDir}/venv/bin/python3 {baseDir}/scripts/pnl.py                    # All positions
{baseDir}/venv/bin/python3 {baseDir}/scripts/pnl.py --symbol AAPL      # Single symbol

watchlist.py — Watchlists

{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

Intelligence

briefing.py — Market Briefings

{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

macro.py — Macro Economics (requires FRED_API_KEY)

{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

earnings.py — Earnings Calendar (requires FINNHUB_API_KEY)

{baseDir}/venv/bin/python3 {baseDir}/scripts/earnings.py calendar
{baseDir}/venv/bin/python3 {baseDir}/scripts/earnings.py symbol --symbol AAPL

sentiment.py — News Sentiment (requires ALPHA_VANTAGE_API_KEY)

{baseDir}/venv/bin/python3 {baseDir}/scripts/sentiment.py --symbol AAPL
{baseDir}/venv/bin/python3 {baseDir}/scripts/sentiment.py --topics technology

research.py — Deep Research

{baseDir}/venv/bin/python3 {baseDir}/scripts/research.py AAPL

Data Sources

  • US Stocks: Finnhub (primary), yfinance (fallback) — no key needed
  • BIST: yfinance with .IS suffix — no key needed
  • Crypto: Binance API — no key needed
  • Forex: ExchangeRate-API — works without key
  • Charts/TA: matplotlib + mplfinance + pandas — local computation
  • News: Finnhub — needs FINNHUB_API_KEY
  • Macro: FRED — needs FRED_API_KEY
  • Sentiment: Alpha Vantage — needs ALPHA_VANTAGE_API_KEY
安全使用建议
This skill looks like a real finance assistant, but there are some red flags you should check before installing: - Installation: the registry's install spec only mentions yfinance and oddly claims it "creates binaries: python3". The code requires many Python packages (pandas, matplotlib, mplfinance, finnhub-python, requests, fredapi). Expect to manually pip-install requirements.txt or ensure the environment has those packages. - API keys: API keys are optional for core price/chart features, but needed for news, FRED, AlphaVantage, and some exchange APIs. The skill reads them from ~/.openclaw/openclaw.json under skills.entries.finclaw (not from process ENV). Only add keys you are comfortable storing there. - Files & data: the skill will create a local venv and a SQLite database at the skill's data/finance.db. If you want isolation, run it in a sandbox or container. - Review setup.py and any truncated files before running the first-time setup script to confirm there are no unexpected network calls or actions during installation. - If you do not want the skill to read your openclaw.json, do not populate that file with unrelated secrets; verify its contents first. Overall: functionality appears coherent, but the incomplete install metadata and minor inconsistencies warrant manual review and cautious setup (medium confidence).
功能分析
Type: OpenClaw Skill Name: finclaw Version: 1.0.0 The OpenClaw FinClaw skill bundle appears benign. It provides financial assistance features like real-time quotes, portfolio tracking, and technical analysis, relying on legitimate third-party financial APIs (Finnhub, Binance, yfinance, FRED, Alpha Vantage, ExchangeRate-API). API keys are expected to be configured by the user in `openclaw.json` and are used only with their respective, known API endpoints. Data is stored locally in an SQLite database (`data/finance.db`), and charts are generated as PNG files in `data/charts`. The `SKILL.md` and other documentation files contain standard instructions for skill setup and usage, with no evidence of prompt injection attempts, unauthorized command execution, data exfiltration to malicious endpoints, or persistence mechanisms beyond the user-initiated `check_alerts.py` cron job.
能力评估
Purpose & Capability
Code and scripts match the stated purpose (quotes, charts, TA, portfolio, alerts, news, macro). Asset detection, API calls, DB schema and CLI mappings are coherent for a finance assistant.
Instruction Scope
SKILL.md stays within the finance domain (run scripts, create venv, add optional API keys to openclaw.json). It instructs reading ~/.openclaw/openclaw.json for skill config and creating a DB under the skill directory; this is expected but worth noting because it reads a user config file.
Install Mechanism
Registry install spec only declares installing the Python package 'yfinance' via a 'uv' entry and oddly lists 'creates binaries: python3'. requirements.txt lists many additional dependencies (pandas, matplotlib, mplfinance, finnhub-python, requests, fredapi) that the install spec does not install. The install metadata is incomplete / inconsistent and may leave the skill unusable or require manual pip installs.
Credentials
Registry metadata declares no required environment variables, but SKILL.md documents optional API keys (FINNHUB_API_KEY, FRED_API_KEY, ALPHA_VANTAGE_API_KEY, EXCHANGE_RATE_API_KEY). The keys are optional for core features. The skill reads ~/.openclaw/openclaw.json to obtain these values (it only returns the finclaw entry), which is proportionate but means the skill will read a user config file on disk.
Persistence & Privilege
The skill does not request elevated privileges or 'always: true'. It creates a Python venv and an SQLite DB inside the skill directory (data/finance.db) which is normal for a local assistant. Scripts run locally and do not modify other skills' configs.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install finclaw
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /finclaw 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release — AI finance assistant with 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.
元数据
Slug finclaw
版本 1.0.0
许可证
累计安装 0
当前安装数 0
历史版本数 1
常见问题

FinClaw 是什么?

AI finance assistant — real-time quotes, charts, technical analysis, portfolio tracking, price alerts, watchlists, daily briefings, macro economics, and sent... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 619 次。

如何安装 FinClaw?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install finclaw」即可一键安装,无需额外配置。

FinClaw 是免费的吗?

是的,FinClaw 完全免费(开源免费),可自由下载、安装和使用。

FinClaw 支持哪些平台?

FinClaw 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 FinClaw?

由 salihgun(@salihgun)开发并维护,当前版本 v1.0.0。

💬 留言讨论