[[Vereinfacht chinesisch]
Diese Strategie verwendet die Brin-Band-Strategie in Kombination mit dem relativ starken RSI, um Preisschwankungen und optimale Einstiegspunkte vorherzusagen. Die Strategie ist sehr einfach, wir konzentrieren uns auf die Schließung, wenn der Preis die Brin-Band-Abtrennung berührt, und dann gibt es zwei Situationen, in denen der Preis entweder von der Brin-Band-Abtrennung zurückschlägt oder weiter fällt.
Wir müssen einen Stop-Loss einrichten, um zu vermeiden, dass der RSI zu viel Geld verliert, wenn er zu lange in der Überverkaufszone bleibt.
Die optimale Stoppzone gilt, wenn der Preis wieder auf die Bollinger Mitte/Oberbahn oder wenn der RSI die Überkaufzone erreicht, je nachdem, wer zuerst kommt.
Mehrfache Eintritt:
RSI < 30 und Schlusskurs < Brin-Unterbahn
Mehrfach aus dem Spiel:
RSI > 70
Die Strategie berechnet zuerst den RSI-Indikator, um zu bestimmen, ob ein Überkauf oder Überverkauf durch das Setzen einer oberen oder unteren Grenze erfolgt. Dann werden die Mittel-, Ober- und Unterbahn des Brin-Bands berechnet. Wenn der Schlusskurs den Brin-Unterbahn berührt und der RSI unter 30 liegt, wird ein Plus gemacht; wenn der RSI über 70 liegt, wird eine Off-Position gemacht.
Setzen Sie einen Stop-Loss-Punkt, wenn Sie mehrere Köpfe betreten. Der Stop-Loss-Punkt ist der Einstiegspreis(1 + fester Anteil), der Stop-Loss wird als Einstiegspreis festgelegt(1-Festanteil)
Auf diese Weise kaufen wir am RSI-Tiefpunkt in der Nähe der Bollinger Bands und verkaufen am RSI-Hochpunkt und profitieren vom Umkehrhandel. Gleichzeitig wird ein Stop-Loss-System eingerichtet, um das Risiko zu kontrollieren.
Das Risiko kann durch Anpassung der Brin-Band-Parameter, die Wahl einer Kombination mit anderen Indikatoren und eine angemessene Lockerung des Stop-Loss-Bereichs verringert werden.
Die Strategie hat eine gute Gesamtrisikogewinn-Balance und eine gute Feedback-Performance. Die Effektivität kann durch Parameteroptimierung und Kennzahlenoptimierung weiter verbessert werden. Die auf dem Brin-Band basierende Reverse-Trading-Strategie ist einfach und zuverlässig und verdient weitere Verbesserungen.
||
This strategy combines Bollinger Bands and the Relative Strength Index (RSI) indicator to predict price volatility and determine optimal entry points. The logic is straightforward - we watch for closing prices that touch the Bollinger lower band, after which there are two possible scenarios: either the price bounces back from the lower Bollinger band, or it continues falling. To confirm the price movement, we use a second indicator, RSI, to further investigate the trend. For example, if the price reaches the lower Bollinger band but the RSI value is not in oversold territory, we can conclude the price will continue down. If the RSI value is oversold, we can use this area as our entry point.
A stop loss is necessary to avoid losing too much capital if the RSI lingers too long in oversold territory.
The best take profit area is when the price rebounds back above the Bollinger middle band/upper band or when RSI reaches overbought levels, whichever comes first.
Long entry:
RSI < 30 and close price < Bollinger lower band
Long exit:
RSI > 70
The strategy first calculates the RSI indicator and sets upper/lower boundaries to determine overbought/oversold levels. It then calculates the Bollinger middle, upper and lower bands. When the closing price touches the lower band and RSI is below 30, go long. When RSI is above 70, close the position.
Upon entering long, set stop loss and take profit points. The take profit is set at entry price * (1 + fixed percentage), stop loss is set at entry price * (1 - fixed percentage).
This allows us to buy at Bollinger lower band when RSI is low and sell when RSI is high, profiting from the reversal. Stop loss and take profit control risk.
Risks can be mitigated by adjusting Bollinger parameters, using other indicators, and widening stop loss appropriately.
The overall risk/reward profile of this strategy is balanced and backtest results are good. Further improvements can be made through parameter optimization and indicator enhancements. The reversal trading concept based on Bollinger Bands is simple and reliable, warranting further research and refinement.
[/trans]
/*backtest
start: 2023-09-10 00:00:00
end: 2023-09-17 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//strategy(title="Bollinger Band with RSI", shorttitle="BB&RSI", format=format.price, precision=2, pyramiding=50, initial_capital=10000, calc_on_order_fills=false, calc_on_every_tick=true, default_qty_type=strategy.cash, default_qty_value=1000, currency="USD")
len = input(14, minval=1, title="Length")
src = input(close, "Source", type = input.source)
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi, "RSI", color=#8E1599)
band1 = hline(70, "Upper Band", color=#C0C0C0)
band0 = hline(30, "Lower Band", color=#C0C0C0)
fill(band1, band0, color=#9915FF, transp=90, title="Background")
length_bb = input(20,title="BB Length", minval=1)
mult = input(2.0, minval=0.001, maxval=50, title="BB StdDev")
basis = sma(src, length_bb)
dev = mult * stdev(src, length_bb)
upper = basis + dev
lower = basis - dev
offset = input(0, "BB Offset", type = input.integer, minval = -500, maxval = 500)
Plot_PnL = input(title="Plot Cummulative PnL", type=input.bool, defval=false)
Plot_Pos = input(title="Plot Current Position Size", type=input.bool, defval=false)
long_tp_inp = input(10, title='Long Take Profit %', step=0.1)/100
long_sl_inp = input(25, title='Long Stop Loss %', step=0.1)/100
// Take profit/stop loss
long_take_level = strategy.position_avg_price * (1 + long_tp_inp)
long_stop_level = strategy.position_avg_price * (1 - long_sl_inp)
entry_long = rsi < 30 and src < lower
exit_long = rsi > 70
plotshape(entry_long, style=shape.labelup, color=color.green, location=location.bottom, text="L", textcolor=color.white, title="LONG_ORDER")
plotshape(exit_long, style=shape.labeldown, color=color.red, location=location.top, text="S", textcolor=color.white, title="SHORT_ORDER")
strategy.entry("Long",true,when=entry_long)
strategy.exit("TP/SL","Long", limit=long_take_level, stop=long_stop_level)
strategy.close("Long", when=exit_long, comment="Exit")
plot(Plot_PnL ? strategy.equity-strategy.initial_capital : na, title="PnL", color=color.red)
plot(Plot_Pos ? strategy.position_size : na, title="open_position", color=color.fuchsia)