En la carga de los recursos... Cargando...

Estrategia de inversión de retroceso de Fibonacci

El autor:¿ Qué pasa?, Fecha: 2023-12-07 15:15:26
Las etiquetas:

img

Resumen general

La estrategia de reversión de retroceso de Fibonacci es una estrategia de negociación cuantitativa basada en los niveles de retroceso de Fibonacci y el indicador de fuerza relativa (RSI). Esta estrategia combina la teoría del canal de Fibonacci y el indicador de sobrecompra / sobreventa para realizar operaciones de reversión contra la tendencia principal con el fin de obtener ganancias en los ciclos a corto plazo.

Estrategia lógica

La estrategia primero calcula dos zonas de precios importantes basadas en los niveles de Fibonacci de 0.618 - el punto más alto de 0.618 veces y el punto más bajo de 0.618 veces.

Además, la estrategia también utiliza el indicador RSI para determinar las condiciones de sobrecompra / sobreventa. RSI por debajo de 30 indica el estado de sobreventa, mientras que RSI por encima de 70 sugiere una condición de sobrecompra.

Combinando las dos condiciones, la señal de compra se activa cuando: el cierre se rompe por encima del punto bajo de 0.618 veces Y el RSI está por debajo de 30; la señal de venta se activa cuando: el cierre se rompe por debajo del punto alto de 0.618 veces Y el RSI supera 70.

En el caso de la compra, la estrategia se extenderá al precio de mercado. En el caso de la venta, se extenderá al precio de mercado. Además, los niveles de toma de ganancias y stop loss se establecen para que la posición se cierre cuando el precio se mueva favorablemente en un cierto porcentaje (toma de ganancias) o se mueve negativamente en un cierto porcentaje (stop loss).

Ventajas

La estrategia combina escenarios de tendencia y de reversión, teniendo en cuenta las tendencias principales y aprovechando al mismo tiempo el retroceso a corto plazo.

  1. Los niveles de Fibonacci tienen atributos de soporte/resistencia inherentes, que sirven como indicador efectivo de la zona de precios.
  2. El estado de sobrecompra/sobreventa del RSI sugiere posibles puntos de inflexión.
  3. Las señales largo/corto son claras, captando oportunidades de reversión.
  4. El riesgo de control de pérdidas/beneficios.

Los riesgos

Hay algunos riesgos que hay que tener en cuenta:

  1. Las pérdidas pueden ocurrir si no se produce una inversión de tendencia importante a pesar de los rebotes a corto plazo.
  2. Una zona de stop loss más amplia podría ayudar.
  3. Las reversiones pueden durar mucho tiempo, lo que requiere un apoyo de capital suficiente.

Optimización

La estrategia se puede optimizar aún más mediante:

  1. Recopilar más datos históricos para probar y ajustar parámetros clave como el rango de la zona de Fibonacci y las líneas de sobrecompra / sobreventa del RSI para adaptarse mejor al mercado real.

  2. Incorpore más indicadores para generar señales más fuertes, como patrones de velas, cambios de volumen, etc.

  3. Ajustar parámetros o reglas de acuerdo con las diferentes características de los instrumentos de negociación.

  4. Añadir un mecanismo de stop loss dinámico al precio de seguimiento en tiempo real.

Conclusión

La estrategia de reversión de retroceso de Fibonacci equilibra los escenarios de tendencia y reversión para obtener ganancias a corto plazo mientras se controlan los riesgos.


/*backtest
start: 2023-11-06 00:00:00
end: 2023-12-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("FBS Trade", overlay=true)

// Fibonacci seviyeleri
fibonacciLevels = input(0.618, title="Fibonacci Düzeltme Seviyesi")

// RSI ayarları
rsiLength = input(14, title="RSI Periyodu")
overboughtLevel = input(70, title="RSI Satış Sinyali Seviyesi")
oversoldLevel = input(30, title="RSI Alış Sinyali Seviyesi")

// Take Profit ve Stop Loss yüzdesi
takeProfitPercent = input(1, title="Take Profit Yüzdesi") / 100
stopLossPercent = input(1, title="Stop Loss Yüzdesi") / 100

// Fibonacci seviyelerini hesapla
highFibo = high * (1 + fibonacciLevels)
lowFibo = low * (1 - fibonacciLevels)

// RSI hesaplama
rsiValue = ta.rsi(close, rsiLength)

// Alış ve satış koşulları
buyCondition = close > lowFibo and rsiValue < 30
sellCondition = close < highFibo and rsiValue > overboughtLevel

// Take Profit ve Stop Loss seviyeleri
takeProfitLong = strategy.position_avg_price * (1 + takeProfitPercent)
stopLossLong = strategy.position_avg_price * (1 - stopLossPercent)

takeProfitShort = strategy.position_avg_price * (1 - takeProfitPercent)
stopLossShort = strategy.position_avg_price * (1 + stopLossPercent)

// Alış ve satış işlemleri
if (buyCondition)
    strategy.entry("Buy", strategy.long)
if (sellCondition)
    strategy.entry("Sell", strategy.short)

// Take Profit ve Stop Loss seviyeleri
if (strategy.position_size > 0)
    strategy.exit("Take Profit/Close Buy", from_entry="Buy", limit=takeProfitLong, stop=stopLossLong)
if (strategy.position_size < 0)
    strategy.exit("Take Profit/Close Sell", from_entry="Sell", limit=takeProfitShort, stop=stopLossShort)

// Sadece mumları ve buy/sell işlemlerini göster
plot(close, color=color.black, title="Close")

// Destek ve direnç bölgeleri
supportLevel = input(27, title="Fibonacci Destek Seviyesi")
resistanceLevel = input(200, title="Direnç Seviyesi")

hline(supportLevel, "Fibonacci Destek Seviyesi", color=color.green)
hline(resistanceLevel, "Direnç Seviyesi", color=color.red)

// Trend çizgileri
var line trendLine = na
if (ta.crossover(close, highFibo))
    trendLine := line.new(bar_index[1], highFibo[1], bar_index, highFibo, color=color.green, width=2)
if (ta.crossunder(close, lowFibo))
    trendLine := line.new(bar_index[1], lowFibo[1], bar_index, lowFibo, color=color.red, width=2)

// RSI ve Fibo'yu grafiğe çizme
hline(overboughtLevel, "RSI Satış Sinyali", color=color.red, linestyle=hline.style_dashed)
hline(oversoldLevel, "RSI Alış Sinyali", color=color.green, linestyle=hline.style_dashed)
plot(rsiValue, color=color.purple, title="RSI")

// 15 dakikalıkta 3 mumda bir alarm
is15MinBar = ta.change(time('15'), 1)
if (is15MinBar % 3 == 0)
    alert("15 dakikalıkta 3 mum geçti.")


Más.