Metadata-Version: 2.4
Name: jh-fin-data
Version: 0.1.6
Summary: jh finance data provider sdk
Project-URL: Homepage, https://github.com/jiuhuang-asset/jh_data
Project-URL: Repository, https://github.com/jiuhuang-asset/jh_data
Project-URL: Issues, https://github.com/jiuhuang-asset/jh_data/issues
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: dotenv>=0.9.9
Requires-Dist: duckdb>=1.4.4
Requires-Dist: httpx>=0.28.1
Requires-Dist: pandas>=2.3.3
Requires-Dist: pyarrow>=23.0.1
Requires-Dist: rich>=14.3.2
Dynamic: license-file

![banner](./assets/banner.png)

# jh_data

jh_data是一个**免费**,高性能,简洁易用的金融数据获取框架。

- **官网&API申请**: https://data.jiuhuang.xyz
- **文档地址**: https://doc.jiuhuang.xyz

## 亮点

- **丰富的数据源**：兼容akshare和tushare多种数据类型，支持获取A股、基金、宏观等数据
- **统一的数据接口**：通过 `DataTypes` 枚举类统一管理数据类型，输出字段名标准化为英文字段名
- **多时间颗粒度支持**：支持日、周、月级别数据，以及分钟级实时数据
- **多数据接口兼容**：支持 JHData、akshare、tushare 三种接口方式

## 快速开始

### 安装

uv安装(推荐)

```bash
uv add jh-data
# 或者uv pip install -U jh-data
```

pip安装

```bash
pip install -U jh-data
```

### 数据获取

jh_data 支持三种数据获取方式：

#### 方式一：JHData 直接获取

```python
from jh_data.data import JHData, DataTypes

jh = JHData()

# 获取股票日线数据（前复权）
stock_price = jh.get_data(
    DataTypes.AK_STOCK_ZH_A_HIST_QFQ,
    symbol="000001",
    start="2025-01-01",
    end="2025-01-10",
)
print(stock_price)
```

#### 方式二：akshare 兼容接口

```python
from jh_data.data_providers import akshare as ak

# akshare 风格：使用 start_date/end_date/adjust 参数
stock_price = ak.stock_zh_a_hist(
    symbol="000001",
    start_date="20250101",
    end_date="20250110",
    adjust="qfq"
)
print(stock_price)
```

#### 方式三：tushare 兼容接口

```python
from jh_data.data_providers import tushare as ts

# tushare 风格：使用 ts_code/start_date/end_date 参数
daily_data = ts.daily(
    ts_code="000001.SZ",
    start_date="20250101",
    end_date="20250110"
)
print(daily_data)
```

## License

This project is licensed under the BSD 3-Clause License - see the [LICENSE](LICENSE) file for details.
