
これは,RSIとBollinger Bandsを組み合わせて取引する戦略です. その核心思想は,RSIが超買いまたは超売り領域に達すると,Bollinger Bandsの上昇と下落と組み合わせて,購入と販売の信号を生成することです.
BB-RSI ポートフォリオ取引戦略
この戦略は,まず通常のボリンジャー・バンドを計算し,中軌道,上軌道,下軌道を含みます. 中軌道とは,一定の周期における終盤価格のシンプル移動平均であり,上下軌道は,それぞれ中軌道上の次の標準差である.
また,この戦略はRSI指標を計算する. RSIは,平均的なクローズアップと平均的なクローズアップを比較して,現在の市場が過買または過売状態にあるかどうかを判断する.
RSIが低点 (デフォルト 30) より小さいとき,市場は超売り状態にあることを意味します. RSIが高点 (デフォルト 70) より大きいとき,市場は超買い状態にあることを意味します.
この策略は,RSIが超売り領域に達したときに,閉盘価格がBollinger Bandsの下線より低ければ,買入シグナルを生成し,RSIが超買い領域に達したときに,閉盘価格がBollinger Bands上線より高ければ,売出シグナルを生成する.
この組み合わせ戦略の最大の利点は,市場の転換点を発見することにある.株式価格がボリンジャーバンドの広い領域にあるとき,市場変動が大きいことを示す.このとき,RSIによって,市場が過買過売であるかどうかを判断し,逆転するタイミングを定着させることができる.
もう1つの利点はパラメータの設定の柔軟性である. ボリンジャーバンドとRSI指標は,調整可能なパラメータがあり,トレーダーは自分のニーズに応じて最適化することができます.
この戦略の最大のリスクは,信号が少ないことにある.特に,市場が長期にわたって一方的な動きをするときに,過適合が起こりやすい状況がある.このとき,RSIは,取引信号を生成できない超買い超売り状態に到達することは困難である.
もう一つのリスクはパラメータ設定の難しさである. ボリンジャー・バンドとRSIは周期などのパラメータを設定する必要があります. 間違った選択は戦略の効果を損なう可能性があります.
より多くの取引機会を得るために,RSIの超買超売ラインを適切に調整することができます.例えば,超売ラインを40に上げ,超買線を60に下調することで,信号が容易に形成されます.
もう一つの方向は,トレンド判断機構を導入し,市場の一方的な動きで盲目逆転を避けることである.例えば,長期周期平均線の方向を計算することができ,フィルター条件として,平均線の方向が合っている場合にのみ信号を生成する.
BB-RSIの組み合わせ戦略は,ボリンジャー・バンドを活用してサポート・レジスタンスを判断し,RSIは,オーバーバイ・オーバーセールを判断し,反転点でシグナルを生成する.それは,市場の転換点を効果的に位置づけることができる.これは典型的な反転取引戦略である.パラメータの最適化とルール完善により,この戦略は,取引の定量化のための強力なツールになることができる.
/*backtest
start: 2023-01-28 00:00:00
end: 2024-02-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © samuelarbos
//@version=4
strategy("Estrategia de Bandas de Bollinger y RSI", overlay=true)
// Definimos los parámetros de las bandas de Bollinger
source = input(close, title="Precio base")
length = input(20, minval=1, title="Longitud")
mult = input(2.0, minval=0.001, maxval=50, title="Desviación estándar")
// Calculamos las bandas de Bollinger
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev
// Definimos el RSI y sus parámetros
rsi_source = input(close, title="RSI Fuente")
rsi_length = input(14, minval=1, title="RSI Longitud")
rsi_overbought = input(70, minval=0, maxval=100, title="RSI Sobrecompra")
rsi_oversold = input(30, minval=0, maxval=100, title="RSI Sobrevendido")
// Calculamos el RSI
rsi = rsi(rsi_source, rsi_length)
// Definimos las señales de compra y venta
buy_signal = crossover(close, lower) and rsi < rsi_oversold
sell_signal = crossunder(close, upper) and rsi > rsi_overbought
// Compramos cuando se da la señal de compra
if (buy_signal)
strategy.entry("Buy", strategy.long)
// Vendemos cuando se da la señal de venta
if (sell_signal)
strategy.entry("Sell", strategy.short)