porcentaje entre minimo y maximo y una condicion

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #238342 quote
    samfersamfer
    Participant
    New

    Hola,

    Estoy intentando hacer un screener que calcule el porcentaje entre el mínimo y el máximo de cada vela y ademas que cumpla la condición de que las 5 últimas velas ya cerradas (la que esta formandose no) tengan todas un tamaño menor o del 3%.

    Estoy con este código, pero el resultado que me da no es correcto.
    ¿podrian decirme que me falta?
    Muchas gracias

     

    maximo = DHigh(5)
    minimo = DLow(5)
    variacion = (((maximo / minimo) – 1) * 100)
    c1 = (variacion < 3)
    SCREENER[c1](variacion AS “Variacion”)

    #238361 quote
    Iván GonzálezIván González
    Moderator
    Legend

    El problema con tu código es que estás utilizando las funciones DHigh(5) y DLow(5), que devuelven el máximo y el mínimo de los últimos 5 días, en lugar de calcular el porcentaje de variación entre el máximo y el mínimo de cada una de las últimas 5 velas ya cerradas individualmente. Además, la condición que has puesto verifica el porcentaje de las 5 velas en conjunto, pero necesitas verificar que cada una de las 5 velas tenga un rango menor o igual al 3%.
    Este es un screener que hace lo que buscas:

    // Variables
    cumpleCondicion = 1  // Inicializamos la variable de verificación
    
    // Iterar sobre las últimas 5 velas cerradas
    FOR i = 1 TO 5 DO
    maximo = High[i]
    minimo = Low[i]
    variacion = ((maximo - minimo) / minimo) * 100  // Cálculo del porcentaje de variación
    
    // Verificar si la variación es mayor al 3%
    IF variacion > 3 THEN
    cumpleCondicion = 0  // Si alguna vela supera el 3%, no cumple la condición
    ENDIF
    NEXT
    
    // Definir la condición para el screener
    c1 = (cumpleCondicion = 1)
    SCREENER[c1]

    El código itera sobre las últimas 5 velas cerradas (índices 1 a 5).
    Calcula la variación porcentual de cada vela y verifica si supera el 3%.
    Si alguna vela supera el 3%, la variable cumpleCondicion se establece en 0.
    Finalmente, el screener solo muestra resultados cuando la condición se cumple para las 5 velas.

    Te dejo además un indicador para que verfiques los resultados:

    // Variables
    cumpleCondicion = 1  // Inicializamos la variable de verificación
    
    // Iterar sobre las últimas 5 velas cerradas
    FOR i = 1 TO 5 DO
    maximo = High[i]
    minimo = Low[i]
    variacion = ((maximo - minimo) / minimo) * 100  // Cálculo del porcentaje de variación
    
    // Verificar si la variación es mayor al 3%
    IF variacion > 3 THEN
    cumpleCondicion = 0  // Si alguna vela supera el 3%, no cumple la condición
    ENDIF
    NEXT
    
    var=(high-low)/low*100
    
    // Definir la condición para el screener
    c1 = (cumpleCondicion = 1)
    
    return var as "VAR%" coloured("blue"), 0 as "Zero",3 as "3%"coloured("red"), c1 as "cumple" style(histogram)coloured("green")
    
    2024-10-01_17-07.png 2024-10-01_17-07.png
    #238373 quote
    samfersamfer
    Participant
    New

    Muchisimas gracias,

    Funciona perfectamente y además se ha molestado en añadir un indicador.

    No puedo estar mas agradecido, ha sido muy amable y rápido en contestar.

    Gracias.

Viewing 3 posts - 1 through 3 (of 3 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

porcentaje entre minimo y maximo y una condicion


ProScreener: Buscadores de Mercado y Rastreo

New Reply
Author
author-avatar
samfer @samfer Participant
Summary

This topic contains 2 replies,
has 2 voices, and was last updated by samfersamfer
1 year, 11 months ago.

Topic Details
Forum: ProScreener: Buscadores de Mercado y Rastreo
Language: Spanish
Started: 10/01/2024
Status: Active
Attachments: 1 files
ProRealCode ProRealCode
Loading...