Skip to content

Commit e228e62

Browse files
committed
docs: add mkdocs documentation site
1 parent befab4e commit e228e62

22 files changed

+5613
-1
lines changed

.github/workflows/docs.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Deploy Documentation
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- 'docs/**'
9+
- 'mkdocs.yml'
10+
- '.github/workflows/docs.yml'
11+
workflow_dispatch:
12+
13+
permissions:
14+
contents: write
15+
16+
jobs:
17+
deploy:
18+
runs-on: ubuntu-latest
19+
steps:
20+
- uses: actions/checkout@v4
21+
with:
22+
fetch-depth: 0
23+
24+
- name: Setup Python
25+
uses: actions/setup-python@v5
26+
with:
27+
python-version: 3.x
28+
29+
- name: Cache dependencies
30+
uses: actions/cache@v4
31+
with:
32+
key: ${{ github.ref }}
33+
path: .cache
34+
35+
- name: Install dependencies
36+
run: |
37+
pip install -r docs-requirements.txt
38+
39+
- name: Build and deploy
40+
run: |
41+
mkdocs gh-deploy --force

.gitignore

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,8 @@ env/
4444
.DS_Store
4545
Thumbs.db
4646

47-
test.py
47+
# MkDocs
48+
site/
49+
.cache/
50+
51+
test.py

API_DOCS_COMPLETE.md

Lines changed: 265 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,265 @@
1+
# API 文档已补充完成! ✅
2+
3+
## 新增的 API 文档
4+
5+
我已经为你创建了完整的 API 参考文档:
6+
7+
### 1. 工具 API 参考 (`docs/api/tools-reference.md`) ✅
8+
9+
**内容**:
10+
11+
- 📊 **账户管理** (5 个工具)
12+
13+
- `get_account_balance` - 获取余额
14+
- `get_open_positions` - 获取仓位
15+
- `get_open_orders` - 获取订单
16+
- `get_trade_history` - 交易历史
17+
- `get_account_summary` - 账户概览
18+
19+
- 📈 **交易工具** (4 个工具)
20+
21+
- `place_limit_order` - 限价单
22+
- `market_open_position` - 市价开仓
23+
- `market_close_position` - 市价平仓
24+
- `place_bracket_order` - 括号订单
25+
- `close_position` - 关闭仓位
26+
27+
- 🎯 **止盈止损管理** (3 个工具)
28+
29+
- `set_take_profit_stop_loss` - 设置 TP/SL
30+
- `set_take_profit` - 只设置止盈
31+
- `set_stop_loss` - 只设置止损
32+
33+
- 📝 **订单管理** (4 个工具)
34+
35+
- `cancel_order` - 取消订单
36+
- `cancel_order_by_client_id` - 按客户端 ID 取消
37+
- `cancel_all_orders` - 批量取消
38+
- `modify_order` - 修改订单
39+
40+
- 💹 **市场数据** (3 个工具)
41+
42+
- `get_market_data` - 市场数据
43+
- `get_orderbook` - 订单簿
44+
- `get_funding_history` - 资金费率
45+
46+
- ⚙️ **账户设置** (2 个工具)
47+
48+
- `update_leverage` - 更新杠杆
49+
- `transfer_between_spot_and_perp` - 转账
50+
51+
- 🧮 **实用工具** (1 个工具)
52+
- `calculate_token_amount_from_dollars` - 美元转代币
53+
54+
**特色**:
55+
56+
- ✨ 每个工具都有详细的参数说明
57+
- 📝 完整的代码示例
58+
- ⚠️ 重要提示和警告框
59+
- 💡 使用技巧和最佳实践
60+
61+
### 2. 返回格式说明 (`docs/api/response-format.md`) ✅
62+
63+
**内容**:
64+
65+
- 标准响应格式(成功/失败)
66+
- 所有工具的返回示例
67+
- 字段详细说明
68+
- 最佳实践
69+
70+
**包含**:
71+
72+
- ✅ 账户信息返回格式
73+
- ✅ 交易操作返回格式
74+
- ✅ 订单管理返回格式
75+
- ✅ 市场数据返回格式
76+
- ✅ 错误响应格式
77+
- ✅ 字段说明表格
78+
79+
### 3. 错误处理指南 (`docs/api/error-handling.md`) ✅
80+
81+
**内容**:
82+
83+
- 6 种错误类型详解
84+
- 错误处理模式
85+
- 常见错误场景及解决方案
86+
- 日志记录和恢复策略
87+
88+
**错误类型**:
89+
90+
1. `VALIDATION_ERROR` - 验证错误
91+
2. `INSUFFICIENT_BALANCE` - 余额不足
92+
3. `POSITION_NOT_FOUND` - 仓位未找到
93+
4. `ORDER_NOT_FOUND` - 订单未找到
94+
5. `API_ERROR` - API 错误
95+
6. `INVALID_PRICE/SIZE` - 价格/数量无效
96+
97+
**错误处理模式**:
98+
99+
- 基础错误检查
100+
- 详细错误处理
101+
- 异常处理
102+
- 防御性编程
103+
104+
**实用示例**:
105+
106+
- ✅ 重试机制
107+
- ✅ 降级策略
108+
- ✅ 日志记录
109+
- ✅ 错误恢复
110+
111+
## 📁 完整文档结构
112+
113+
```
114+
docs/
115+
├── index.md ✅ 首页
116+
├── getting-started/ ✅ 快速开始
117+
│ ├── installation.md ✅ 安装指南
118+
│ ├── configuration.md ✅ 配置指南
119+
│ └── quick-start.md ✅ 快速验证
120+
├── api/ ✅ API 参考(新增)
121+
│ ├── tools-reference.md ✅ 工具 API 参考
122+
│ ├── response-format.md ✅ 返回格式
123+
│ └── error-handling.md ✅ 错误处理
124+
├── guides/ 🚧 使用指南(待补充)
125+
│ ├── mcp-integration.md 🚧 MCP 集成
126+
│ ├── trading-tools.md 🚧 交易工具
127+
│ ├── account-management.md 🚧 账户管理
128+
│ ├── market-data.md 🚧 市场数据
129+
│ └── use-cases.md 🚧 常见用例
130+
├── developers/ 🚧 开发者文档(待补充)
131+
│ ├── architecture.md 🚧 架构设计
132+
│ ├── testing.md 🚧 测试工具
133+
│ └── contributing.md 🚧 贡献指南
134+
├── troubleshooting.md ✅ 故障排除
135+
└── changelog.md ✅ 更新日志
136+
```
137+
138+
## 🎯 API 文档亮点
139+
140+
### 1. 详尽的工具说明
141+
142+
每个工具都包含:
143+
144+
- **参数列表**:类型、默认值、说明
145+
- **返回示例**:实际的 JSON 响应
146+
- **代码示例**:Python 调用示例
147+
- **注意事项**:重要提示和警告
148+
149+
### 2. 突出 Size 参数问题
150+
151+
特别强调了最容易出错的 `size` 参数:
152+
153+
!!! warning "重要"
154+
**`size` 参数是代币数量,不是美元金额!** - ✅ `0.1` = 0.1 个 BTC 代币 - ❌ `20.0` ≠ $20 美元
155+
156+
### 3. 清晰的错误处理
157+
158+
提供了:
159+
160+
- 所有错误类型的详细说明
161+
- 实际的错误响应示例
162+
- 具体的解决方案代码
163+
- 重试和降级策略
164+
165+
### 4. 最佳实践
166+
167+
每个章节都包含最佳实践:
168+
169+
- ✅ 使用前验证
170+
- ✅ 错误检查
171+
- ✅ 日志记录
172+
- ✅ 重试机制
173+
174+
## 🔍 快速预览
175+
176+
### 工具 API 参考
177+
178+
````markdown
179+
### market_open_position
180+
181+
使用市价单开仓(最优执行)。
182+
183+
**参数**:
184+
185+
- `coin` (str): 交易对
186+
- `side` (str): "buy" 做多 或 "sell" 做空
187+
- `size` (float): **代币数量**(不是美元金额!)
188+
189+
**示例**:
190+
​```python
191+
192+
# 先计算代币数量
193+
194+
calc = calculate_token_amount_from_dollars("BTC", 100.0)
195+
196+
# 开多仓
197+
198+
order = market_open_position("BTC", "buy", calc["token_amount"])
199+
​```
200+
````
201+
202+
### 错误处理示例
203+
204+
```python
205+
result = place_limit_order("BTC", "buy", 0.1, 45000)
206+
207+
if not result["success"]:
208+
error_code = result.get("error_code")
209+
210+
if error_code == "INSUFFICIENT_BALANCE":
211+
print("余额不足,请充值或减少订单大小")
212+
elif error_code == "API_ERROR":
213+
print("API 错误,稍后重试")
214+
```
215+
216+
## 📊 文档统计
217+
218+
- **总页面数**: 10+ 页
219+
- **API 工具数**: 25+ 个
220+
- **代码示例**: 50+ 个
221+
- **错误类型**: 6 种
222+
- **最佳实践**: 多个章节
223+
224+
## 🚀 下一步
225+
226+
### 还需要补充的文档:
227+
228+
1. **使用指南** (`docs/guides/`)
229+
230+
- MCP 客户端集成教程
231+
- 交易工具详细使用
232+
- 账户管理指南
233+
- 市场数据获取
234+
- 常见使用场景
235+
236+
2. **开发者文档** (`docs/developers/`)
237+
- 架构设计说明
238+
- 测试工具使用
239+
- 贡献指南
240+
241+
需要我继续补充这些文档吗?
242+
243+
## 📖 查看文档
244+
245+
```bash
246+
# 本地预览
247+
make docs-serve
248+
249+
# 或直接使用 mkdocs
250+
mkdocs serve
251+
```
252+
253+
访问 http://127.0.0.1:8000 查看完整文档!
254+
255+
---
256+
257+
**API 文档已经完整创建!** 🎉
258+
259+
现在用户可以查看:
260+
261+
- ✅ 所有工具的完整 API 参考
262+
- ✅ 详细的返回格式说明
263+
- ✅ 全面的错误处理指南
264+
- ✅ 丰富的代码示例
265+
- ✅ 最佳实践建议

Makefile

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,12 @@ help:
5959
@echo " make publish - 发布到 PyPI"
6060
@echo " make version - 显示当前版本"
6161
@echo ""
62+
@echo "文档:"
63+
@echo " make docs-install - 安装文档依赖"
64+
@echo " make docs-serve - 本地预览文档 ⭐"
65+
@echo " make docs-build - 构建文档"
66+
@echo " make docs-deploy - 部署到 GitHub Pages"
67+
@echo ""
6268
@echo "快捷命令:"
6369
@echo " make all - clean + build"
6470
@echo " make release - clean + build + publish"
@@ -280,3 +286,36 @@ full-release:
280286
@echo "🎉 发布完成!别忘了:"
281287
@echo " git push origin main"
282288
@echo " git push origin v$$(grep '^version = ' pyproject.toml | cut -d'"' -f2)"
289+
290+
# ============================================================================
291+
# 文档命令
292+
# ============================================================================
293+
294+
# 安装文档依赖
295+
docs-install:
296+
@echo "📦 安装文档依赖..."
297+
pip install -r docs-requirements.txt
298+
299+
# 本地预览文档
300+
docs-serve:
301+
@echo "🌐 启动文档服务器..."
302+
@echo "📖 浏览器访问 http://127.0.0.1:8000"
303+
mkdocs serve
304+
305+
# 构建文档
306+
docs-build:
307+
@echo "📚 构建文档..."
308+
mkdocs build
309+
@echo "✅ 文档已构建到 site/ 目录"
310+
311+
# 部署文档到 GitHub Pages
312+
docs-deploy:
313+
@echo "🚀 部署文档到 GitHub Pages..."
314+
mkdocs gh-deploy --force
315+
@echo "✅ 文档已部署"
316+
317+
# 清理文档构建
318+
docs-clean:
319+
@echo "🧹 清理文档构建..."
320+
rm -rf site/
321+
@echo "✅ 清理完成"

Makefile.docs

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# 构建文档网站
2+
.PHONY: docs-build
3+
docs-build:
4+
@echo "📚 Building documentation..."
5+
mkdocs build
6+
7+
# 本地预览文档
8+
.PHONY: docs-serve
9+
docs-serve:
10+
@echo "🌐 Starting documentation server..."
11+
@echo "📖 Open http://127.0.0.1:8000 in your browser"
12+
mkdocs serve
13+
14+
# 部署文档到 GitHub Pages
15+
.PHONY: docs-deploy
16+
docs-deploy:
17+
@echo "🚀 Deploying documentation to GitHub Pages..."
18+
mkdocs gh-deploy --force
19+
20+
# 安装文档依赖
21+
.PHONY: docs-install
22+
docs-install:
23+
@echo "📦 Installing documentation dependencies..."
24+
pip install -r docs-requirements.txt
25+
26+
# 清理文档构建
27+
.PHONY: docs-clean
28+
docs-clean:
29+
@echo "🧹 Cleaning documentation build..."
30+
rm -rf site/

0 commit comments

Comments
 (0)