Canal de potencia de soporte y resistencia

Forums ProRealTime foro Español Soporte ProScreener Canal de potencia de soporte y resistencia

Viewing 5 posts - 1 through 5 (of 5 total)
  • #252466
    Hola Iván, me dirijo a ti puesto que fuiste quién subió el último indicador y eres un “máquina”; me gustaría un ProScreener de este indicador pero con un “arreglillo” que creo lo haría ideal para mi manera de verlo y es que en vez de señalar un punto y luego una flecha en el techo o suelo más bajo, estas señales se produjeran en una segunda cumbre o suelo a continuación de dichas cumbres o suelos, no sé si me explico, sería como avisando de una supuesta onda impulsiva o correctiva tras dichos techo o suelo que antes hubiese dibujado, que confirmarían la tendencia, (ya que a menudo dichos techos o suelos aunque avisen con puntos y flechas son violados a continuación); sería algo creo muy importante y que por fin aliviaría mis ansias por encontrar “el santo grial de los indicadores”; dejo abajo el código y a ver si hay suerte y puedes hacer que creo que sí, porque como dije al principio eres un “máquina” en el tema, te agradezco todo el trabajo que haces que seguro ayuda a mucha gente, saludos:
    // ———————————————–
    // PRC_Support and Resistance Power Channel [ChartPrime]
    //version = 0
    //07.10.2025
    //Iván González @ http://www.prorealcode.com
    //Sharing ProRealTime knowledge
    // ———————————————–
    // INPUTS
    // ———————————————–
    DEFPARAM DRAWONLASTBARONLY = true
    length = 130
    extend = 30
    // COLOURS
    tcolR = 255
    tcolG = 0
    tcolB = 255
    bcolR = 0
    bcolG = 255
    bcolB = 0
    alpha = 60
    // ———————————————–
    // CALCULATION SUPPORT AND RESISTANCE AREA
    // ———————————————–
    // ATR
    atr = AverageTrueRange[200] * 0.5
    // HIGHEST AND LOWEST PRICE
    maxVal = HIGHEST[length](high)
    minVal = LOWEST[length](low)
    midVal = (maxVal + minVal) / 2
    // ———————————————–
    // DRAW SUPPORT AND RESISTANCE AREA
    // ———————————————–
    if islastbarupdate then
    maxOffset = barssince(high=maxVal)
    minOffset = barssince(low=minVal)
    // RESISTANCE AREA
    DRAWRECTANGLE(barindex length, maxVal + atr, barindex + extend, maxVal atr) fillcolor(tcolR, tcolG, tcolB, alpha)COLOURED(tcolR, tcolG, tcolB,0)
    DRAWSEGMENT(barindex length, maxVal + atr, barindex + extend + 30, maxVal + atr) COLOURED(tcolR, tcolG, tcolB)
    DRAWTEXT(“▲ #maxVal#”, barindex + extend + 10, maxVal)
      
    // SUPPORT AREA
    DRAWRECTANGLE(barindex length, minVal + atr, barindex + extend, minVal atr) fillcolor(bcolR, bcolG, bcolB, alpha)COLOURED(bcolR, bcolG, bcolB, 0)
    DRAWSEGMENT(barindex length, minVal atr, barindex + extend + 30, minVal atr) COLOURED(bcolR, bcolG, bcolB)
    DRAWTEXT(“▼ #minVal#”, barindex + extend + 10, minVal)
      
    // MIDDLE LINE
    DRAWSEGMENT(barindex length, midVal, barindex + extend, midVal) COLOURED(128, 128, 128) STYLE(DOTTEDLINE, 1)
    DRAWTEXT(“▶ #midVal#”, barindex + extend + 10, midVal) COLOURED(128, 128, 128)
      
    // BUY AND SELL POWER
    buyPower = 0
    sellPower = 0
      
    FOR i = 0 TO length 1 DO
    IF close[i] > open[i] THEN
    buyPower = buyPower + 1
    ELSIF close[i] < open[i] THEN
    sellPower = sellPower + 1
    ENDIF
    NEXT
      
    textPosX = barindex + round(extend*0.5)
    DRAWTEXT(“Sell Power: #sellpower#”, textPosX, maxVal)
    DRAWTEXT(“Buy Power: #buypower#”, textPosX, minVal)
      
    // DRAW SUPPORT AND RESISTANCE TESTS
    topOfSupport = minVal + atr
    bottomOfResistance = maxVal atr
      
    FOR i = 0 TO length 1 DO
    IF low[i+1] <= topOfSupport AND low[i] > topOfSupport THEN
    DRAWARROWUP(barindex i, minval atr*1.5) COLOURED(bcolR, bcolG, bcolB)
    ENDIF
    IF high[i+1] >= bottomOfResistance AND high[i] < bottomOfResistance THEN
    DRAWARROWDOWN(barindex i, maxval + 1.5*atr) COLOURED(tcolR, tcolG, tcolB)
    ENDIF
    if high[i]=maxval then
    drawpoint(barindex[i],maxval,3)coloured(tcolR, tcolG, tcolB)
    endif
    if low[i]=minval then
    drawpoint(barindex[i],minval,3)coloured(bcolR, bcolG, bcolB)
    endif
    NEXT
      
    endif
    return
    #252469

    Hola de nuevo, he estado dándole vueltas a la cabeza con el tema y puede que no sea tan simple de hacer como te lo he expuesto, porque pienso en lo siguiente: Y como se sabe cuál es la segunda cumbre más baja o suelo!?, ya que si en un gráfico, este se ampliara, pueden aparecer nuevos picos o suelos más altos o bajos… por eso pensando creo que la solución podría estar en un ProScreener que me hiciste hace unos meses, te pedí que me avisara cuando se diera un  CHoCH bajista o alcista del indicador Smart Money Concepts:

    //——————————————————————————–//
    //Screener_Smart Money Concepts
    //version = 1
    //29.07.2024
    //Iván González @ http://www.prorealcode.com
    //Sharing ProRealTime knowledge
    //——————————————————————————–//
    //—–Inputs———————————————————————//
    length=50
    showbull=3//1=all 2=bos 3=CHoCH
    showbear=3//1=all 2=bos 3=CHoCH
    //——————————————————————————–//
    //—–Swings———————————————————————//
    //—Swing length
    os=0
    upper=highest[length](high)
    lower=lowest[length](low)
    if high[length]>upper then
    os=0
    elsif low[length]<lower then
    os=1
    else
    os=os[1]
    endif
    if os=0 and os[1]<>0 then
    mytop=high[length]
    else
    mytop=0
    endif
    if os=1 and os[1]<>1 then
    mybot=low[length]
    else
    mybot=0
    endif
    //——————————————————————————–//
    //—–Pivot High—————————————————————–//
    if mytop then
    topcross=1
    topy=mytop
    endif
    //——————————————————————————–//
    //—–Pivot Low——————————————————————//
    if mybot then
    botcross=1
    boty=mybot
    endif
    //Detect bullish Structure
    signalLong=0
    if close crosses over topy and topcross then
    choch=undefined
    if trend<0 then
    choch=1
    endif
    if showbull=1 or (showbull=2 and not choch) or (showbull=3 and choch) then
    signalLong=1
    endif
    topcross=0
    trend=1
    endif
    //Detect Bullish Strcuture
    signalshort=0
    if close crosses under boty and botcross then
    choch=undefined
    if trend>0 then
    choch=1
    endif
    if showbear=1 or (showbear=2 and not choch) or (showbear=3 and choch) then
    signalshort=1
    endif
    botcross=0
    trend=1
    endif
    screener[signalLong or signalShort](signalLong as “long”,signalShort as “short”)
    Por eso el ProScreener que te voy a pedir sería que tras un CHoCH alcista o bajista viniera el punto y flecha del indicador que te indiqué al principio de la petición, espero no te haya resultado muy liosa la explicación, saludos.
    #252470

    Y quiero recalcar, que la flecha alcista sólo avise cuando el CHoCH es alcista o flecha bajista con CHoCH bajista; sé que puedo parecer un poco pesado, pero es que creo que esta sea una de las mejores formas de poder encontrar la famosa 3º onda de Elliot.

    #252480

    Buenas de nuevo Iván, sé que es fin de semana y por eso mismo ni tan siquiera creo hayas leído ninguno de los mensajes que he escrito (mejor), porque de lo que te pido veo puede ser muy engorroso y por eso te pido simplemente que el ProScreener avise cuando se dé la flecha en cuestión, ya veré como sacarle la mejoría pensando en como hacerlo, gracias y disculpa los varios post, saludos.

    #252490
    2 users thanked author for this post.
Viewing 5 posts - 1 through 5 (of 5 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login