A cryptocurrency trading info package
Project description
Crypto Service
一个基于 Python 的加密货币数据处理工具包,专注于数据获取、处理和分析。
功能特点
- 支持币安的现货和永续合约数据获取
- 高效的数据缓存和存储机制
- 完整的类型提示和错误处理
- 支持自定义数据格式和存储方式
- 持续集成和自动发布
安装
pip install cryptoservice
快速开始
- 设置环境变量:
# 在 .env 文件中设置
BINANCE_API_KEY=your_api_key
BINANCE_API_SECRET=your_api_secret
- 基本使用:
from dotenv import load_dotenv
import os
from cryptoservice import MarketDataService
from cryptoservice.models import SortBy, Freq, HistoricalKlinesType
# 加载环境变量
load_dotenv()
api_key = os.getenv("BINANCE_API_KEY")
api_secret = os.getenv("BINANCE_API_SECRET")
# 创建服务实例
service = MarketDataService(api_key, api_secret)
# 获取单个交易对的行情数据
ticker = service.get_symbol_ticker("BTCUSDT")
# 获取排名靠前的币种数据
top_coins = service.get_top_coins(
limit=10,
sort_by=SortBy.QUOTE_VOLUME,
quote_asset="USDT"
)
# 获取市场概况
summary = service.get_market_summary(interval=Freq.d1)
# 获取历史K线数据
klines = service.get_historical_klines(
symbol="BTCUSDT",
start_time="20240101",
end_time="20240102",
interval=Freq.h1,
klines_type=HistoricalKlinesType.SPOT
)
# 获取永续合约数据
perpetual_data = service.get_perpetual_data(
symbols=["BTCUSDT", "ETHUSDT"],
start_time="20240101",
end_time="20240102",
freq=Freq.h1,
store=True, # 是否存储数据
market="SWAP",
features=["cls", "hgh", "low", "opn", "vwap", "vol"]
)
开发环境设置
- 克隆仓库:
git clone https://github.com/Mrzai/cryptoservice.git
cd cryptoservice
- 安装所有开发依赖:
pip install -e ".[dev-all]" # 安装所有开发依赖
- 安装 pre-commit hooks:
pre-commit install
贡献指南
- Fork 项目
- 创建功能分支:
git checkout -b feature/new-feature - 提交更改:
git commit -m 'feat: add new feature' - 推送分支:
git push origin feature/new-feature - 提交 Pull Request
提交信息必须遵循 Conventional Commits 规范:
feat: 新功能fix: 修复问题docs: 文档更新style: 代码格式调整refactor: 代码重构perf: 性能优化test: 测试相关chore: 构建过程或辅助工具的变动
许可证
MIT License
联系方式
- GitHub Issues: https://github.com/Mrzai/cryptoservice/issues
- Email: minzzzai.s@gmail.com
提交规范
提交信息必须遵循以下格式:
<type>(<scope>): <subject>
<body>
<footer>
例如:
# 新功能
feat(market): add historical data support
Added support for fetching historical market data
with customizable time ranges and intervals.
# 修复bug
fix(cache): resolve memory leak issue
Fixed memory leak in cache manager when handling
large datasets.
# 文档更新
docs(readme): update installation guide
Updated installation instructions to include
new development dependencies.
提交类型必须是以下之一:
- feat: 新功能
- fix: 修复问题
- docs: 文档更新
- style: 代码格式调整
- refactor: 代码重构
- perf: 性能优化
- test: 测试相关
- chore: 构建过程或辅助工具
- revert: 回退
- ci: CI/CD相关
- build: 构建系统
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cryptoservice-0.2.3.tar.gz
(3.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cryptoservice-0.2.3.tar.gz.
File metadata
- Download URL: cryptoservice-0.2.3.tar.gz
- Upload date:
- Size: 3.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cada124ce0d0588358a44038f965cd6bcf316aa2afbd313254753a03339caa71
|
|
| MD5 |
8836df41678cc37db4dc410372daa7cf
|
|
| BLAKE2b-256 |
a1073ec32f4ea553b39727a0a80c68b6d9c2f35cfcbd2bf98c39a0ec5c8fb8d3
|
File details
Details for the file cryptoservice-0.2.3-py3-none-any.whl.
File metadata
- Download URL: cryptoservice-0.2.3-py3-none-any.whl
- Upload date:
- Size: 3.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1bbb862da737877f83014824d64b45b9f5319a170c34317299fa64cedae7f141
|
|
| MD5 |
ed3cb1e7bb5a54432ded154b5f9f0297
|
|
| BLAKE2b-256 |
906eac60a4d61cdc011f5546494eb06bcf4ae5676dff49ba99d1fe4c7b53af6b
|