feat(crypto策略): 支持巴菲特策略纯 rawMessage 信号推送
Motivation: 新增巴菲特激进/稳健策略(PUTEJJ/PUTEWJ)的跟单推送能力。该类信号仅有 rawMessage、无 action 字段,需按原文直接推送,并过滤启动文案、本地化时间字段。 Changes: * 支持无 action 的纯 rawMessage 信号,映射为 trade.message 事件 * 新增 not_contains 条件操作符,用于过滤启动文案 * 新增 replace 模板函数,将 Time: 替换为推送时间: * 补充巴菲特策略模板、规则与渠道配置文档
This commit is contained in:
@@ -718,3 +718,92 @@ curl -X POST 'http://localhost:8080/api/v1/rules' \
|
||||
"enabled": 1
|
||||
}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 巴菲特激进 / 稳健(trade-signal)
|
||||
|
||||
Source:`trade-signal`。渠道:`safew_巴菲特策略`、`safew_巴菲特策略2`、`safew_巴菲特策略3`(三个不同群;`巴菲特02/03` 与策略2/3 是同一 chat,不要重复绑)。
|
||||
|
||||
策略 code:激进 `PUTEJJ`、稳健 `PUTEWJ`,共用上游 `rawMessage`(激进版 / 稳健版文案已在原文里)。加仓也是「市价开多/开空」,走开仓规则。
|
||||
|
||||
兜底 `rule-11` 需 `strategyCode ne PUTEJJ` 且 `ne PUTEWJ`,避免再发到测试AI。
|
||||
|
||||
启动文案(`普达特量化机器人…启动`)不含「市价开 / 平仓 / 本周期」,三条规则都匹配不上,等于过滤。
|
||||
|
||||
开仓 `rawMessage` 示例:
|
||||
|
||||
```
|
||||
激进版AI 1.0
|
||||
市价开空
|
||||
交易品种: BTC
|
||||
开空数量: 1.00
|
||||
开空价格: 63578.00
|
||||
持仓数量: 1.00
|
||||
平均价格: 63578.00
|
||||
浮动盈亏: 0.00
|
||||
账户净值: 101286.40
|
||||
账户余额:101286.40
|
||||
Time: 2026.08.17 14:46:04
|
||||
```
|
||||
|
||||
### 创建模板
|
||||
|
||||
```bash
|
||||
curl -X POST 'http://localhost:8080/api/v1/templates' \
|
||||
-H 'Authorization: Bearer admin-sk-change-me' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{
|
||||
"name": "巴菲特策略",
|
||||
"content": "{{if .rawMessage}}{{replace .rawMessage \"Time:\" \"推送时间:\"}}{{else}}{{.formatted}}{{end}}"
|
||||
}'
|
||||
```
|
||||
|
||||
线上若尚未部署 `replace`,先用 `{{if .rawMessage}}{{.rawMessage}}{{else}}{{.formatted}}{{end}}`。
|
||||
|
||||
### 创建开仓 / 平仓 / 提现规则
|
||||
|
||||
```bash
|
||||
curl -X POST 'http://localhost:8080/api/v1/rules' \
|
||||
-H 'Authorization: Bearer admin-sk-change-me' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{
|
||||
"name": "巴菲特开仓",
|
||||
"source_name": "trade-signal",
|
||||
"event": "trade.*",
|
||||
"template_name": "巴菲特策略",
|
||||
"channels": ["safew_巴菲特策略", "safew_巴菲特策略2", "safew_巴菲特策略3"],
|
||||
"conditions": [{"field": "rawMessage", "op": "contains", "value": "市价开"}],
|
||||
"enabled": 1
|
||||
}'
|
||||
```
|
||||
|
||||
```bash
|
||||
curl -X POST 'http://localhost:8080/api/v1/rules' \
|
||||
-H 'Authorization: Bearer admin-sk-change-me' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{
|
||||
"name": "巴菲特平仓",
|
||||
"source_name": "trade-signal",
|
||||
"event": "trade.*",
|
||||
"template_name": "巴菲特策略",
|
||||
"channels": ["safew_巴菲特策略", "safew_巴菲特策略2", "safew_巴菲特策略3"],
|
||||
"conditions": [{"field": "rawMessage", "op": "contains", "value": "平仓"}],
|
||||
"enabled": 1
|
||||
}'
|
||||
```
|
||||
|
||||
```bash
|
||||
curl -X POST 'http://localhost:8080/api/v1/rules' \
|
||||
-H 'Authorization: Bearer admin-sk-change-me' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{
|
||||
"name": "巴菲特提现",
|
||||
"source_name": "trade-signal",
|
||||
"event": "trade.*",
|
||||
"template_name": "巴菲特策略",
|
||||
"channels": ["safew_巴菲特策略", "safew_巴菲特策略2", "safew_巴菲特策略3"],
|
||||
"conditions": [{"field": "rawMessage", "op": "contains", "value": "本周期"}],
|
||||
"enabled": 1
|
||||
}'
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user