//version=5
strategy("Swing Trading Strategy", overlay=true)
// Define parameters
fastLength = input(10, "Fast MA Length")
slowLength = input(20, "Slow MA Length")
stopLossPct = input(2, "Stop Loss Percentage")
takeProfitPct = input(3, "Take Profit Percentage")
// Calculate moving averages
fastMA = sma(close, fastLength)
slowMA = sma(close, slowLength)
// Entry conditions
enterLong = crossover(fastMA, slowMA)
enterShort = crossunder(fastMA, slowMA)
// Exit conditions
exitLong = crossunder(close, fastMA) or (strategy.position_size > 0 and close < (1 - stopLossPct/100) * strategy.position_avg_price) or (strategy.position_size > 0 and close > (1 + takeProfitPct/100) * strategy.position_avg_price)
exitShort = crossover(close, fastMA) or (strategy.position_size < 0 and close > (1 + stopLossPct/100) * strategy.position_avg_price) or (strategy.position_size < 0 and close < (1 - takeProfitPct/100) * strategy.position_avg_price)
// Execute trades
if enterLong
strategy.entry("Long", strategy.long)
if enterShort
strategy.entry("Short", strategy.short)
if exitLong
strategy.close("Long")
if exitShort
strategy.close("Short")
strategy("Swing Trading Strategy", overlay=true)
// Define parameters
fastLength = input(10, "Fast MA Length")
slowLength = input(20, "Slow MA Length")
stopLossPct = input(2, "Stop Loss Percentage")
takeProfitPct = input(3, "Take Profit Percentage")
// Calculate moving averages
fastMA = sma(close, fastLength)
slowMA = sma(close, slowLength)
// Entry conditions
enterLong = crossover(fastMA, slowMA)
enterShort = crossunder(fastMA, slowMA)
// Exit conditions
exitLong = crossunder(close, fastMA) or (strategy.position_size > 0 and close < (1 - stopLossPct/100) * strategy.position_avg_price) or (strategy.position_size > 0 and close > (1 + takeProfitPct/100) * strategy.position_avg_price)
exitShort = crossover(close, fastMA) or (strategy.position_size < 0 and close > (1 + stopLossPct/100) * strategy.position_avg_price) or (strategy.position_size < 0 and close < (1 - takeProfitPct/100) * strategy.position_avg_price)
// Execute trades
if enterLong
strategy.entry("Long", strategy.long)
if enterShort
strategy.entry("Short", strategy.short)
if exitLong
strategy.close("Long")
if exitShort
strategy.close("Short")
Declinazione di responsabilità
Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.
Declinazione di responsabilità
Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.