AYUDA CON CREAR NUEVA LISTA SCREENER
Forums › ProRealTime foro Español › Soporte ProScreener › AYUDA CON CREAR NUEVA LISTA SCREENER
- This topic has 2 replies, 2 voices, and was last updated 7 hours ago by
Javier Suarez Vence.
-
-
08/24/2025 at 7:29 PM #250023
Intento crear una lista con ciertas condiciones :
-Rangos laterales , alta volatilidad, buenos fundamentales…
Gemini me dice que tengo que hacer esto pero no tengo ni idea de cómo avanzar . Solicito ayuda incluida la profesional para poder configurarlo . Gracias de antemano :
ProRealTime no solo está capacitado para esto, sino que es una herramienta mucho más potente y personalizable que Finviz. Es como pasar de un coche de calle a un coche de Fórmula 1: requiere un poco más de configuración, pero los resultados son de un nivel superior.
La herramienta que usarás dentro de ProRealTime es el ProScreener. La gran diferencia con Finviz es que en ProScreener, además de menús, puedes programar tus propias condiciones con un lenguaje muy sencillo.
Aquí te ilustro cómo replicaríamos nuestro sistema de “caza” en ProRealTime.
## Guía Práctica: Usando el ProScreener de ProRealTime
Abre la ventana de ProScreener (“Listas” -> “ProScreener”) y crea uno nuevo. Lo haremos en tres fases, igual que antes.
Fase 1: Configurar el Universo y los Fundamentales
En la configuración del ProScreener, primero defines los mercados (ej. Nasdaq, NYSE). Luego, añades las condiciones fundamentales. En ProRealTime, esto se hace añadiendo “condiciones” a tu código. El sistema te ayuda a encontrarlas.
El código para nuestros filtros de calidad sería algo así:
12345678910// --- FASE 1: FILTROS FUNDAMENTALES ---// c1: Capitalización mayor a 10,000 millonesc1 = MarketCap > 10000// c2: PER por debajo de 30c2 = PEratio < 30// c3: Crecimiento de beneficios en los últimos 5 años > 5%c3 = EPSGrowth5Y > 5Fase 2: Programar el Patrón de Rango Lateral
Aquí es donde ProScreener brilla. Podemos traducir nuestras condiciones técnicas a código simple para que el screener las busque por nosotros.
1234567891011121314// --- FASE 2: FILTROS TÉCNICOS DE RANGO ---// Media Móvil Simple de 200 periodossma200 = Average[200](close)// Media Móvil Simple de 50 periodossma50 = Average[50](close)// c4: El precio está por encima de su media de 200 (tendencia a largo plazo sana)c4 = close > sma200// c5: El precio está cerca de su media de 50 (consolidando, en rango)// Por ejemplo, en un rango del +/- 5% alrededor de la mediac5 = close > sma50 * 0.95 AND close < sma50 * 1.05Fase 3: La Volatilidad Implícita (El Reto y la Solución)
Aquí nos encontramos con el punto más avanzado. ProRealTime, por defecto, no incluye el “IV Rank” como un indicador estándar que puedas llamar directamente en el ProScreener.
Sin embargo, tienes dos caminos profesionales para solucionarlo:
Camino A (El Ideal): Importar un Indicador Personalizado
- La comunidad de ProRealTime es muy activa. En foros como ProRealCode.com, muchos programadores comparten indicadores personalizados de forma gratuita.
- Tu tarea sería buscar e importar un indicador de “Implied Volatility Rank” o “IV Percentile”.
- Una vez lo tienes en tu plataforma, puedes añadir la condición final a tu screener:
// c6: El IV Rank es mayor de 30
c6 = CALL_INDICATOR[MiIVRank] > 30
Camino B (El Manual, para empezar):
- No incluyes el filtro de volatilidad en el ProScreener.
- Ejecutas el screener solo con las Fases 1 y 2. Esto te dará una lista corta de empresas de calidad que están en un rango lateral.
- Luego, haces el paso final a mano: revisas los 5-10 finalistas en tu bróker (IBKR) o en una web como Barchart para ver su IV Rank y elegir los que superen el nivel 30.
Finalmente, tu código en ProScreener para ejecutar el escaneo completo (usando el Camino B) se vería así:
123456789101112131415// --- FASE 1: FILTROS FUNDAMENTALES ---c1 = MarketCap > 10000c2 = PEratio < 30c3 = EPSGrowth5Y > 5// --- FASE 2: FILTROS TÉCNICOS DE RANGO ---sma200 = Average[200](close)sma50 = Average[50](close)c4 = close > sma200c5 = close > sma50 * 0.95 AND close < sma50 * 1.05// --- EJECUTAR EL SCREENER ---// Devolver todos los valores que cumplen TODAS las condicionesSCREENER[c1 AND c2 AND c3 AND c4 AND c5]Como puedes ver, ProRealTime te exige un poco más de configuración inicial, pero a cambio te da un escáner 100% a tu medida, preciso y automatizado que trabaja para ti.
08/25/2025 at 8:27 AM #250032Buenas! Creo que Gemini te la ha jugado un poquito…
Realmente no se pueden obtener datos fundamentales con el screener de PRT. En concreto las condiciones 2 y 3 no son viables. Por otro lado el indicador IV percentile como bien dice la IAno está en la plataforma, pero se puede programar.
Aquí tienes el indicador percentil.
12345678910111213141516171819202122232425length = 252//input(title="Days Back", defval=252, minval=20, maxval=505)userDeviation = 1//input (title="Std Dev", defval=1, minval=1, maxval=3)// Calculate Historical IVpriceReturns = (close-close[1])/close[1]deviation = std[30](priceReturns)annualizedVolatility = deviation * 16// Get the High and Low over the past # of days inputlowovertimespan = lowest[length](annualizedVolatility)highovertimespan = highest[length](annualizedVolatility)//Calculate IV RankivRank = round((annualizedVolatility-lowovertimespan)/(highovertimespan-lowovertimespan)*100)//Calculate IV Percentilecount = 0.0for i = 1 to length doif annualizedVolatility > annualizedVolatility[i] thencount=count+1endifnextivPercentile = round(count/length*100)return ivPercentile as "% of days below the IV" coloured("orange"), ivRank as "IV Rank Comp to High Low" coloured("Green")En cuanto al screener, aquí tienes:
12345678910111213141516171819202122232425262728// --- FASE 1: FILTROS FUNDAMENTALES ---c1 = average[20](close*volume) > 10000000// --- FASE 2: FILTROS TÉCNICOS DE RANGO ---sma200 = Average[200](close)sma50 = Average[50](close)c2 = close > sma200c3 = close > sma50 * 0.95 AND close < sma50 * 1.05// Percentillength = 252// Calculate Historical IVpriceReturns = (close-close[1])/close[1]deviation = std[30](priceReturns)annualizedVolatility = deviation * 16//Calculate IV Percentilecount = 0.0for i = 1 to length doif annualizedVolatility > annualizedVolatility[i] thencount=count+1endifnextivPercentile = round(count/length*100)c4 = ivPercentile > 30screener[c1 and c2 and c3 and c4]2 users thanked author for this post.
08/25/2025 at 8:35 PM #250059Jolines Iván, muchísimas gracias .
Lamento no poder corresponderte en el área informática pero te quedo super agradecido y espero poderte corresponder de alguna otra forma en alguna ocasión.
-
AuthorPosts
Find exclusive trading pro-tools on