OPEN-SOURCE SCRIPT

RSI Gold Strategy - Risk-Based Lot

245
//version=5
strategy("RSI Gold Strategy - Risk-Based Lot", overlay=true)

// === User Inputs ===
startHour = input.int(2, "Trade Start Hour")
endHour = input.int(23, "Trade End Hour")
sl_pips = input.float(9.0, "Stop Loss in Gold Units")
tp_pips = input.float(16.5, "Take Profit in Gold Units")
riskPercent = input.float(1.0, "Risk Percent per Trade")
rsiOverbought = input.int(75, "RSI Overbought Level")
rsiOversold = input.int(43, "RSI Oversold Level")
rsiPeriod = input.int(14, "RSI Period")

// === RSI Calculation ===
rsi = ta.rsi(close, rsiPeriod)

// === Time Filter ===
currentHour = hour(time, "Etc/UTC")
withinTime = (currentHour >= startHour and currentHour < endHour)

// === Entry Conditions ===
buySignal = ta.crossover(rsi, rsiOversold) and withinTime
sellSignal = ta.crossunder(rsi, rsiOverbought) and withinTime

// === Risk-Based Position Sizing ===
capital = strategy.equity
riskAmount = capital * (riskPercent / 100)
slPoints = sl_pips / syminfo.mintick

// Tick value estimation (for Gold, assume 0.01 = $1)
tickValue = 1.0
contractSize = 1.0
positionSize = riskAmount / (sl_pips * tickValue)

// === Price Setup ===
long_sl = close - sl_pips
long_tp = close + tp_pips
short_sl = close + sl_pips
short_tp = close - tp_pips

// === Execute Trades ===
if (buySignal)
strategy.entry("Buy", strategy.long, qty=positionSize)
strategy.exit("Exit Buy", from_entry="Buy", stop=long_sl, limit=long_tp)

if (sellSignal)
strategy.entry("Sell", strategy.short, qty=positionSize)
strategy.exit("Exit Sell", from_entry="Sell", stop=short_sl, limit=short_tp)

// === Plot RSI ===
plot(rsi, title="RSI", color=color.orange)
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)

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.