1
This commit is contained in:
parent
ce54164b63
commit
01c11d62f6
|
|
@ -863,6 +863,8 @@ class ConfigManager:
|
|||
'LEVERAGE': eff_get('LEVERAGE', 10),
|
||||
'USE_DYNAMIC_LEVERAGE': eff_get('USE_DYNAMIC_LEVERAGE', True),
|
||||
'MAX_LEVERAGE': eff_get('MAX_LEVERAGE', 20), # 动态杠杆上限 20,配合单笔仓位提高收益
|
||||
'MIN_LEVERAGE': eff_get('MIN_LEVERAGE', 8), # 动态杠杆下限,不低于此值(之前盈利阶段多为 8x,避免被压到 2–4x 导致单笔盈利过少)
|
||||
'MAX_LEVERAGE_SMALL_CAP': eff_get('MAX_LEVERAGE_SMALL_CAP', 8), # 高波动/小众币最大杠杆,默认 8 与之前盈利阶段一致
|
||||
# 移动止损:默认关闭(避免过早截断利润,让利润奔跑)
|
||||
'USE_TRAILING_STOP': eff_get('USE_TRAILING_STOP', True), # 默认启用(2026-01-27优化:启用移动止损,保护利润)
|
||||
'TRAILING_STOP_ACTIVATION': eff_get('TRAILING_STOP_ACTIVATION', 0.05), # 默认5%(2026-01-27优化:更早保护利润,避免回吐)
|
||||
|
|
|
|||
|
|
@ -389,6 +389,8 @@ const GlobalConfig = () => {
|
|||
MAX_OPEN_POSITIONS: 4,
|
||||
LEVERAGE: 10,
|
||||
MAX_LEVERAGE: 20, // 动态杠杆上限 20,配合单笔仓位提高收益
|
||||
MIN_LEVERAGE: 8, // 动态杠杆下限 8,与之前盈利阶段一致,避免被压到 2–4x
|
||||
MAX_LEVERAGE_SMALL_CAP: 8, // 高波动币也允许 8x,与之前一致
|
||||
USE_DYNAMIC_LEVERAGE: true,
|
||||
|
||||
MIN_VOLUME_24H: 10000000,
|
||||
|
|
@ -469,6 +471,60 @@ const GlobalConfig = () => {
|
|||
MIN_SIGNAL_STRENGTH: 8,
|
||||
},
|
||||
},
|
||||
classic_profit: {
|
||||
name: '之前盈利风格',
|
||||
desc: '对齐 2 月初有盈利时的下单方式:固定 8 倍杠杆、单笔 12%、每笔风险 2.5%,不做动态降杠杆,单笔保证金与盈利空间更接近当时。',
|
||||
configs: {
|
||||
LEVERAGE: 8,
|
||||
USE_DYNAMIC_LEVERAGE: false, // 固定 8x,与之前一致
|
||||
MIN_LEVERAGE: 8,
|
||||
MAX_LEVERAGE: 20,
|
||||
MAX_POSITION_PERCENT: 0.12,
|
||||
MAX_TOTAL_POSITION_PERCENT: 0.45,
|
||||
FIXED_RISK_PERCENT: 0.025, // 略高于 2%,单笔保证金更接近之前
|
||||
MAX_LEVERAGE_SMALL_CAP: 8,
|
||||
ATR_STOP_LOSS_MULTIPLIER: 3.0,
|
||||
RISK_REWARD_RATIO: 3.0,
|
||||
TAKE_PROFIT_1_PERCENT: 0.2,
|
||||
TAKE_PROFIT_PERCENT: 0.30,
|
||||
MIN_RR_FOR_TP1: 1.5,
|
||||
AUTO_TRADE_ALLOW_4H_NEUTRAL: false,
|
||||
MAX_RSI_FOR_LONG: 65,
|
||||
MIN_RSI_FOR_SHORT: 30,
|
||||
SYMBOL_LOSS_COOLDOWN_ENABLED: true,
|
||||
SYMBOL_MAX_CONSECUTIVE_LOSSES: 2,
|
||||
SYMBOL_LOSS_COOLDOWN_SEC: 3600,
|
||||
BETA_FILTER_ENABLED: true,
|
||||
MIN_SIGNAL_STRENGTH: 8,
|
||||
},
|
||||
},
|
||||
classic_profit_amplify: {
|
||||
name: '之前盈利·放大',
|
||||
desc: '在「之前盈利风格」基础上把杠杆提到 10 倍:同保证金下名义更大,盈利与亏损都会按比例放大。适合想进一步放大收益时使用。',
|
||||
configs: {
|
||||
LEVERAGE: 10,
|
||||
USE_DYNAMIC_LEVERAGE: false, // 固定 10x
|
||||
MIN_LEVERAGE: 10,
|
||||
MAX_LEVERAGE: 20,
|
||||
MAX_POSITION_PERCENT: 0.12,
|
||||
MAX_TOTAL_POSITION_PERCENT: 0.45,
|
||||
FIXED_RISK_PERCENT: 0.025,
|
||||
MAX_LEVERAGE_SMALL_CAP: 10,
|
||||
ATR_STOP_LOSS_MULTIPLIER: 3.0,
|
||||
RISK_REWARD_RATIO: 3.0,
|
||||
TAKE_PROFIT_1_PERCENT: 0.2,
|
||||
TAKE_PROFIT_PERCENT: 0.30,
|
||||
MIN_RR_FOR_TP1: 1.5,
|
||||
AUTO_TRADE_ALLOW_4H_NEUTRAL: false,
|
||||
MAX_RSI_FOR_LONG: 65,
|
||||
MIN_RSI_FOR_SHORT: 30,
|
||||
SYMBOL_LOSS_COOLDOWN_ENABLED: true,
|
||||
SYMBOL_MAX_CONSECUTIVE_LOSSES: 2,
|
||||
SYMBOL_LOSS_COOLDOWN_SEC: 3600,
|
||||
BETA_FILTER_ENABLED: true,
|
||||
MIN_SIGNAL_STRENGTH: 8,
|
||||
},
|
||||
},
|
||||
aggressive: {
|
||||
name: '激进高频',
|
||||
desc: '晚间波动大时使用,交易频率高,止损较紧但止盈合理(盈亏比1.5:1)',
|
||||
|
|
@ -536,12 +592,13 @@ const GlobalConfig = () => {
|
|||
LEVERAGE: { value: 10, type: 'number', category: 'risk', description: '基础杠杆倍数。' },
|
||||
MAX_POSITION_PERCENT: { value: 0.12, type: 'number', category: 'risk', description: '单笔最大保证金占可用资金比例(如 0.12=12%),加大可提高单笔盈利。' },
|
||||
MAX_LEVERAGE: { value: 20, type: 'number', category: 'risk', description: '动态杠杆上限(如 20 表示最高 20 倍),配合单笔仓位提高收益。' },
|
||||
MIN_LEVERAGE: { value: 8, type: 'number', category: 'risk', description: '动态杠杆下限(如 8 表示不低于 8 倍)。之前盈利阶段多为 8x,避免被压到 2–4x 导致单笔盈利过少。' },
|
||||
MAX_LEVERAGE_SMALL_CAP: { value: 8, type: 'number', category: 'risk', description: '高波动/小众币最大允许杠杆(与之前盈利阶段一致)。' },
|
||||
RISK_REWARD_RATIO: { value: 3, type: 'number', category: 'risk', description: '盈亏比目标(用于计算动态止盈止损,建议 3:1)。' },
|
||||
ATR_TAKE_PROFIT_MULTIPLIER: { value: 1.5, type: 'number', category: 'risk', description: 'ATR 止盈倍数。' },
|
||||
ATR_STOP_LOSS_MULTIPLIER: { value: 3, type: 'number', category: 'risk', description: 'ATR 止损倍数(2026-02-12:3 减少噪音止损)。' },
|
||||
USE_FIXED_RISK_SIZING: { value: false, type: 'boolean', category: 'risk', description: '是否使用固定风险仓位计算(基于止损距离和账户余额)。' },
|
||||
FIXED_RISK_PERCENT: { value: 0.01, type: 'number', category: 'risk', description: '每笔交易固定风险百分比(如 0.01=1%)。' },
|
||||
MAX_LEVERAGE_SMALL_CAP: { value: 3, type: 'number', category: 'risk', description: '小市值/山寨币最大允许杠杆。' },
|
||||
}
|
||||
|
||||
const loadConfigs = async () => {
|
||||
|
|
@ -1040,18 +1097,20 @@ const GlobalConfig = () => {
|
|||
altcoin: { group: 'altcoin', tag: '当前推荐' },
|
||||
more_opportunities: { group: 'altcoin', tag: '增加机会' },
|
||||
profit_scale: { group: 'altcoin', tag: '盈利放大' },
|
||||
classic_profit: { group: 'altcoin', tag: '之前盈利' },
|
||||
classic_profit_amplify: { group: 'altcoin', tag: '杠杆放大' },
|
||||
swing: { group: 'backup', tag: '纯限价' },
|
||||
strict: { group: 'backup', tag: '精选低频' },
|
||||
conservative: { group: 'backup', tag: '保守' },
|
||||
}
|
||||
|
||||
// 快速方案:当前推荐(含增加机会/盈利放大)+ 备选
|
||||
// 快速方案:当前推荐(含增加机会/盈利放大/之前盈利)+ 备选
|
||||
const presetGroups = [
|
||||
{
|
||||
key: 'altcoin',
|
||||
title: '当前推荐 · 山寨币策略',
|
||||
desc: '与当前策略一致。想增加下单机会可点「增加机会」:允许 4H 中性、放宽大盘/RSI 过滤。盈利阶段想放大收益可点「盈利放大」。',
|
||||
presetKeys: ['altcoin', 'more_opportunities', 'profit_scale'],
|
||||
desc: '与当前策略一致。想增加下单机会可点「增加机会」;盈利阶段可点「盈利放大」;想恢复 2 月初有盈利时的下单风格可点「之前盈利」;在之前盈利基础上再放大可点「杠杆放大」(10x)。',
|
||||
presetKeys: ['altcoin', 'more_opportunities', 'profit_scale', 'classic_profit', 'classic_profit_amplify'],
|
||||
},
|
||||
{
|
||||
key: 'backup',
|
||||
|
|
|
|||
|
|
@ -254,12 +254,13 @@ def _get_trading_config():
|
|||
# ===== 仓位管理优化(山寨币专属)=====
|
||||
'USE_FIXED_RISK_SIZING': True, # 固定每笔风险,避免亏损扩大
|
||||
'FIXED_RISK_PERCENT': 0.01, # 每笔最多亏总资金1%(山寨币风险高)
|
||||
'MAX_LEVERAGE_SMALL_CAP': 4, # 小众币最大杠杆4倍(保持不变)
|
||||
'MAX_LEVERAGE_SMALL_CAP': 8, # 高波动/小众币最大杠杆(与之前盈利阶段一致)
|
||||
'MIN_LEVERAGE': 8, # 动态杠杆下限,避免被压到 2–4x 导致单笔盈利过少
|
||||
'ATR_LEVERAGE_REDUCTION_THRESHOLD': 0.05, # ATR超过5%时降低杠杆
|
||||
'LEVERAGE': 4, # 基础杠杆4倍(保持不变)
|
||||
'USE_DYNAMIC_LEVERAGE': True, # 开启动态杠杆(基于止损宽度自动调整)
|
||||
'LEVERAGE': 8, # 基础杠杆(与之前盈利阶段一致)
|
||||
'USE_DYNAMIC_LEVERAGE': True, # 开启动态杠杆(基于止损宽度自动调整,但不低于 MIN_LEVERAGE)
|
||||
'MAX_SINGLE_TRADE_LOSS_PERCENT': 20.0, # 单笔交易最大本金亏损率(20%),用于限制杠杆
|
||||
'MAX_LEVERAGE': 12, # 最大杠杆12倍,不要超过
|
||||
'MAX_LEVERAGE': 20, # 最大杠杆
|
||||
# 移动止损:必须开启!山寨币利润要保护
|
||||
'USE_TRAILING_STOP': True,
|
||||
'TRAILING_STOP_ACTIVATION': 0.10, # 盈利10%后激活(更早锁定利润)
|
||||
|
|
|
|||
|
|
@ -308,7 +308,7 @@ class RiskManager:
|
|||
if atr and entry_price and entry_price > 0:
|
||||
atr_percent = atr / entry_price
|
||||
atr_leverage_reduction_threshold = config.TRADING_CONFIG.get('ATR_LEVERAGE_REDUCTION_THRESHOLD', 0.05) # 5%
|
||||
max_leverage_small_cap = config.TRADING_CONFIG.get('MAX_LEVERAGE_SMALL_CAP', 5)
|
||||
max_leverage_small_cap = config.TRADING_CONFIG.get('MAX_LEVERAGE_SMALL_CAP', 8) # 默认 8,与之前盈利阶段一致
|
||||
|
||||
if atr_percent >= atr_leverage_reduction_threshold:
|
||||
atr_limit_leverage = max_leverage_small_cap
|
||||
|
|
@ -351,8 +351,9 @@ class RiskManager:
|
|||
max_config_leverage = config.TRADING_CONFIG.get('MAX_LEVERAGE', 20)
|
||||
final_leverage = min(final_leverage, max_config_leverage)
|
||||
|
||||
# 至少为1倍
|
||||
final_leverage = max(1, final_leverage)
|
||||
# 杠杆下限:不低于 MIN_LEVERAGE(之前盈利阶段多为固定 8x,下限 8 可避免被压到 2–4x 导致单笔盈利过少)
|
||||
min_leverage = max(1, int(config.TRADING_CONFIG.get('MIN_LEVERAGE', 1) or 1))
|
||||
final_leverage = max(min_leverage, final_leverage)
|
||||
|
||||
# 检查交易对最大杠杆限制
|
||||
if symbol:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user