//@version=4
strategy("Estrategia de compra con RSI", overlay=true)
// Configuración de los RSI
rsi1_length = 14
rsi2_length = 14
rsi3_length = 7
// Cálculo de los RSI
rsi1 = rsi(close, rsi1_length)
rsi2 = security(syminfo.tickerid, "5", rsi(close, rsi2_length))
rsi3 = security(syminfo.tickerid, "15", rsi(close, rsi3_length))
// Condiciones de entrada
buy_signal = rsi1 < 35 and rsi2 < 35 and rsi3 < 35
// Lógica de la estrategia
if buy_signal
strategy.entry("Compra", strategy.long)
// Plot de los RSI
plot(rsi1, color=color.blue, title="RSI 3 minutos")
plot(rsi2, color=color.red, title="RSI 5 minutos")
plot(rsi3, color=color.green, title="RSI 15 minutos")
3 RSI en diferentes temporalidades no genera ordenes en ningun rango
3 RSI en diferentes temporalidades no genera ordenes en ningun rango
Saludos, esta estrategia compila pero no genera ordenes de compra y venta en ningun rango adicionalmente no me plotea la funcion si pueden ayuarme se los agradeceria.
Re: 3 RSI en diferentes temporalidades no genera ordenes en ningun rango
No conozco ese lenguaje, me defiendo algo en C#, por lo tanto, poco puedo decir si el código está bien.
Pero me pregunto si esta sentencia condicional alguna vez se llega a cumplir.
Prueba solo con una condición:
// Condiciones de entrada
buy_signal = rsi1 < 35 and rsi2 < 35 and rsi3 < 35
Pero me pregunto si esta sentencia condicional alguna vez se llega a cumplir.
Prueba solo con una condición:
// Condiciones de entrada
buy_signal = rsi1 < 35 and rsi2 < 35 and rsi3 < 35
Re: 3 RSI en diferentes temporalidades no genera ordenes en ningun rango
Hola
1) El código tiene un error de indexado. Después del "if", tiene que haber 4 espacios o una tabulación
2) Solo abre operaciones de compra. No tiene una regla de venta o de cierre. Entonces tu código hace solo una operación.
Agregué sell_signal siguiendo la logica de buy_signal
3) v4 es obsoleto. Lo convertí a v5 usando el conversor que está integrado en el editor
4) security está mal usado, y tu indicador repinta.
Para evitarlo, recomiendo usar la función f_secureSecurity de esta librería
5) chatGPT no sirve para crear código en PineScript. Siempre tiene errores. La IA es un apoderosa herramienta que llegó para quedarse, pero en este caso puntual, no sirve (aun...)
6) Por último. Debido a tan poca precisión Stackoverflow ha baneado a ChatGPT.
TradingView también ha decidido no proporcionar ningún soporte para chatGPT.
Creo que aquí. En X-Trader no existe esta restricción, y por eso va mi respuesta. Si me equivoco, que alguien me avise
El código limpio y arreglado es este:
1) El código tiene un error de indexado. Después del "if", tiene que haber 4 espacios o una tabulación
2) Solo abre operaciones de compra. No tiene una regla de venta o de cierre. Entonces tu código hace solo una operación.
Agregué sell_signal siguiendo la logica de buy_signal
3) v4 es obsoleto. Lo convertí a v5 usando el conversor que está integrado en el editor
4) security está mal usado, y tu indicador repinta.
Para evitarlo, recomiendo usar la función f_secureSecurity de esta librería
5) chatGPT no sirve para crear código en PineScript. Siempre tiene errores. La IA es un apoderosa herramienta que llegó para quedarse, pero en este caso puntual, no sirve (aun...)
6) Por último. Debido a tan poca precisión Stackoverflow ha baneado a ChatGPT.
TradingView también ha decidido no proporcionar ningún soporte para chatGPT.
Creo que aquí. En X-Trader no existe esta restricción, y por eso va mi respuesta. Si me equivoco, que alguien me avise
El código limpio y arreglado es este:
Código: Seleccionar todo
//@version=5
strategy('Estrategia de compra con RSI', overlay=true)
// Configuración de los RSI
rsi1_length = 14
rsi2_length = 14
rsi3_length = 7
f_secureSecurity(_symbol, _res, _src) =>
request.security(_symbol, _res, _src[1], lookahead = barmerge.lookahead_on)
// Cálculo de los RSI
rsi1 = ta.rsi(close, rsi1_length)
rsi2 = f_secureSecurity(syminfo.tickerid, '5', ta.rsi(close, rsi2_length))
rsi3 = f_secureSecurity(syminfo.tickerid, '15', ta.rsi(close, rsi3_length))
// Condiciones de entrada
buy_signal = rsi1 < 35 and rsi2 < 35 and rsi3 < 35
sell_signal = rsi1 > 35 and rsi2 > 35 and rsi3 > 35
// Lógica de la estrategia
if buy_signal
strategy.entry('Compra', strategy.long)
if sell_signal
strategy.entry('Venta', strategy.short)
// Plot de los RSI
plot(rsi1, color=color.new(color.blue, 0), title='RSI 3 minutos')
plot(rsi2, color=color.new(color.red, 0), title='RSI 5 minutos')
plot(rsi3, color=color.new(color.green, 0), title='RSI 15 minutos')
Gustavo Cardelle @gu5tavo71
Senior PineScript Developer
TradingView | Twitter | Freelancer | Telegram
Senior PineScript Developer
TradingView | Twitter | Freelancer | Telegram
Re: 3 RSI en diferentes temporalidades no genera ordenes en ningun rango
Muy agradecido la verdad soy nuevo en esto y me ayudo con la "IA" ers un CRACK
gu5tavo71 escribió: 28 Jun 2023 14:41 Hola
1) El código tiene un error de indexado. Después del "if", tiene que haber 4 espacios o una tabulación
2) Solo abre operaciones de compra. No tiene una regla de venta o de cierre. Entonces tu código hace solo una operación.
Agregué sell_signal siguiendo la logica de buy_signal
3) v4 es obsoleto. Lo convertí a v5 usando el conversor que está integrado en el editor
4) security está mal usado, y tu indicador repinta.
Para evitarlo, recomiendo usar la función f_secureSecurity de esta librería
5) chatGPT no sirve para crear código en PineScript. Siempre tiene errores. La IA es un apoderosa herramienta que llegó para quedarse, pero en este caso puntual, no sirve (aun...)
6) Por último. Debido a tan poca precisión Stackoverflow ha baneado a ChatGPT.
TradingView también ha decidido no proporcionar ningún soporte para chatGPT.
Creo que aquí. En X-Trader no existe esta restricción, y por eso va mi respuesta. Si me equivoco, que alguien me avise
El código limpio y arreglado es este:
Código: Seleccionar todo
//@version=5 strategy('Estrategia de compra con RSI', overlay=true) // Configuración de los RSI rsi1_length = 14 rsi2_length = 14 rsi3_length = 7 f_secureSecurity(_symbol, _res, _src) => request.security(_symbol, _res, _src[1], lookahead = barmerge.lookahead_on) // Cálculo de los RSI rsi1 = ta.rsi(close, rsi1_length) rsi2 = f_secureSecurity(syminfo.tickerid, '5', ta.rsi(close, rsi2_length)) rsi3 = f_secureSecurity(syminfo.tickerid, '15', ta.rsi(close, rsi3_length)) // Condiciones de entrada buy_signal = rsi1 < 35 and rsi2 < 35 and rsi3 < 35 sell_signal = rsi1 > 35 and rsi2 > 35 and rsi3 > 35 // Lógica de la estrategia if buy_signal strategy.entry('Compra', strategy.long) if sell_signal strategy.entry('Venta', strategy.short) // Plot de los RSI plot(rsi1, color=color.new(color.blue, 0), title='RSI 3 minutos') plot(rsi2, color=color.new(color.red, 0), title='RSI 5 minutos') plot(rsi3, color=color.new(color.green, 0), title='RSI 15 minutos')
Si te ha gustado este hilo del Foro, ¡compártelo en redes!