Esta estratégia usa dados de gráficos de 15 minutos e combina vários indicadores técnicos, como Bandas de Bollinger (BB), Média Móvel (MA), Divergência de Convergência da Média Móvel (MACD), Índice de Força Relativa (RSI), Oscilador Estocástico (STOCH) e Preço Médio ponderado por Volume (VWAP), para gerar sinais de negociação avançados. Quando vários indicadores dão simultaneamente sinais de compra ou venda, a estratégia abre posições longas ou curtas. Além disso, a estratégia define níveis de stop-loss e take-profit para controlar o risco e bloquear os lucros.
Esta estratégia gera sinais de negociação avançados em um gráfico de 15 minutos, aplicando de forma abrangente vários indicadores técnicos e definindo níveis de stop-loss e take-profit para controlar o risco. A lógica da estratégia é clara e fácil de implementar, mas na aplicação prática, é necessário prestar atenção a riscos como excesso de negociação, configurações de stop-loss e take-profit e resposta a eventos repentinos. No futuro, podemos considerar a introdução de outros indicadores, otimizar configurações de stop-loss e take-profit e combinar análise fundamental para melhorar ainda mais a confiabilidade e o potencial de lucro da estratégia.
/*backtest start: 2024-04-01 00:00:00 end: 2024-04-30 23:59:59 period: 3h basePeriod: 15m exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Gelişmiş Al-Sat Sinyalleri", overlay=true, process_orders_on_close=true) // 15 dakikalık grafik verileri fifteen_minute_close = request.security(syminfo.tickerid, "15", close) // Stop loss ve take profit seviyelerini hesaplamak için kullanılacak oranlar stop_loss_ratio = input.float(0.01, title="Stop Loss Oranı") take_profit_ratio = input.float(0.02, title="Take Profit Oranı") // Bollinger Bantları göstergesi length = input.int(20, title="BB Dönemi") mult = input.float(2.0, title="BB Çarpanı") basis = ta.sma(fifteen_minute_close, length) dev = mult * ta.stdev(fifteen_minute_close, length) upper = basis + dev lower = basis - dev // Moving Averages (Hareketli Ortalamalar) fast_ma = ta.sma(fifteen_minute_close, 10) slow_ma = ta.sma(fifteen_minute_close, 30) // MACD göstergesi macd_line = ta.ema(fifteen_minute_close, 12) - ta.ema(fifteen_minute_close, 26) macd_signal = ta.ema(macd_line, 9) macd_hist = macd_line - macd_signal // RSI göstergesi rsi = ta.rsi(fifteen_minute_close, 14) // Stochastic Oscillator (Stokastik Osilatör) kPeriod = input.int(14, title="Stochastic %K Periyodu") dPeriod = input.int(3, title="Stochastic %D Periyodu") smoothK = input.int(3, title="Stochastic %K Düzleştirme") k = ta.stoch(fifteen_minute_close, high, low, kPeriod) d = ta.sma(k, dPeriod) // Hacim ağırlıklı hareketli ortalamalar göstergesi (VWAP) vwap_length = input.int(20, title="VWAP Dönemi") vwap = ta.sma(volume * (high + low + fifteen_minute_close) / 3, vwap_length) / ta.sma(volume, vwap_length) // Al-Sat Sinyallerini hesaplayın long_signal = ta.crossover(fast_ma, slow_ma) and macd_line > macd_signal and rsi > 50 and fifteen_minute_close > vwap and k > d short_signal = ta.crossunder(fast_ma, slow_ma) and macd_line < macd_signal and rsi < 50 and fifteen_minute_close < vwap and k < d // Al ve Sat işaretlerini, yanlarında ok işaretleri olan üçgenlerle değiştirin plotshape(series=long_signal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small) plotshape(series=short_signal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small) // Uzun ve kısa pozisyonlar için girişler if (long_signal) strategy.entry("long", strategy.long) strategy.exit("exit_long", "long", stop=fifteen_minute_close * (1 - stop_loss_ratio), limit=fifteen_minute_close * (1 + take_profit_ratio)) if (short_signal) strategy.entry("short", strategy.short) strategy.exit("exit_short", "short", stop=fifteen_minute_close * (1 + stop_loss_ratio), limit=fifteen_minute_close * (1 - take_profit_ratio))