
Esta estrategia tiene como objetivo comprar y vender cuando el RSI se encuentra en el rango bajo y vender cuando el RSI se encuentra en el rango alto, para que se realice una operación inversa cuando el RSI se encuentre en el rango bajo.
La duración del RSI es de 14 ciclos
Para configurar el rango RSI de la señal de compra:
Para establecer el rango de RSI de las señales de venta:
Cuando el RSI entra en el rango de compra, haga una entrada adicional:
Cuando el RSI entra en el rango de venta baja, el RSI entra en el rango de venta baja:
Cada vez que abre una posición, fija el stop loss en 2500 y el stop loss en 5000.
RSI se aleja del rango de señales y elimina las posiciones relevantes
La configuración de doble intervalo permite que la estrategia sea más clara en el diagnóstico de sobrecompra y sobreventa para evitar perder oportunidades de reversión.
Con una configuración de punto de parada fija, no se persigue demasiado la caída
El RSI es un indicador más maduro de compras y ventas excesivas que otros indicadores
Cuando los parámetros de esta estrategia son razonables, se puede capturar eficazmente el punto de reversión de la tendencia y obtener ganancias excedentarias
El RSI puede producir una falla en el mercado, lo que lleva al sistema a una pérdida de pérdidas continuas.
La fijación del punto de parada fija puede no coincidir con la amplitud de las fluctuaciones del mercado, no permitir la obtención de ganancias o el cierre prematuro de pérdidas
La configuración de intervalos poco razonable puede causar oportunidades de negociación perdidas o pérdidas de negociación frecuentes
Esta estrategia se basa en la optimización de parámetros y requiere atención a los ciclos de prueba y el control de puntos de deslizamiento.
Se puede probar el efecto del indicador RSI en diferentes períodos de longitud
Los valores pueden ser optimizados para que se ajusten mejor a las características de las diferentes variedades
Se puede estudiar la manera de detener el deterioro dinámico, para que el deterioro sea más eficaz y el deterioro sea más razonable
Se puede considerar la combinación de otros indicadores para mejorar la estabilidad del sistema
Se puede explorar el aprendizaje automático de la máquina para optimizar automáticamente los parámetros del intervalo y hacer que las estrategias sean más robustas
Esta estrategia se basa en el principio de decisión de sobreventa y sobreventa del indicador RSI. La estrategia es una estrategia de negociación simple y efectiva que utiliza un indicador maduro. La estrategia es una estrategia de negociación simple y eficaz que utiliza un indicador maduro.
/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
basePeriod: 15m
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/
// © Rawadabdo
// Ramy's Algorithm
//@version=5
strategy("BTC/USD - RSI", overlay=false, initial_capital = 5000)
// User input
length = input(title = "Length", defval=14, tooltip="RSI period")
first_buy_level = input(title = "Buy Level 1", defval=27, tooltip="Level where 1st buy triggers")
second_buy_level = input(title = "Buy Level 2", defval=18, tooltip="Level where 2nd buy triggers")
first_sell_level = input(title = "Sell Level 1", defval=68, tooltip="Level where 1st sell triggers")
second_sell_level = input(title = "Sell Level 2", defval=80, tooltip="Level where 2nd sell triggers")
takeProfit= input(title="target Pips", defval=2500, tooltip="Fixed pip stop loss distance")
stopLoss = input(title="Stop Pips", defval=5000, tooltip="Fixed pip stop loss distance")
lot = input(title = "Lot Size", defval = 1, tooltip="Trading Lot size")
// Get RSI
vrsi = ta.rsi(close, length)
// Entry Conditions
long1 = (vrsi <= first_buy_level and vrsi>second_buy_level)
long2 = (vrsi <= second_buy_level)
short1= (vrsi >= first_sell_level and vrsi<second_sell_level)
short2= (vrsi >= second_sell_level)
// Entry Orders
// Buy Orders
if (long1 and strategy.position_size == 0)
strategy.entry("Long", strategy.long, qty=lot, comment="Buy")
if (long2 and strategy.position_size == 0)
strategy.entry("Long", strategy.long, qty=lot, comment="Buy")
// Short Orders
if (short1 and strategy.position_size == 0)
strategy.entry("Short", strategy.short,qty=lot, comment="Sell")
if (short2 and strategy.position_size == 0)
strategy.entry("Short", strategy.short,qty=lot, comment="Sell")
// Exit our trade if our stop loss or take profit is hit
strategy.exit(id="Long Exit", from_entry="Long",qty = lot, profit=takeProfit, loss=stopLoss)
strategy.exit(id="Short Exit", from_entry="Short", qty = lot, profit=takeProfit, loss=stopLoss)
// plot data to the chart
hline(first_sell_level, "Overbought Zone", color=color.red, linestyle=hline.style_dashed, linewidth = 2)
hline(second_sell_level, "Overbought Zone", color=color.green, linestyle=hline.style_dashed, linewidth = 2)
hline(first_buy_level, "Oversold Zone", color=color.red, linestyle=hline.style_dashed, linewidth = 2)
hline(second_buy_level, "Oversold Zone", color=color.green, linestyle=hline.style_dashed, linewidth = 2)
plot (vrsi, title = "RSI", color = color.blue, linewidth=2)