Tags: MACDMA

This strategy combines the MACD indicator with a limited Martingale money management method to capture trading opportunities when market trends change. A buy signal is generated when the MACD fast line crosses above the slow line, and a sell signal is generated when the fast line crosses below the slow line. At the same time, the strategy uses a limited Martingale method to control drawdowns, with a maximum of 3 additional positions. The strategy sets a fixed take profit and stop loss of 1% for each trade.

- Calculate the fast line, slow line, and signal line of the MACD indicator.
- Determine the crossover of the fast and slow lines, going long on a bullish crossover and short on a bearish crossover.
- Set a fixed trading volume (0.01) for each trade.
- Record the net profit of the previous trade.
- If the current net profit is less than the previous trade and the number of additional positions is less than 3, double the next trading volume and increase the number of additional positions by 1; otherwise, reset the trading volume and number of additional positions.
- For each long position, take profit when the price rises by 1% and stop loss when it falls by 1%; vice versa for short positions.
- Mark buy and sell points on the chart.

- Combines the MACD trend-following indicator with Martingale money management, which can better capture trending markets.
- Sets fixed take profit and stop loss levels to control individual trade risk.
- Uses limited Martingale position sizing to achieve higher returns when trends continue.
- Limits the maximum number of additional positions to 3, avoiding the risk of excessive position sizing leading to account blowouts.
- Marks buy and sell signals on the chart for easy observation of strategy performance.

- The MACD indicator may experience divergence between signals and price, leading to misjudgment.
- Fixed take profit and stop loss ratios may miss out on larger profit opportunities or incur greater losses.
- Although Martingale position sizing is limited to 3 times, there is still a risk of account blowouts when experiencing consecutive losses in choppy markets.
- The strategy does not consider abnormal market fluctuations, such as sudden gaps, which may result in inability to execute as expected.

- Consider introducing trend confirmation indicators, such as MA, to filter MACD signals.
- Optimize the take profit and stop loss settings, such as using ATR or percentages for dynamic stop losses.
- Optimize the number and ratio of additional positions to control drawdown risk.
- Set up mechanisms to deal with abnormal market conditions, such as suspending trading when prices gap.
- Consider introducing position sizing to dynamically adjust positions based on market volatility.

This strategy captures trends through the MACD indicator while using limited Martingale to control drawdowns, which can achieve good results in trending markets. However, the strategy also has certain risks, such as signal failure and fixed stop losses. By introducing other indicators, optimizing parameter settings, position sizing, and other methods, the robustness and profitability of this strategy can be further improved.

/*backtest start: 2024-04-01 00:00:00 end: 2024-04-30 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Advanced MACD Strategy with Limited Martingale", overlay=true, initial_capital=100) // MACD 설정 fastLength = 15 slowLength = 30 signalSmoothing = 9 [macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing) // 계약수 및 이전 거래 결과 기록 var float contractSize = 0.01 var int martingaleCount = 0 // 마틴게일 카운트 var float lastTradeResult = 0 // 매수 및 매도 조건 longCondition = ta.crossover(macdLine, signalLine) shortCondition = ta.crossunder(macdLine, signalLine) // 매수 신호 if (longCondition) strategy.entry("Long", strategy.long, qty=contractSize) lastTradeResult := strategy.netprofit // 매도 신호 if (shortCondition) strategy.entry("Short", strategy.short, qty=contractSize) lastTradeResult := strategy.netprofit // 익절 및 손절 조건 strategy.close("Long", when=(close / strategy.position_avg_price >= 1.01)) strategy.close("Short", when=(strategy.position_avg_price / close >= 1.01)) strategy.close("Long", when=(close / strategy.position_avg_price <= 0.99)) strategy.close("Short", when=(strategy.position_avg_price / close <= 0.99)) // 마틴게일 전략 적용 if (strategy.netprofit < lastTradeResult) if (martingaleCount < 3) contractSize := contractSize * 2 martingaleCount := martingaleCount + 1 else contractSize := 0.01 martingaleCount := 0 else contractSize := 0.01 martingaleCount := 0 // 매수, 매도 포인트 화살표로 표시 plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy") plotshape(series=shortCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")

- MA, SMA, MA Slope, Trailing Stop Loss, Re-Entry
- MA MACD BB Multi-Indicator Trading Strategy Backtesting Tool
- OBV MACD Indicator
- H1 Trend Bias + M15 MACD Signal + M5 Fast Volatility Gap Strategy
- Low-Risk Stable Cryptocurrency High-Frequency Trading Strategy Based on RSI and MACD
- Dynamic Oscillation Trend Capture Strategy
- MACD Dual Moving Average Crossover Strategy
- Multi-Indicator Trend Following Strategy
- MACD and Martingale Combination Strategy for Optimized Long Trading
- RSI, MACD, Bollinger Bands and Volume-Based Hybrid Trading Strategy

- Relative Strength Index Mean Reversion Strategy
- BMSB Bollinger SuperTrend Trading Strategy
- EMA Dual Crossover Fixed Risk Stop Loss/Take Profit
- SMA Dual Moving Average Trading Strategy
- Short-Term Trading Strategy Based on Bollinger Bands, Moving Average, and RSI
- Dual Moving Average Crossover Strategy
- EMA, MACD, and RSI Triple Indicator Momentum Strategy
- Multi-Timeframe Reversal Confirmation Trading Strategy
- Larry Williams' Three-Period Dynamic Moving Average Trading Strategy
- Multi-Moving Average Trend Trading Strategy
- H1 Trend Bias + M15 MACD Signal + M5 Fast Volatility Gap Strategy
- Short-Medium-Long Term Triple Moving Average Trend Following Strategy
- MACD Dual Moving Average Crossover Strategy
- Automated Trading Strategy Based on RSI Overbought and Oversold Levels
- Trading Strategy Based on Support and Resistance Levels Using Technical Analysis
- RSI50_EMA Long Only Strategy
- KDJ Trending View with Signals and MA Strategy
- VWAP and RSI Crossover Strategy
- Moving Average and Relative Strength Index Strategy
- EMA Dynamic Trend Following Trading Strategy