From 4097ef07c0b62e4b2120d5296d3d86b9bfbd487e Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 23 Sep 2026 11:48:47 +0800
Subject: [PATCH] feat(stations): 添加止盈触发对向加仓功能
---
src/main/resources/db/station-schema.sql | 39 ++++++++++++++++++++++++++++++++++++++-
1 files changed, 38 insertions(+), 1 deletions(-)
diff --git a/src/main/resources/db/station-schema.sql b/src/main/resources/db/station-schema.sql
index f6ae3fa..0347ff6 100644
--- a/src/main/resources/db/station-schema.sql
+++ b/src/main/resources/db/station-schema.sql
@@ -4,6 +4,7 @@
CREATE TABLE IF NOT EXISTS `strategy_status` (
`id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`api_key_md5` VARCHAR(64) NOT NULL COMMENT 'apiKey MD5',
+ `alias_name` VARCHAR(64) DEFAULT NULL COMMENT '实例别名(Station 端自定义显示名)',
`contract` VARCHAR(32) DEFAULT NULL COMMENT '合约名称',
`state` VARCHAR(32) DEFAULT NULL COMMENT '策略状态:ACTIVE / STOPPED / WAITING_KLINE',
`leverage` VARCHAR(16) DEFAULT NULL COMMENT '杠杆倍数',
@@ -20,8 +21,13 @@
`add_position_quantity` INT(11) DEFAULT 0 COMMENT '加仓数量',
`max_position_per_side` INT(11) DEFAULT 0 COMMENT '单边最大仓位',
`add_position_start_threshold` INT(11) DEFAULT 0 COMMENT '加仓启动阈值',
- `place_excess_take_profit` TINYINT(1) DEFAULT 0 COMMENT '超额止盈开关',
+ `place_excess_take_profit` VARCHAR(16) DEFAULT 'off' COMMENT '止盈挂单模式:off / concentrated / dispersed',
`price_drive_enabled` TINYINT(1) DEFAULT 1 COMMENT '价格驱动开关',
+ `dual_stop_loss_enabled` TINYINT(1) DEFAULT 0 COMMENT '双开止损触发开关',
+ `long_stop_loss_price` VARCHAR(32) DEFAULT NULL COMMENT '多头止损触发价',
+ `short_stop_loss_price` VARCHAR(32) DEFAULT NULL COMMENT '空头止损触发价',
+ `tp_trigger_opposite_add_enabled` TINYINT(1) DEFAULT 0 COMMENT '止盈成交触发对向加仓开关',
+ `tp_trigger_opposite_add_quantity` INT(11) DEFAULT 0 COMMENT '对向加仓挂单数量',
`current_round` INT(11) DEFAULT 0 COMMENT '当前轮次',
`total_rounds` INT(11) DEFAULT 0 COMMENT '总轮数上限',
`accumulated_long_loss` INT(11) DEFAULT 0 COMMENT '多头累计止损次数',
@@ -69,3 +75,34 @@
ADD COLUMN `stop_loss_count` INT(11) DEFAULT 0 COMMENT '止损阶梯次数' AFTER `base_quantity`,
ADD COLUMN `take_profit_grid_span` INT(11) DEFAULT 2 COMMENT '止盈网格跨度' AFTER `base_quantity`,
ADD COLUMN `price_drive_enabled` TINYINT(1) DEFAULT 1 COMMENT '价格驱动开关' AFTER `place_excess_take_profit`;
+
+-- ============================================================
+-- 实例别名(Station 端自定义显示名,2026-08 新增)
+-- ============================================================
+ALTER TABLE `strategy_status`
+ ADD COLUMN `alias_name` VARCHAR(64) DEFAULT NULL COMMENT '实例别名(Station 端自定义显示名)' AFTER `api_key_md5`;
+
+-- ============================================================
+-- 升级脚本:双开止损触发价参数(2026-09 新增)
+-- ============================================================
+ALTER TABLE `strategy_status`
+ ADD COLUMN `dual_stop_loss_enabled` TINYINT(1) DEFAULT 0 COMMENT '双开止损触发开关' AFTER `price_drive_enabled`,
+ ADD COLUMN `long_stop_loss_price` VARCHAR(32) DEFAULT NULL COMMENT '多头止损触发价' AFTER `dual_stop_loss_enabled`,
+ ADD COLUMN `short_stop_loss_price` VARCHAR(32) DEFAULT NULL COMMENT '空头止损触发价' AFTER `long_stop_loss_price`;
+
+-- ============================================================
+-- 升级脚本:止盈挂单模式从布尔开关升级为三态字符串(2026-09 新增)
+-- off=关闭 / concentrated=集中止盈 / dispersed=分散止盈
+-- ============================================================
+ALTER TABLE `strategy_status`
+ MODIFY COLUMN `place_excess_take_profit` VARCHAR(16) DEFAULT 'off' COMMENT '止盈挂单模式:off / concentrated / dispersed';
+-- 旧数据迁移:1(开启)→concentrated,0(关闭)→off
+UPDATE `strategy_status` SET `place_excess_take_profit` = 'concentrated' WHERE `place_excess_take_profit` = '1';
+UPDATE `strategy_status` SET `place_excess_take_profit` = 'off' WHERE `place_excess_take_profit` = '0';
+
+-- ============================================================
+-- 升级脚本:止盈成交触发对向加仓(2026-09 新增)
+-- ============================================================
+ALTER TABLE `strategy_status`
+ ADD COLUMN `tp_trigger_opposite_add_enabled` TINYINT(1) DEFAULT 0 COMMENT '止盈成交触发对向加仓开关' AFTER `short_stop_loss_price`,
+ ADD COLUMN `tp_trigger_opposite_add_quantity` INT(11) DEFAULT 0 COMMENT '对向加仓挂单数量' AFTER `tp_trigger_opposite_add_enabled`;
--
Gitblit v1.9.1