
Esta estratégia baseia-se no indicador de design de sinais de negociação da faixa de Brin% B, fazendo mais quando o valor de % B está abaixo do limiar definido, seguindo a tendência de forma dinâmica, aumentando a posição e alcançando a posição de equilíbrio após a condição de parada de perda predefinida. A estratégia é aplicável para identificar situações de rebote após a ruptura do suporte da faixa de Brin.
A estratégia tem as seguintes vantagens:
A estratégia também apresenta alguns riscos:
Resolução:
A estratégia também pode ser melhorada nos seguintes aspectos:
Esta estratégia é, em geral, uma estratégia de negociação de linha longa mais robusta. A capacidade de identificação e otimização de parâmetros ainda tem espaço para melhorar. Se combinada com outros indicadores de filtragem de sinais e controle de gerenciamento de posição, a estratégia pode obter melhores retornos em situações de tendência.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands %B Long Strategy", shorttitle="BB %B Long Strategy", overlay=true)
// Girdiler
length = input.int(20, title="BB Length")
src = input(close, title="Source")
dev = input.float(2.0, title="Deviation")
kar_hedefi = input(5, title="Take Profit")
zarar_durumu = input(100, title="Stop Loss")
start_date = input(timestamp("01 Jan 2023 00:00 +0000"), "Start Date")
end_date = input(timestamp("01 Jan 2024 00:00 +0000"), "End Date")
altinda_kalirsa_long = input.float(0, title="hangi degerin altinda long alsin")
// Bollinger Bantları %B göstergesi
basis = ta.sma(src, length)
stdDev = ta.stdev(src, length)
upperBand = basis + dev * stdDev
lowerBand = basis - dev * stdDev
percentB = (src - lowerBand) / (upperBand - lowerBand)
// Alım-Satım Sinyalleri
longCondition = percentB < altinda_kalirsa_long
// Kar/Zarar Hesaplama
takeProfit = strategy.position_avg_price * (1 + kar_hedefi / 100)
stopLoss = strategy.position_avg_price * (1 - zarar_durumu / 100)
// Long (Alım) İşlemi
if (longCondition )
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit/Stop Loss", "Long", limit=takeProfit, stop=stopLoss)
// Take Profit Seviyesi Çizgisi
plot(takeProfit, title="Take Profit", color=color.green, linewidth=1, style=plot.style_linebr)