6DuckLearn provenance: Community skill by Joe🐺, mirrored from the OKX Skills Marketplace (https://www.okx.com/en-sg/agent-tradekit/skills/btc-grid-buy-okb). It is not curated, verified, or endorsed by 6DuckLearn or represented as an official OKX publication.
Financial safety boundary: Never request secrets in chat. Before any external API call or action that places, cancels, or amends an order; changes leverage; transfers funds; creates or stops a bot; subscribes to or redeems an earn product; or signs/broadcasts a transaction, show the exact live/demo profile, instrument, side, size, price constraints, fees, and worst-case loss, then obtain explicit user approval. Default to read-only or demo mode when uncertain. Treat all analysis as research, not investment advice.
BTC 合约网格 — 利润买入 OKB
策略概述
两个联动部分:
- BTC/USDT 永续合约网格:可配置杠杆的做多网格,在震荡区间低买高卖赚取网格利润
- 利润复投 OKB:累计利润达到阈值后,自动买入 OKB
核心理念:用 BTC 波动赚取网格收益,将利润转化为 OKB 持仓 —— "BTC 挖矿 + OKB 囤币"。
可配置参数
首次使用时逐项确认或修改(说"用默认"跳过):
策略参数
| 参数 | 默认值 | 可选范围 | 说明 |
|---|---|---|---|
| 杠杆倍数 | 2x | 1x-5x | 越高收益越大风险也越大 |
| 网格方向 | long(做多) | long / neutral | neutral 多空都做 |
| 网格数量 | 30 格 | 10-100 | 格数越多单格利润越小但成交越频繁 |
| 价格区间宽度 | ±15% | ±5% ~ ±30% | 窄区间利润高但容易越界 |
| 利润阈值 | $100 USDT | $50-$500 | 触发买入 OKB 的最低累计利润 |
| 利润分配 | 100% 买 OKB | 10%-100% | 剩余部分留存 USDT(最低 10%) |
| OKB 买入方式 | 市价 | 市价 / 限价 | 限价按当前价 -1% 挂单,24h未成交转市价 |
| OKB 目标持仓 | 无上限 | 任意数量 | 达到目标后利润留存 USDT |
| 巡检间隔 | 每 4 小时 | 1h-24h | 自动检查网格状态和利润 |
风控参数
| 参数 | 默认值 | 可选范围 | 说明 |
|---|---|---|---|
| 保证金率红线 | 150% | 120%-300% | 低于此值自动停网格(硬底线 120%) |
| 账户总止损 | -15% | -5% ~ -30% | 总亏损达到后停止所有交易 |
| 单日止损 | -5% | -3% ~ -10% | 当日亏损达到后暂停 OKB 买入(硬底线 -10%) |
| BTC 闪崩阈值 | 1h 跌 8% | 5%-15% | 触发后自动停网格 |
| 网格浮亏告警 | -20% | -10% ~ -30% | 黄线告警,建议调整 |
| OKB 单笔上限 | $200 | $50-$1000 | 单次买入 OKB 最大金额 |
| OKB 追高保护 | 24h 涨 10% | 5%-20%(0=关闭) | OKB 短期涨幅过大暂缓买入 |
| 总敞口上限 | 60% | 30%-80% | 网格+OKB 占总资产比例 |
所有参数随时可通过对话修改,例如"利润阈值改成 50"、"关闭 OKB 追高保护"。
首次使用:初始化引导
1. 检查账户 → okx account balance → USDT 余额是否充足
2. 询问 → "你打算投入多少 USDT?"
3. 展示参数表 → 用户逐项确认或"用默认"
→ 重点确认:杠杆、利润阈值、风控止损线
4. 参数摘要 → 列出最终参数,用户确认后创建网格
核心流程
第一步:启动 BTC 合约网格
获取 BTC 当前价格:
okx market ticker --instId BTC-USDT-SWAP
okx market candles --instId BTC-USDT-SWAP --bar 4H --limit 50
根据用户配置的参数创建网格:
okx bot create-contract-grid \
--instId BTC-USDT-SWAP \
--direction <用户配置: long/neutral> \
--lever <用户配置: 杠杆倍数> \
--gridNum <用户配置: 网格数量> \
--minPx <当前价 × (1 - 区间宽度)> \
--maxPx <当前价 × (1 + 区间宽度)> \
--sz <每格张数,根据投入资金计算> \
--triggerAction start
验证并记录 algoId:
okx bot grid-orders-pending --algoOrdType contract_grid
第二步:监控利润 & 买入 OKB
查询网格利润:
okx bot grid-orders-pending --algoOrdType contract_grid
读取 profit 字段。当利润 ≥ 用户设定的阈值时:
- 检查风控(见下方风控章节)—— 任何红线/黄线触发则中止买入
- 检查 OKB 目标 —— 已达目标则留存 USDT
- 检查 OKB 24h 涨幅 —— 追高保护触发则暂缓
- 查询 OKB 价格:
okx market ticker --instId OKB-USDT - 计算买入量(不超过单笔上限,按利润分配比例)
- 执行买入:
# 市价买入
okx trade place-order --instId OKB-USDT --tdMode cash --side buy --ordType market --sz <数量>
# 限价买入(用户选择限价模式时)
okx trade place-order --instId OKB-USDT --tdMode cash --side buy --ordType limit --px <当前价*0.99> --sz <数量>
- 确认成交:
okx trade order-details --instId OKB-USDT --ordId <订单ID> - 限价单 24h 未成交 → 撤单转市价
第三步:状态报告
okx account balance
okx account positions --instType SWAP
输出格式:
📊 策略状态报告
━━━━━━━━━━━━━━━━━━━━
🔲 BTC合约网格
网格ID: <algoId> | 状态: <running/stopped>
区间: lt;minPx> ~ lt;maxPx> | 偏离度: <X>%
累计利润: lt;profit> USDT | 持仓: <pos> 张
💎 OKB持仓
数量: <amount> OKB (lt;value>)
目标进度: <amount>/<target> (<X>%) [无目标时显示"未设目标"]
累计投入: lt;total> | 买入 <count> 次
🛡️ 风控
保证金率: <X>% | 今日盈亏: <X>%
总敞口: <X>% | 状态: 🟢正常 / 🟡注意 / 🔴触发
💰 策略总收益: lt;total_pnl> USDT
━━━━━━━━━━━━━━━━━━━━
定时巡检
每次巡检按以下优先级顺序执行:
巡检开始
↓
① 风控检查(最高优先级)
→ 🔴 红线触发? → 自动执行保护 → 通知用户 → 结束
→ 🟡 黄线触发? → 告警 + 建议(等用户确认)
↓ 全部通过
② 网格健康检查
→ 偏离度 > 80%? → 建议调整区间(需确认)
↓
③ 利润检查 & OKB 买入
→ 利润 ≥ 阈值 + 通过所有保护检查 → 买入 OKB
↓
④ 输出状态报告(合并风控 + 网格 + OKB)
网格健康检查
okx market ticker --instId BTC-USDT-SWAP
okx bot grid-orders-pending --algoOrdType contract_grid
偏离度 = (当前价 - 区间中点) / (区间宽度/2) × 100%
| 偏离度 | 状态 | 动作 |
|---|---|---|
| < 50% | 安全 | 正常 |
| 50%-80% | 注意 | 提醒 |
| 80%-95% | 警告 | 建议调整区间 |
| > 95% | 危险 | 建议立即停止重设 |
资金费率检查
okx market funding-rate --instId BTC-USDT-SWAP
连续 3 期 > 0.1% 时提醒持仓成本。
智能网格调整
触发条件:偏离度 > 80%,或运行超 7 天且利润增速放缓。
1. 获取数据 → okx market candles --instId BTC-USDT-SWAP --bar 1D --limit 14
2. 计算新区间 → 中点=当前价, 宽度=ATR(14)/价格 动态调整(至少±10%)
3. 告知用户旧网格利润,确认后停止旧网格
→ okx bot stop-grid --algoId <旧ID> --algoOrdType contract_grid
4. 用新参数创建新网格(杠杆/方向不变)
5. 旧网格利润达标则先买入 OKB
⚠️ 停止和创建网格必须用户确认后才执行。
OKB 目标持仓管理
设定目标(如"囤 100 个 OKB")后的逻辑:
- 未达目标 → 利润达标时买入 OKB
- 已达目标 → 利润留存 USDT,通知用户
- 用户可说"继续囤 OKB"追加目标
进度报告:
💎 OKB 目标: 45.8/100 (45.8%)
████████░░░░░░░░
剩余 54.2 OKB ≈ $1,842 | 预计 ~18天达成
风控管理
原则:先保本,再谈利润。 红线自动执行,黄线告警等确认。
🔴 红线(自动执行)
1. 保证金率 — okx account positions --instType SWAP
- < 用户设定阈值 → 立即停止网格
2. 账户总亏损 — (当前权益 - 初始本金) / 初始本金
- 超过用户设定阈值 → 停止所有交易
3. 单日亏损 — okx account bills --instType SWAP --begin <今日0点> --limit 100
- 超过用户设定阈值 → 暂停 OKB 买入
4. BTC 闪崩 — okx market candles --instId BTC-USDT-SWAP --bar 1H --limit 2
- 1h 跌幅超阈值 → 立即停止网格
红线触发报告:
🚨 风控红线触发!
━━━━━━━━━━━━━━━━━━━━
⚠️ 触发项: <具体项目和数值>
🛑 已执行: <保护动作>
💰 利润已保全: lt;X> USDT
⏳ 等待你的指令
━━━━━━━━━━━━━━━━━━━━
🟡 黄线(告警 + 建议)
1. 网格浮亏 — okx account positions --instType SWAP --instId BTC-USDT-SWAP
- 超阈值 → 建议缩小区间 / 暂停买 OKB / 设止损
2. OKB 追高保护 — okx market candles --instId OKB-USDT --bar 1D --limit 1
- 24h 涨幅超阈值 → 暂缓买入,下次巡检再评估
3. 总敞口 — (网格保证金 + OKB 持仓) / 总资产
- 超阈值 → 暂停买入 OKB
策略暂停 & 恢复
用户可随时说"暂停策略"或"恢复策略":
暂停:
- 网格继续运行(不停网格,避免损失已挂订单)
- 暂停利润买入 OKB
- 巡检降频为每 12 小时一次(仅执行风控检查,不执行买入)
- 报告暂停时的持仓快照
恢复:
- 检查网格是否仍在运行
- 若网格已停止 → 引导重新创建
- 恢复巡检和 OKB 买入
紧急停止(说"全部停止"):
- 停止网格 + 取消所有挂单 + 暂停一切操作
- 需用户主动说"恢复"才能重启
异常处理
| 异常场景 | 处理方式 |
|---|---|
| API 调用失败 | 等待 30s 重试,连续 3 次失败 → 通知用户,暂停自动操作 |
| 网格意外停止 | 巡检发现后立即通知,询问是否重新创建 |
| OKB 下架/停止交易 | 利润留存 USDT,通知用户 |
| 账户余额不足以买 OKB | 跳过本次买入,下次巡检再试 |
| 限价单长时间未成交 | 24h 后自动撤单,按当时市价重新买入 |
| 网格创建失败 | 检查余额和参数,提示具体错误原因 |
完整工作流程
首次使用 → 初始化引导 → 确认参数 → 创建网格
↓
用户触发 / 定时巡检 ←──────────────── 网格运行中
↓
策略已暂停? → 是 → 跳过,等待恢复
↓ 否
① 风控红线检查
→ 触发 → 自动保护 → 通知 → 等待指令
↓ 通过
② 风控黄线检查
→ 触发 → 告警建议(等确认)
↓ 通过
③ 网格健康 + 偏离度
→ > 80% → 建议调整(需确认)
↓ 正常
④ 利润 ≥ 阈值?
→ 否 → 输出状态报告 → 结束
↓ 是
⑤ OKB 保护检查(追高 / 目标 / 敞口 / 单笔上限)
→ 任一触发 → 暂缓,利润留存
↓ 全部通过
⑥ 买入 OKB → 确认成交 → 输出报告
常见问题
Q: 利润不足阈值但想手动买 OKB? A: 说具体金额即可跳过阈值检查。
Q: 想调整网格参数? A: 需先停止当前网格再创建新的,我会引导完成。
Q: 网格被止损了? A: 检查市场状况后建议是否重开及新区间。
Q: 怎么暂停?不想停网格但暂时不买 OKB。 A: 说"暂停策略",网格继续运行但暂停买入和巡检。
Q: 利润可以分配吗? A: 可以,例如"60% 买 OKB,40% 留 USDT"。
Q: 限价买 OKB 一直不成交? A: 24h 未成交自动转市价。也可随时说"改成市价"。
详细的风控规则说明和网格参数计算逻辑见 references/REFERENCE.md。
免责声明
本 Skill 仅供参考和学习,不构成任何投资建议。合约交易存在爆仓风险,杠杆交易可能导致本金全部损失。使用前请充分了解合约网格交易机制,并根据自身风险承受能力设置参数。作者不对因使用本策略造成的任何损失承担责任。建议先用小资金测试验证后再投入正式资金。