이 전략은 시장 트렌드를 결정하기 위해 두 개의 이동 평균의 교차를 이용한다. 단기 이동 평균이 장기 이동 평균을 넘을 때, 긴 포지션을 열고, 짧은 포지션에는 역으로 열린다. 동시에, 이 전략은 여러 가지 수익 수준을 사용하며, 가격이 미리 설정된 수익 수준에 도달하면 부분적으로 포지션을 닫아 수익을 극대화하고 위험을 제어한다.
이 전략의 핵심은 시장 추세를 파악하기 위해 다양한 기간의 이동 평균을 사용하는 것입니다. 단기 이동 평균이 장기 이동 평균을 넘어서면 시장이 상승 추세로 진입하고 장기 포지션이 열릴 수 있음을 암시합니다. 반대로 단기 이동 평균이 장기 이동 평균을 넘어서면 잠재적인 하락 추세를 암시하고 짧은 포지션이 열립니다. 한편, 전략은 여러 수익 수준을 설정하고 가격이 이러한 수준에 도달하면 미리 설정된 포지션 비율에 따라 포지션을 팩으로 닫습니다. 이것은 트렌드가 지속되는 동안 위험을 관리하면서 더 큰 이익을 얻을 수 있습니다.
다중 수익을 취하는 이동 평균 크로스오버 전략은 다단계 수익을 취함으로써 위험을 관리하는 동안 트렌드에 더 많은 수익을 얻을 수있는 간단하고 효과적인 트렌드를 따르는 전략입니다. 그러나이 전략에는 일부 제한과 위험이 있으며 특정 시장 조건과 사용자 요구에 따라 최적화 및 개선되어야합니다. 전반적으로이 전략은 효과적인 거래 도구로 사용될 수 있지만 완전히 의존 할 수 없으며 최적의 결과를 위해 다른 분석 방법과 위험 관리 조치와 결합해야합니다.
/*backtest start: 2023-04-20 00:00:00 end: 2024-04-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © ValdesTradingBots //Follow Us for More Insights and Updates! //Join our community and be the first to know about our new releases and trading tips //Facebook Group: Join our vibrant community at https://www.facebook.com/groups/707469081464839/ //Twitter: Follow us for quick updates and insights at https://twitter.com/ValdesBots //We're excited to have you with us! //@version=5 strategy("Valdes Trading Bots MA Cross with Multiple Take Profits", overlay=true) shortPeriod = input(18, title="Short MA Period") longPeriod = input(32, title="Long MA Period") // Take Profit Settings tp1Enabled = input(true, title="Enable Take Profit 1") tp1Perc = input(15, title="Take Profit 1 (%)") / 100 tp1QtyPerc = input(25, title="Take Profit 1 Qty (%)") / 100 tp2Enabled = input(true, title="Enable Take Profit 2") tp2Perc = input(30, title="Take Profit 2 (%)") / 100 tp2QtyPerc = input(25, title="Take Profit 2 Qty (%)") / 100 tp3Enabled = input(true, title="Enable Take Profit 3") tp3Perc = input(45, title="Take Profit 3 (%)") / 100 tp3QtyPerc = input(25, title="Take Profit 3 Qty (%)") / 100 tp4Enabled = input(true, title="Enable Take Profit 4") tp4Perc = input(60, title="Take Profit 4 (%)") / 100 tp4QtyPerc = input(25, title="Take Profit 4 Qty (%)") / 100 shortMA = ta.sma(close, shortPeriod) longMA = ta.sma(close, longPeriod) // Determine the trend uptrend = shortMA > longMA downtrend = shortMA < longMA // Assign candle colors based on the trend candleColor = uptrend ? color.rgb(9, 112, 0) : downtrend ? color.rgb(255, 0, 0) : color.new(color.blue, 0) plot(shortMA, title="Short MA", color=color.rgb(9, 112, 0)) plot(longMA, title="Long MA", color=color.rgb(255, 0, 0)) // Create a cross signal longCross = ta.crossover(shortMA, longMA) shortCross = ta.crossunder(shortMA, longMA) // Strategy entry if (longCross) strategy.entry("Long", strategy.long) if (shortCross) strategy.entry("Short", strategy.short) // Strategy take profit if (tp1Enabled and strategy.position_size > 0) strategy.exit("TP1 Long", "Long", qty_percent=tp1QtyPerc, limit=strategy.position_avg_price * (1 + tp1Perc)) if (tp1Enabled and strategy.position_size < 0) strategy.exit("TP1 Short", "Short", qty_percent=tp1QtyPerc, limit=strategy.position_avg_price * (1 - tp1Perc)) if (tp2Enabled and strategy.position_size > 0) strategy.exit("TP2 Long", "Long", qty_percent=tp2QtyPerc, limit=strategy.position_avg_price * (1 + tp2Perc)) if (tp2Enabled and strategy.position_size < 0) strategy.exit("TP2 Short", "Short", qty_percent=tp2QtyPerc, limit=strategy.position_avg_price * (1 - tp2Perc)) if (tp3Enabled and strategy.position_size > 0) strategy.exit("TP3 Long", "Long", qty_percent=tp3QtyPerc, limit=strategy.position_avg_price * (1 + tp3Perc)) if (tp3Enabled and strategy.position_size < 0) strategy.exit("TP3 Short", "Short", qty_percent=tp3QtyPerc, limit=strategy.position_avg_price * (1 - tp3Perc)) if (tp4Enabled and strategy.position_size > 0) strategy.exit("TP4 Long", "Long", qty_percent=tp4QtyPerc, limit=strategy.position_avg_price * (1 + tp4Perc)) if (tp4Enabled and strategy.position_size < 0) strategy.exit("TP4 Short", "Short", qty_percent=tp4QtyPerc, limit=strategy.position_avg_price * (1 - tp4Perc)) // Plotting the signals on the chart plotshape(series=longCross, title="Long Cross", location=location.belowbar, color=color.rgb(9, 112, 0), style=shape.triangleup, size=size.small) plotshape(series=shortCross, title="Short Cross", location=location.abovebar, color=color.rgb(255, 0, 0), style=shape.triangledown, size=size.small) // Apply candle color barcolor(candleColor)