Error en sistema ichimoku
Forums › ProRealTime foro Español › Soporte ProBuilder › Error en sistema ichimoku
- This topic has 4 replies, 4 voices, and was last updated 2 weeks ago by Iván.
-
-
11/06/2024 at 6:52 PM #240038
The code for the system that I attached gives me an error.
Could someone correct it?
Thank youEl código para el sistema que adjunto me da error.
¿Alguien podría corregirlo?
Gracias// Parámetros Ichimoku
TenkanLength = 9
KijunLength = 26
SenkouLength = 52
Displacement = 26// Cálculo de las líneas Ichimoku
Tenkan = (Highest[TenkanLength](High) + Lowest[TenkanLength](Low)) / 2
Kijun = (Highest[KijunLength](High) + Lowest[KijunLength](Low)) / 2
SenkouA = (Tenkan + Kijun) / 2
SenkouB = (Highest[SenkouLength](High) + Lowest[SenkouLength](Low)) / 2// Desplazar Senkou Span A y B
SenkouA_Lead = SenkouA[Displacement]
SenkouB_Lead = SenkouB[Displacement]// Calcular Chikou Span (línea de rezago)
Chikou = Close[Displacement]// Condiciones para la señal de compra
BuySignal = Close > SenkouA_Lead AND Close > SenkouB_Lead AND Tenkan > Kijun AND Chikou > Close// Condiciones para la señal de venta
SellSignal = Close < SenkouA_Lead AND Close < SenkouB_Lead AND Tenkan < Kijun AND Chikou < Close// Definir las alertas
IF BuySignal THEN
ALERT(“Señal de compra Ichimoku”, 1)IF SellSignal THEN
ALERT(“Señal de venta Ichimoku”, 1)111/06/2024 at 7:44 PM #240039Publica solo en el idioma del foro en el que publicas. Por ejemplo, inglés solo en foros en inglés y español solo en foros en español. Gracias 🙂
1. sólo se pueden utilizar LETRAS y NÚMEROS para los nombres de variables, no se permiten otros caracteres o símbolos;
2. la instrucción ALERT no existe (la reemplacé con SCREENER);
3. Faltan dos ENDIF al final.Esta versión funciona (solo verifiqué errores de sintaxis):
12345678910111213141516171819202122232425262728293031323334// Parámetros IchimokuTenkanLength = 9KijunLength = 26SenkouLength = 52Displacement = 26// Cálculo de las líneas IchimokuTenkan = (Highest[TenkanLength](High) + Lowest[TenkanLength](Low)) / 2Kijun = (Highest[KijunLength](High) + Lowest[KijunLength](Low)) / 2SenkouA = (Tenkan + Kijun) / 2SenkouB = (Highest[SenkouLength](High) + Lowest[SenkouLength](Low)) / 2// Desplazar Senkou Span A y BSenkouALead = SenkouA[Displacement]SenkouBLead = SenkouB[Displacement]// Calcular Chikou Span (línea de rezago)Chikou = Close[Displacement]// Condiciones para la señal de compraBuySignal = Close > SenkouALead AND Close > SenkouBLead AND Tenkan > Kijun AND Chikou > Close// Condiciones para la señal de ventaSellSignal = Close < SenkouALead AND Close < SenkouBLead AND Tenkan < Kijun AND Chikou < Close// Definir las alertasSignal = 0IF BuySignal THENSignal = 1ELSIF SellSignal THENSignal = 2ENDIFSCREENER[Signal](Signal AS "Señal Ichimoku 1=↑,2=↓")Los valores devueltos por SCREENER no pueden ser negativos, por lo que utilicé 1 para señales alcistas y 2 para señales bajistas.
11/06/2024 at 9:21 PM #240040pequeña modificación
chikou =close123456789101112131415161718192021222324252627282930313233// Parámetros IchimokuTenkanLength = 9KijunLength = 26SenkouLength = 52Displacement = 26// Cálculo de las líneas IchimokuTenkan = (Highest[TenkanLength](High) + Lowest[TenkanLength](Low)) / 2Kijun = (Highest[KijunLength](High) + Lowest[KijunLength](Low)) / 2SenkouA = (Tenkan + Kijun) / 2SenkouB = (Highest[SenkouLength](High) + Lowest[SenkouLength](Low)) / 2// Desplazar Senkou Span A y BSenkouALead = SenkouA[Displacement]SenkouBLead = SenkouB[Displacement]// Calcular Chikou Span (línea de rezago)Chikou = Close// Condiciones para la señal de compraBuySignal = Close > SenkouALead AND Close > SenkouBLead AND Tenkan > Kijun AND Chikou > Close[Displacement]// Condiciones para la señal de ventaSellSignal = Close < SenkouALead AND Close < SenkouBLead AND Tenkan < Kijun AND Chikou < Close[Displacement]// Definir las alertasSignal = 0IF BuySignal THENSignal = 1ELSIF SellSignal THENSignal = 2ENDIFSCREENER[Signal](Signal AS "Señal Ichimoku 1=↑,2=↓")2 users thanked author for this post.
11/06/2024 at 9:53 PM #240043Gracias!!!
Intento que el sistema me marque en el gráfico cuándo hacer las entradas y las salidas, pero al pasarlo por el verificador me da un par de errores, a ver si me los podéis solucionar, gracias de antemano.
TenkanLength = 9 // Periodo Tenkan
KijunLength = 26 // Periodo Kijun
SenkouLength = 52 // Periodo Senkou Span B
Displacement = 26 // Desplazamiento de la nube (Senkou Span A y B)// Cálculos de las líneas Ichimoku
Tenkan = (Highest[TenkanLength](High) + Lowest[TenkanLength](Low)) / 2
Kijun = (Highest[KijunLength](High) + Lowest[KijunLength](Low)) / 2
SenkouA = (Tenkan + Kijun) / 2
SenkouB = (Highest[SenkouLength](High) + Lowest[SenkouLength](Low)) / 2// Desplazar Senkou Span A y B
SenkouALead = SenkouA[Displacement]
SenkouBLead = SenkouB[Displacement]// Cálculo de la Chikou Span
Chikou = Close[Displacement]// Condiciones de compra (long)
BuyCondition = Close > SenkouALead AND Close > SenkouBLead AND Tenkan > Kijun AND Chikou > Close// Condiciones de venta (short)
SellCondition = Close < SenkouALead AND Close < SenkouBLead AND Tenkan < Kijun AND Chikou < Close// Entradas y salidas
IF BuyCondition THEN
BUY 1 CONTRACT AT MARKET
// Marcar entrada en gráfico con una flecha verde
DRAWARROWUP(Close, “BUY”, color.green)IF SellCondition THEN
SELL 1 CONTRACT AT MARKET
// Marcar salida en gráfico con una flecha roja
DRAWARROWDOWN(Close, “SELL”, color.red)// Opcional: Stop Loss y Take Profit (puedes ajustarlos según tu estrategia)
StopLoss = 200 // Ejemplo: Stop Loss de 200 puntos
TakeProfit = 400 // Ejemplo: Take Profit de 400 puntos// Aplicando Stop Loss y Take Profit
SET STOP LOSS StopLoss
SET TAKE PROFIT TakeProfit11/07/2024 at 9:40 AM #240048Buenas. En el módulo de backtesting no puedes dibujar flechas. De todas formas cuando el sistema entra/sale ya te dibuja una flecha…
Lo que puedes hacer es poner al final del código lo siguiente:12GRAPH BUYCONDITION COLOURED("GREEN")GRAPH SELLCONDITION COLOURED("RED")Se abrirá un cuadro marcando las señales de entrada y salida.
Revisando tu código hay algun error. No me meto en cómo funciona (si bien o mal). He corregido esos errores para que se pueda ejecutar.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647TenkanLength = 9 // Periodo TenkanKijunLength = 26 // Periodo KijunSenkouLength = 52 // Periodo Senkou Span BDisplacement = 26 // Desplazamiento de la nube (Senkou Span A y B)// Cálculos de las líneas IchimokuTenkan = (Highest[TenkanLength](High) + Lowest[TenkanLength](Low)) / 2Kijun = (Highest[KijunLength](High) + Lowest[KijunLength](Low)) / 2SenkouA = (Tenkan + Kijun) / 2SenkouB = (Highest[SenkouLength](High) + Lowest[SenkouLength](Low)) / 2// Desplazar Senkou Span A y BSenkouALead = SenkouA[Displacement]SenkouBLead = SenkouB[Displacement]// Cálculo de la Chikou SpanChikou = Close[Displacement]// Condiciones de compra (long)BuyCondition = Close > SenkouALead AND Close > SenkouBLead AND Tenkan > Kijun AND Chikou > Close// Condiciones de venta (short)SellCondition = Close < SenkouALead AND Close < SenkouBLead AND Tenkan < Kijun AND Chikou < Close// Entradas y salidasIF BuyCondition THENBUY 1 CONTRACT AT MARKETendif// Marcar entrada en gráfico con una flecha verde//DRAWARROWUP(Close, "BUY", color.green)IF SellCondition THENSELL 1 CONTRACT AT MARKETendif// Marcar salida en gráfico con una flecha roja//DRAWARROWDOWN(Close, "SELL", color.red)// Opcional: Stop Loss y Take Profit (puedes ajustarlos según tu estrategia)StopLoss = 200 // Ejemplo: Stop Loss de 200 puntosTakeProfit = 400 // Ejemplo: Take Profit de 400 puntos// Aplicando Stop Loss y Take ProfitSET STOP LOSS StopLossSET TARGET PROFIT TakeProfitGRAPH BUYCONDITION COLOURED("GREEN")GRAPH SELLCONDITION COLOURED("RED")Si al sistema no le dices nada va a estar comprando cada vez que se produzca la señal de entrada. Por otro lado, el cierre de las posiciones lo haces de 1 en 1, no sé si es lo que quieres. En caso de querer cerrar toda la posición de una vez tendrás que poner
SELL AT MARKET
2 users thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on