CÓDIGO COMO PARTE DE UN SCREENER

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #240704 quote
    JEA
    Participant
    New

    Hola.

    Estoy intentando hacer un screener en el cual una de las condiciones sea que el volumen en cualquiera de las 5 últimas sesiones sea 2 veces mayor que la media móvil simple del volumen de las últimas 4 sesiones. El código que estoy empleando es el siguiente:

    // Volumen > 2*MM4
    p=5
    vol=volume>2*(average[4](volume))
    c1=0
    For i=0 to p
    If vol[i] then
    c1=vol
    break
    endif
    next
    Cond1=volume>c1

    Cuando ejecuto el screener con este código me da volúmenes en las últimas 5 sesiones tanto que cumplen la condición (ser mayores que 2 veces la media de las 4 últimas sesiones) como que no. Hay algo que se me escapa o que no sé codificar y agradecería una ayuda.

    Un saludo.

    JEA

    #240707 quote
    JS
    Participant
    Senior

    Hola

    Pruebe este screener… SMAVol=Average[4](Volume) HighVol=Summation[5](Volume>2*SMAVol)>=1 HighestVol=Highest[5](Volume) Screener[HighVol](SMAVol as “SMAVol”,HighestVol as “HighestVol”)

    Iván González thanked this post
    Scherm­afbeelding-2024-11-24-om-20.50.58.jpg Scherm­afbeelding-2024-11-24-om-20.50.58.jpg
    #240711 quote
    JEA
    Participant
    New
    Hola y muchas gracias por la rapidez en contestar. El screener “per se” funciona perfectamente. No obstante, como lo tengo con otras condiciones estoy probando cuál sería la condición que le tengo que poner en el screener junto con las otras condiciones y no me funciona. He probado lo siguiente: Cond5=SMAVol o bien Cond5=HighVol o bien Cond5=HighestVol, y luego Setup=Cond1 and Cond2 and Cond3 and Cond4 and Cond5 (esta Cond5 es la que me has mandado y he probado con las otras 4 condiciones sin éxito). Screener [setup] Cuando lanzo el screener me da error. No acierto a entender por qué falla. He probado incluso a suprimir el comando HighestVol=Highest[5](Volume) porque no me interesa tanto saber qué valor presenta la mayor subida de volumen respecto a la media sino lo que quiero es que me filtre, de acuerdo con todas las condiciones anteriores (Cond1 a Cond4) más esta del volumen, aquellos y sólo aquellos valores cuyo volumen en los días previos tienen el volumen exigido. En la prueba anterior de supresión de HighstestVol, con la Cond5=volume>HighVol sí funciona el screener pero de nuevo no filtra los valores cuyo volumen sea superior a 2 veces la media de los últimos días. Quizás no me he explicado bien en mi anterior correo porque aunque no sé gran cosa de programación tengo entendido que “summation” agrega valores y no los discrimina. En fin, que sea lo que sea no va. Nuevamente gracias por tu ayuda y a ver si le damos una vuelta a ésto.
    #240712 quote
    JEA
    Participant
    New
    Hola de nuevo. Trasteando he encontrado la siguiente solución: vol=volume>2*(average[4](volume)) Cond5=summation[5](vol) Con ésto me funciona perfectamente.  Gracias por tu ayuda y un saludo.
    Iván González thanked this post
Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.

CÓDIGO COMO PARTE DE UN SCREENER


ProScreener: Buscadores de Mercado y Rastreo

New Reply
Author
author-avatar
JEA @jea Participant
Summary

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

Topic Details
Forum: ProScreener: Buscadores de Mercado y Rastreo
Language: Spanish
Started: 11/24/2024
Status: Active
Attachments: 1 files
Logo Logo
Loading...