Máximo numero de velas rojas en proscreener bajista

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #185047 quote
    mamees
    Participant
    New

    En el proscreener que he creado, quiero que en el diario, si las ultimas 5 velas son rojas, entonces que no salgan en el proscreener.

    En el semanal pensaba que lo tenia hecho y funcionaba, pero tal vez, no este bien, porque si lo copio en la parte del diario, no funciona.

    La variable es en semanal: velasRojas5ConsecutivasS

    Y en diario: velasRojas5ConsecutivasD

    //SEMANAL
    TIMEFRAME(weekly)
    patronW=0
    m1=0
    m2=0
    posicionMaxRev1=0
    //OBTENEMOS LOS MAXIMOS RELEVANTES
    for i=3 to barindex
    Esmaximorelevante = (high[i]>=high[i-3]) AND (high[i]>=high[i-2]) AND (high[i]>=high[i-1]) AND (high[i]>=high[i+1]) AND (high[i]>=high[i+2]) AND (high[i]>=high[i+3])
    if Esmaximorelevante=1 then
    if m1=0 then
    m1=high[i]
    posicionMaxRev1=i
    else
    m2=high[i]
    break
    endif
    endif
    next
    //NO QUEREMOS 5 VELAS ROJAS CONSECUTIVAS
    velasRojas5ConsecutivasS=0
    for a=0 to 4
    if close[a] > open[a] then
    velasRojas5ConsecutivasS=1
    break
    endif
    next
    //MAXIMOS RELEVANTES DESCENDENTES
    patronW = (m1<m2 and velasRojas5ConsecutivasS)  //tendencia bajista
    //MIRO QUE NO HAYA NINGUN CIERRE POR ARRIBA DESDE HOY HASTA EL MAXIMO RELEVANTE
    for j=0 to posicionMaxRev1
    if close[j] > m1 then
    patronW=0
    break
    endif
    next
    
    //DIARIO
    TIMEFRAME(daily)
    patronD=0
    if patronW then
    avgv20 = average[20](volume)
    avgv50 = average[50](volume)
    avgv100 = average[100](volume)
    avgv200 = average[200](volume)
    minimoVolumen =  avgv20>VolumenK*1000 and avgv50>VolumenK*1000 and avgv100>VolumenK*1000 and avgv200>VolumenK*1000
    if minimoVolumen=1 then
    m1=0
    m2=0
    posicionMaxRev1D=0
    maximosRelevantesSuperiorM20=0
    //OBTENEMOS LOS MAXIMOS RELEVANTES Y COMPROBAMOS SI ESTAN POR ENCIMA DE LA M20
    for i=3 to barindex
    Esmaximorelevante = (high[i]>=high[i-3]) AND (high[i]>=high[i-2]) AND (high[i]>=high[i-1]) AND (high[i]>=high[i+1]) AND (high[i]>=high[i+2]) AND (high[i]>=high[i+3])
    if Esmaximorelevante=1 then
    if m1=0 then
    m1=high[i]
    posicionMaxRev1D=i
    maximosRelevantesSuperiorM20 = close[i] > average[20][i]
    else
    m2=high[i]
    break
    endif
    endif
    next
    //NO QUEREMOS 5 VELAS ROJAS CONSECUTIVAS 
    velasRojas5ConsecutivasD=0 
    for a=0 to 4 
    if close[a] > open[a] then 
    velasRojas5ConsecutivasD=1 
    break 
    endif 
    next
    //QUEREMOS QUE LOS MAXIMOS RELEVANTES SEAN DECRECIENTES ADEMAS DE QUE ESTE POR DEBAJO DE LA M20
    patronD = (m1<m2 and maximosRelevantesSuperiorM20=0 and velasRojas5ConsecutivasD)
    //SI HAY CIERRE POR DEBAJO DE LOS 2 ANTERIORES MINIMOS RELEVANTES, ENTONCES YA ESTAMOS EN ETAPA 4
    min1=0
    min2=0
    minRelevante=0
    posicionMinRelevante1=0
    posicionMinRelevante2=0
    for i=3 to barindex
    Esmimimorelevante = (low[i]<=low[i-3]) AND (low[i]<=low[i-2]) AND (low[i]<=low[i-1]) AND (low[i]<=low[i+1]) AND (low[i]<=low[i+2]) AND (low[i]<=low[i+3])
    if Esmimimorelevante=1 then
    if min1=0 then
    min1=low[i]
    minRelevante=min1
    posicionMinRelevante1=i
    else
    min2=low[i]
    posicionMinRelevante2=i
    break
    endif
    endif
    next
    if(min2<min1)then
    minRelevante=min2
    posicionMinRelevante1=posicionMinRelevante2
    endif
    
    for k=0 to posicionMinRelevante1
    if close[k] < minRelevante then
    patronD=1
    break
    endif
    next
    
    //MIRO QUE NO HAYA NINGUN CIERRE POR ARRIBA DESDE HOY HASTA EL MAXIMO RELEVANTE
    for j=0 to posicionMaxRev1D
    if close[j] > m1 then
    patronD=0
    break
    endif
    next
    endif //volumen
    
    if patronD then
    TIMEFRAME(1hour)
    patron=0
    //v1.3 solo comprobamos el patron si cumple el volumen
    avgv20 = average[20](volume)
    avgv50 = average[50](volume)
    avgv100 = average[100](volume)
    avgv200 = average[200](volume)
    minimoVolumen =  avgv20>VolumenK*100 and avgv50>VolumenK*100 and avgv100>VolumenK*100 and avgv200>VolumenK*100
    mm20h = average[20](close)
    if(mm20h<mm20h[1] and mm20h[1]<mm20h[2] and mm20h[2]<mm20h[3])then
    cM20dNegativa=1
    else
    cM20dNegativa=0
    endif
    if minimoVolumen=1 and cM20dNegativa=1 then
    m1=0
    m2=0
    for i=3 to barindex
    Esmimimorelevante = (low[i]<=low[i-3]) AND (low[i]<=low[i-2]) AND (low[i]<=low[i-1]) AND (low[i]<=low[i+1]) AND (low[i]<=low[i+2]) AND (low[i]<=low[i+3])
    if Esmimimorelevante=1 then
    if m1=0 then
    m1=low[i]
    else
    m2=low[i]
    break
    endif
    endif
    next
    patron = (m1<m2)  //tendencia bajista
    if patron then
    //v1.5 modificamos la verificacion de tendencia alcista, comprobamos 2 ultimos maximos crecientes
    m1=0
    m2=0
    for i=3 to barindex
    Esmaximorelevante = (high[i]>=high[i-3]) AND (high[i]>=high[i-2]) AND (high[i]>=high[i-1]) AND (high[i]>=high[i+1]) AND (high[i]>=high[i+2]) AND (high[i]>=high[i+3])
    if Esmaximorelevante=1 then
    if m1=0 then
    m1=high[i]
    else
    m2=high[i]
    break
    endif
    endif
    next
    patron = ( m1<m2 )  //tendencia bajista
    endif
    endif
    endif
    endif
    // Este código se relaciona con la siguiente unidad de tiempo:DEFAULT
    screener[patron=1 and patronD=1 and patronW=1]
    
    #185094 quote
    JC_Bywan
    Moderator
    Master

    ¡Hola!

    En diaro, en lugar de lineas 67-73, podemos probar de esta manera?

    velasRojas5ConsecutivasD = (summation[5](open>close) < 5)
Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.

Máximo numero de velas rojas en proscreener bajista


ProScreener: Buscadores de Mercado y Rastreo

New Reply
Author
author-avatar
mamees @mamees Participant
Summary

This topic contains 1 reply,
has 2 voices, and was last updated by JC_Bywan
4 years, 2 months ago.

Topic Details
Forum: ProScreener: Buscadores de Mercado y Rastreo
Language: Spanish
Started: 01/10/2022
Status: Active
Attachments: No files
Logo Logo
Loading...