关于 kodiak-strategy
kodiak-strategy 是用于 OpenClaw 的交易策略技能,每三分钟扫描 SOL 信号,并按三种模式管理策略。扫描器负责识别入场机会,插件运行时的 DSL 负责退出和持仓跟踪。
主要功能
- 01每三分钟评估 SOL 信号
- 02狩猎、持仓与伺机三种模式
- 03入场门槛与保证金规则
- 04由 DSL 管理退出和持仓
- 05运行时检查与通知
适用场景
- 01扫描 SOL 的多信号共振入场机会
- 02通过 DSL 管理活跃持仓
- 03在会话开始时检查运行时配置
MCP 相关
技能要求在引导设置时验证 Senpi MCP。扫描器配置包含 MCP 相关辅助功能,插件运行时负责持仓跟踪和 DSL 退出。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ senpi-ai/ senpi-skills --skill kodiak-strategy安装后在 Claude Code 中输入/kodiak-strategy确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdruntime.yamlconfig/kodiak-config.jsonreferences/skill-attribution.mdscripts/kodiak_config.pykodiak-producer.py详细介绍
🐻 KODIAK v7.0.0 — SOL Alpha 猎手
一个资产。所有信号。扫描器负责入场。DSL 负责离场。
⛔ Agent 关键规则
规则 1:安装路径为 /data/workspace/skills/kodiak-strategy/
规则 2:扫描器不会平仓
扫描器发现有活跃的 SOL 持仓时,会输出 NO_REPLY。DSL 是唯一的离场机制。v1.1.1 曾有一个论点退出机制,在 DSL 开始追踪之前就提前平仓。v2.0 已彻底移除该机制。
规则 3:最多 1 个持仓——仅限 SOL
规则 4:扫描器输出具有权威性
规则 5:每次会话启动时都要确认运行时已安装
运行 openclaw senpi runtime list。运行时必须列在列表中。持仓追踪器和 DSL 离场由插件运行时处理。
规则 6:绝不修改参数。杠杆绝不超过 7x。
规则 7:连续亏损后冷却 120 分钟
相较于 v1.1.1 的变更
| v1.1.1 | v2.0 |
|---|---|
| RIDING 模式下论点退出机制仍启用 | 已移除——DSL 管理所有离场 |
| DSL 状态缺少钱包和仓位规模 | 已包含所有字段 |
| 杠杆为 10-12x | 上限为 7x |
| Retrace 为 0.03(ROE 3% = 10x 杠杆下价格变动 0.3%) | 0.08(ROE 8% = 7x 杠杆下价格变动 1.14%) |
strategy_id 在 run() 中被丢弃 | 已捕获并传递给 DSL 构建器 |
| SOL SHORT 持仓有 13 小时未受保护 | 每个持仓从第 1 秒起都受到保护 |
v1.1.1 概念验证
Kodiak 的最佳交易:SOL SHORT,入场价 $90.36,DSL 追踪至 Tier 4(ROE +44%),在 $85.86 离场,实现利润 +$134。扫描器找到了这个机会。DSL 完美管理离场——锁定峰值利润的 85%,从峰值回吐仅 $3。
问题是:由于状态文件缺少钱包字段,这笔交易在入场 13 小时后才手动接入 DSL。v2.0 永久解决了这个问题。
三模式生命周期
模式 1——HUNTING(默认)
每 3 分钟扫描一次 SOL。所有信号必须一致(4h 趋势、1h 动量、SM、资金费率、OI、交易量)。得分达到 10+ 才入场。持仓建立后,切换到模式 2。
模式 2——RIDING
持仓活跃。DSL 通过插件运行时管理离场。扫描器输出 NO_REPLY。 扫描器不会重新评估交易论点,也不会平仓。 插件 DSL 会在第 1 阶段保护和第 2 阶段追踪档位期间持续追踪持仓。DSL 平仓后,切换到模式 3。
模式 3——STALKING
DSL 已锁定利润。等待重新入场机会。所有重新入场条件都必须满足:新的动量脉冲、OI 稳定、有交易量、资金费率未过度拥挤、SM 仍保持一致、4h 趋势未变。
如果触发重新入场 → 同方向重新入场,切换到模式 2。 如果触发止损条件 → 重置为模式 1。
Cron 设置
扫描器(3 分钟,主任务):
python3 /data/workspace/skills/kodiak-strategy/scripts/kodiak-scanner.py
KODIAK 的交易方式
入场(要求得分 >= 10)
扫描器每 3 分钟根据所有信号来源评估 SOL:
| 信号 | 分值 | 必需? |
|---|---|---|
| 4h 趋势结构(更高的低点 / 更低的高点) | 3 | 是 |
| 1h 趋势与 4h 趋势一致 | 2 | 是 |
| 15m 动量确认方向 | 0-1 | 是 |
| 5m 一致性(所有 4 个时间周期方向一致) | 1 | 否 |
| SM 与方向一致 | 2-3 | 方向相反时禁止入场 |
| 持有该方向可获得资金费率 | 2 | 否 |
| 交易量高于平均水平 | 1-2 | 否 |
| OI 增长 | 1 | 否 |
| BTC 确认走势 | 1 | 否 |
| RSI 有余量 | 1 | 否(阻止超买 / 超卖时入场) |
| 4h 动量强度 | 1 | 否 |
最高得分约为 18。最低入场得分:10。
按置信度调整杠杆
| 得分 | 杠杆 |
|---|---|
| 10-11 | 7x |
| 12+ | 7x |
按置信度调整保证金
| 得分 | 保证金 |
|---|---|
| 10-11 | 账户的 20% |
| 12-13 | 25% |
| 14+ | 30% |
离场管理
DSL 离场由插件运行时通过 runtime.yaml 处理。position_tracker 扫描器会自动检测链上持仓的开仓和平仓。配置详情请参阅 runtime.yaml。
监控持仓:
openclaw senpi dsl positions— 列出所有由 DSL 追踪的持仓openclaw senpi dsl inspect <ASSET>— 查看完整持仓详情
为什么只交易 SOL 并使用 7 倍杠杆
风险
| 规则 | 数值 |
|---|---|
| 最大持仓数 | 1(仅 SOL) |
| 最大杠杆 | 7 倍 |
| 第一阶段回撤 | 0.08 |
| 每日亏损上限 | 10% |
| 冷却时间 | 连续亏损 3 次后冷却 120 分钟 |
运行时设置
步骤 1: 在 runtime.yaml 中设置策略钱包地址:
sed -i 's/${WALLET_ADDRESS}/<STRATEGY_WALLET_ADDRESS>/' /data/workspace/skills/kodiak-strategy/runtime.yaml
将 <STRATEGY_WALLET_ADDRESS> 替换为实际的钱包地址。
步骤 2: 设置用于接收通知的 Telegram 聊天 ID:
sed -i 's/${TELEGRAM_CHAT_ID}/<CHAT_ID>/' /data/workspace/skills/kodiak-strategy/runtime.yaml
将 <CHAT_ID> 替换为实际的 Telegram 聊天 ID。
步骤 3: 安装运行时:
openclaw senpi runtime create --path /data/workspace/skills/kodiak-strategy/runtime.yaml
步骤 4: 验证:
openclaw senpi runtime list
引导检查
每次会话启动时,都要检查 config/bootstrap-complete.json。如果文件不存在:
- 阅读
senpi-trading-runtime技能,其中提供了运行时管理和 DSL 持仓检查所需的所有 CLI 命令。 - 验证 Senpi MCP
- 在 runtime.yaml 中设置钱包:
sed -i 's/${WALLET_ADDRESS}/ACTUAL_ADDRESS/' /data/workspace/skills/kodiak-strategy/runtime.yaml - 在 runtime.yaml 中设置 Telegram:
sed -i 's/${TELEGRAM_CHAT_ID}/CHAT_ID/' /data/workspace/skills/kodiak-strategy/runtime.yaml - 安装运行时:
openclaw senpi runtime create --path /data/workspace/skills/kodiak-strategy/runtime.yaml - 验证运行时已安装:
openclaw senpi runtime list - 删除旧的 DSL cron(如果是升级):运行
openclaw crons list,通过openclaw crons delete <id>删除所有包含dsl-v5.py的 cron - 创建扫描器 cron(每 3 分钟运行一次,隔离运行)
- 写入
config/bootstrap-complete.json - 发送:“KODIAK 已上线。正在监控 SOL。DSL 由插件运行时管理。没有消息 = 没有足够把握。”
如果引导文件已存在,每次会话启动时仍要验证运行时和扫描器 cron。
通知策略
仅在以下情况发送提醒: 持仓已开仓(方向、杠杆、评分、原因)、持仓已平仓(DSL 平仓及盈亏)、风险守护程序已触发、严重错误。 绝不发送提醒: 扫描器未发现交易逻辑、交易逻辑重新评估通过、任何推理过程。
预期行为
| 指标 | 预期值 |
|---|---|
| 每日交易次数 | 1-3 |
| 平均持仓时间 | 1-12 小时 |
| 胜率 | ~45-55% |
| 平均盈利交易 | 20-50%+ ROE |
| 平均亏损交易 | -20 至 -40% ROE |
文件
| 文件 | 用途 |
|---|---|
scripts/kodiak-scanner.py | SOL 交易逻辑构建器 + 追踪/重载 |
scripts/kodiak_config.py | 配置助手(MCP、状态、冷却时间) |
config/kodiak-config.json | 钱包、策略 ID、可配置变量 |
runtime.yaml | 插件运行时配置(DSL 平仓 + 持仓追踪器) |
许可证
MIT — 由 Senpi 构建(https://senpi.ai)。 来源:https://github.com/Senpi-ai/senpi-skills
技能归属信息
创建策略时,在调用中加入 skill_name 和 skill_version。详情请参阅 references/skill-attribution.md。