Command line interface for efinance - Get stock, fund, bond and futures data from command line.
Designed for AI code agents (Claude Code CLI, Cursor, Copilot CLI, etc.) and terminal users.
pip install efinance-cligit clone https://github.com/PegasusWang/efinance-cli
cd efinance-cli
pip install -e .Install skills to Claude Code skills directory:
# Using uvx (recommended)
uvx --from git+https://github.com/PegasusWang/efinance-cli.git install-skills
# Using pipx
pipx install git+https://github.com/PegasusWang/efinance-cli.git
pipx run efinance-cli --helpAvailable skills:
filter-fund-by-name- Filter funds by keywords and export to CSVquery-fund-purchase-limit- Query fund purchase status, limits and restrictions
After installation, you can use efinance-cli command:
# Show version
efinance-cli version
# Get help
efinance-cli --help# Get stock K-line history
efinance-cli stock history 600519
# Get stock history with date range
efinance-cli stock history 600519 --start 2024-01-01 --end 2024-12-31
# Get 5-minute K-line data
efinance-cli stock history 600519 --klt 5
# Save to CSV file
efinance-cli stock history 600519 -o stock_data.csv
# Get real-time quotes for all A-shares
efinance-cli stock realtime
# Get daily billboard (龙虎榜)
efinance-cli stock billboard
# Get billboard for date range
efinance-cli stock billboard --start 2024-01-01 --end 2024-01-31
# Get company quarterly performance
efinance-cli stock performance
# Get stock basic information
efinance-cli stock base-info 600519 000001
# Get top 10 stock holders
efinance-cli stock holder 600519# Get fund net value history
efinance-cli fund history 161725
# Save to CSV
efinance-cli fund history 161725 -o fund_data.csv
# Get fund investment position
efinance-cli fund position 161725
# Get fund basic information
efinance-cli fund base-info 161725 005827
# Get fund manager information
efinance-cli fund manager 161725
# Get all fund codes
efinance-cli fund codes# Get real-time quotes for convertible bonds
efinance-cli bond realtime
# Get bond K-line history
efinance-cli bond history 123111
# Get all convertible bonds information
efinance-cli bond all-info
# Save to CSV
efinance-cli bond realtime -o bonds.csv# Get futures basic information
efinance-cli futures info
# Get real-time futures quotes
efinance-cli futures realtime
# Get futures K-line history
efinance-cli futures history 115.ZCM
# Get multiple futures history
efinance-cli futures history 115.ZCM 115.ZC109
# Save to CSV
efinance-cli futures history 115.ZCM -o futures_data.csv--help: Show help message--version: Show version
| Command | Description |
|---|---|
history |
Get stock K-line history data |
realtime |
Get real-time quotes for all A-shares |
billboard |
Get daily billboard (龙虎榜) data |
performance |
Get quarterly performance of companies |
base-info |
Get basic information for stocks |
holder |
Get top 10 stock holders information |
| Command | Description |
|---|---|
history |
Get fund net value history |
position |
Get fund investment position |
base-info |
Get basic information for funds |
manager |
Get fund manager information |
codes |
Get all fund codes |
| Command | Description |
|---|---|
realtime |
Get real-time quotes for convertible bonds |
history |
Get bond K-line history data |
all-info |
Get all convertible bonds information |
| Command | Description |
|---|---|
info |
Get futures basic information |
realtime |
Get real-time futures quotes |
history |
Get futures K-line history data |
--output, -o: Output file path (CSV format)--limit, -l: Maximum number of rows to display (default: 50)
--start, -s: Start date (YYYY-MM-DD)--end, -e: End date (YYYY-MM-DD)--klt, -k: K-line type101: Day K-line (default)102: Week K-line103: Month K-line5: 5-minute K-line15: 15-minute K-line30: 30-minute K-line60: 60-minute K-line
--fqt, -f: Adjustment type0: No adjustment1: Forward adjustment (default)2: Backward adjustment
This CLI tool is designed to work well with AI code agents:
- Structured Output: Data is displayed in formatted tables using
richlibrary - Error Handling: Clear error messages with exit codes
- CSV Export: All data can be exported to CSV for further processing
- Comprehensive Help: Built-in help for all commands
Example usage with Claude Code CLI:
# Ask Claude to get stock data
"Use efinance-cli to get the last 30 days of K-line data for 贵州茅台 (600519) and save it to a CSV file"
# Claude will execute:
efinance-cli stock history 600519 -o moutai_30days.csv --limit 30This project includes Claude Code skills for common tasks:
Filter funds by name keywords and export to CSV:
# Filter funds containing specific keywords
/filter-fund-by-name 富国 易方达
# Filter quantitative funds
/filter-fund-by-name 量化 多因子 多策略
# Filter bond funds
/filter-fund-by-name 债券The skill will:
- Fetch all fund codes from efinance
- Filter by keywords (OR logic)
- Export results to CSV file
Query fund purchase limits and restrictions using akshare:
# Query single fund purchase limit
/query-fund-purchase-limit 009101
# Query multiple funds
/query-fund-purchase-limit 009101 001338 040046
# Batch query Nasdaq funds
/query-fund-purchase-limit 513100 513300 159941 270042The skill returns:
申购状态: Purchase status (开放申购/暂停申购)限制申购金额: Daily purchase limit amount暂停申购: Suspension details最小申购金额: Minimum purchase amount
Usage Examples:
# Query Nasdaq funds with purchase limits and export to CSV
用户: 帮我查一下纳斯达克基金的代码和限购金额信息,导出到 CSV
Claude: /query-fund-purchase-limit 513100 159941 ...
# Filter QDII funds and add purchase limit info
用户: 筛选所有 QDII 基金,并获取限购信息导出到 CSV
Claude: /filter-fund-by-name QDII → /query-fund-purchase-limit [codes]
# Get recent stock data
efinance-cli stock history 600519 -o stock.csv --limit 100
# Then use Python to analyze
python -c "import pandas as pd; df = pd.read_csv('stock.csv'); print(df.describe())"# Get real-time quotes
efinance-cli stock realtime -o realtime.csv
# Filter with Python
python -c "import pandas as pd; df = pd.read_csv('realtime.csv'); print(df[df['涨跌幅'] > 5])"# Get fund history
efinance-cli fund history 161725 -o fund.csv
# Get fund position
efinance-cli fund position 161725- Python >= 3.8
- efinance >= 0.5.8
- typer >= 0.9.0
- rich >= 13.0.0
- pandas >= 1.3.0
- efinance - The underlying Python library for finance data
- typer - Library for building CLI applications
- rich - Python library for rich text and beautiful formatting
MIT License
Contributions are welcome! Please feel free to submit a Pull Request.
This project is for educational and research purposes only. It should not be used for commercial purposes. Always do your own research before making investment decisions.
- Initial release
- Support for stock, fund, bond, and futures data
- CSV export functionality
- Rich table formatting