Administrator
6 days ago 97b7f914d060b2a052299416384fc80e061f4b1d
refactor(MacdEmaStrategy): 调整多头和空头开仓条件的逻辑顺序

- 修改多头开仓条件:将柱状线转强作为首要条件,金叉作为第二条件,趋势向上或底背离作为第三条件
- 修改空头开仓条件:将柱状线转弱作为首要条件,死叉作为第二条件,趋势向下或顶背离作为第三条件
- 调整后的条件更注重MACD柱状线的变化,优化交易信号的生成逻辑
1 files modified
8 ■■■■ changed files
src/main/java/com/xcong/excoin/modules/okxNewPrice/indicator/macdAndMatrategy/MacdEmaStrategy.java 8 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/okxNewPrice/indicator/macdAndMatrategy/MacdEmaStrategy.java
@@ -283,8 +283,8 @@
        log.info("多头信号检查, 价格位于200日EMA上方: {}, 金叉: {}, MACD柱状线由负转正: {}, 底背离: {}",
                isAboveTrend, isGoldenCross, isMacdHistTurningPositive, isBottomDivergence);
        
        // 多头开仓条件:趋势向上 + 金叉 + (柱状线转强或底背离)
        return isAboveTrend && isGoldenCross && (isMacdHistTurningPositive || isBottomDivergence);
        // 多头开仓条件:柱状线转强 + 金叉 + (趋势向上或底背离)
        return isMacdHistTurningPositive && isGoldenCross && ( isAboveTrend|| isBottomDivergence);
    }
    /**
@@ -320,8 +320,8 @@
        log.info("空头信号检查, 价格位于200日EMA下方: {}, 死叉: {}, MACD柱状线由正转负: {}, 顶背离: {}",
                isBelowTrend, isDeathCross, isMacdHistTurningNegative, isTopDivergence);
        
        // 空头开仓条件:趋势向下 + 死叉 + (柱状线转弱或顶背离)
        return isBelowTrend && isDeathCross && (isMacdHistTurningNegative || isTopDivergence);
        // 空头开仓条件:柱状线转弱 + 死叉 + (趋势向下或顶背离)
        return isMacdHistTurningNegative && isDeathCross && ( isBelowTrend || isTopDivergence);
    }
    // 平仓条件检查方法