{"id":3628,"date":"2026-10-14T01:40:25","date_gmt":"2026-10-14T01:40:25","guid":{"rendered":"https:\/\/theindicatorstore.com\/?post_type=product&#038;p=3628"},"modified":"2026-10-14T02:54:28","modified_gmt":"2026-10-14T02:54:28","slug":"tis_pivotdensity","status":"publish","type":"product","link":"https:\/\/theindicatorstore.com\/es\/prod\/tis_pivotdensity\/","title":{"rendered":"TIS_PivotDensity"},"content":{"rendered":"<div style=\"background: #0d1b2a; padding: 40px; border-radius: 12px; font-family: system-ui,-apple-system,sans-serif; color: #e0e6ed; box-sizing: border-box;\">\n<div style=\"text-align: center; color: #76c7ff; font-size: 1.9rem; font-weight: bold; line-height: 1.25; margin: 0 0 10px 0;\">TIS_PivotDensity para NinjaTrader 8<\/div>\n<div style=\"text-align: center; font-size: 1.05rem; line-height: 1.6; color: #d0d8e2; margin: 0 0 36px 0;\">Los niveles de precio donde el mercado gir\u00f3 m\u00e1s veces, detectados y dibujados autom\u00e1ticamente.<\/div>\n<div style=\"background: #112637; padding: 25px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #4ade80; margin-bottom: 36px; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.15rem; font-weight: bold; margin: 0 0 10px 0;\">Qu\u00e9 hace<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.95rem; line-height: 1.65; margin: 0;\">TIS_PivotDensity encuentra todos los m\u00e1ximos y m\u00ednimos de swing del chart, cuenta cu\u00e1ntos caen en cada precio y convierte ese conteo en una curva de densidad suave. Donde la curva hace un pico, traza una l\u00ednea horizontal. El resultado es una lista corta de <span style=\"color: #ffffff; font-weight: bold;\">niveles donde el precio se dio vuelta una y otra vez<\/span>, en lugar de una pantalla llena de l\u00edneas de cada swing.<\/div>\n<\/div>\n<div style=\"display: grid; grid-template-columns: repeat(auto-fit, minmax(280px,1fr)); gap: 18px; margin-bottom: 44px;\">\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Todos los pivots del chart<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">Recorre <span style=\"color: #ffffff; font-weight: bold;\">toda la historia cargada en el chart<\/span>, no solo los \u00faltimos swings. Cuantos m\u00e1s datos cargues, m\u00e1s establecidos son los niveles que encuentra.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Densidad, no toques sueltos<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">Un swing en un precio es ruido. Diez swings alrededor del mismo precio son un nivel. El indicador pesa cada nivel seg\u00fan cu\u00e1ntos pivots lo formaron.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Una pantalla limpia<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">El suavizado une los pivots cercanos en una sola zona, y un <span style=\"color: #ffffff; font-weight: bold;\">umbral<\/span> oculta los picos d\u00e9biles. Solo ves los niveles que se destacan.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Se ajusta sobre el chart<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">El ancho, el umbral y el suavizado se ajustan arrastrando controles sobre el histograma. Las l\u00edneas se actualizan mientras los mov\u00e9s, sin abrir ning\u00fan di\u00e1logo.<\/div>\n<\/div>\n<\/div>\n<div style=\"color: #76c7ff; font-size: 1.45rem; font-weight: bold; margin: 0 0 8px 0;\">C\u00f3mo funciona<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.95rem; line-height: 1.65; margin: 0 0 22px 0;\">Cuatro pasos, que se recalculan cada vez que se confirma un pivot nuevo.<\/div>\n<div style=\"display: grid; grid-template-columns: 1fr; gap: 16px; margin-bottom: 44px;\">\n<div style=\"background: #112637; padding: 24px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-left: 4px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.1rem; font-weight: bold; margin: 0 0 10px 0;\">1. Encuentra los pivots<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0;\">Una barra es pivot high cuando su m\u00e1ximo supera a las <span style=\"color: #ffffff; font-weight: bold;\">Left_Strength<\/span> barras anteriores y a las <span style=\"color: #ffffff; font-weight: bold;\">Right_Strength<\/span> barras siguientes. Los pivot low funcionan igual con los m\u00ednimos. Un pivot se confirma Right_Strength barras despu\u00e9s de formarse.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 24px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-left: 4px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.1rem; font-weight: bold; margin: 0 0 10px 0;\">2. Cuenta pivots por precio<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0;\">Los highs y los lows se suman en un histograma: cu\u00e1ntos pivots cayeron en cada precio, tick por tick.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 24px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-left: 4px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.1rem; font-weight: bold; margin: 0 0 10px 0;\">3. Suaviza el conteo<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0;\">El histograma crudo es irregular. Una media m\u00f3vil centrada de <span style=\"color: #ffffff; font-weight: bold;\">Smooth<\/span> ticks, aplicada <span style=\"color: #ffffff; font-weight: bold;\">Smooth_Passes<\/span> veces, lo convierte en una curva suave. Tres pasadas se comportan como un suavizado en forma de campana y eliminan los picos falsos que deja una sola pasada.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 24px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-left: 4px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.1rem; font-weight: bold; margin: 0 0 10px 0;\">4. Dibuja los picos<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0;\">Cada pico local de la curva que llega al menos al <span style=\"color: #ffffff; font-weight: bold;\">Threshold_Pct<\/span> por ciento del pico m\u00e1s alto se convierte en una l\u00ednea horizontal. La opacidad de la l\u00ednea sigue a la densidad, as\u00ed los niveles m\u00e1s fuertes se destacan del resto.<\/div>\n<\/div>\n<\/div>\n<div style=\"color: #76c7ff; font-size: 1.45rem; font-weight: bold; margin: 0 0 8px 0;\">Par\u00e1metros<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.95rem; line-height: 1.65; margin: 0 0 22px 0;\">Cinco valores controlan el c\u00e1lculo. El resto de las opciones solo cambian c\u00f3mo se ve.<\/div>\n<div style=\"overflow-x: auto; margin-bottom: 44px;\">\n<table style=\"width: 100%; border-collapse: collapse; font-size: 0.9rem;\">\n<thead>\n<tr style=\"background-color: #0a1520;\">\n<th style=\"text-align: left; padding: 10px 14px; color: #5a7a9a; font-size: 0.72rem; font-weight: bold; letter-spacing: 1px; text-transform: uppercase; border-bottom: 1px solid rgba(255,255,255,0.08);\">Par\u00e1metro<\/th>\n<th style=\"text-align: left; padding: 10px 14px; color: #5a7a9a; font-size: 0.72rem; font-weight: bold; letter-spacing: 1px; text-transform: uppercase; border-bottom: 1px solid rgba(255,255,255,0.08);\">Por defecto<\/th>\n<th style=\"text-align: left; padding: 10px 14px; color: #5a7a9a; font-size: 0.72rem; font-weight: bold; letter-spacing: 1px; text-transform: uppercase; border-bottom: 1px solid rgba(255,255,255,0.08);\">Qu\u00e9 controla<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid rgba(255,255,255,0.04);\">\n<td style=\"padding: 10px 14px; color: #76c7ff; font-family: monospace; font-weight: bold; vertical-align: top; white-space: nowrap;\">Left_Strength<\/td>\n<td style=\"padding: 10px 14px; color: #e0e6ed; font-family: monospace; vertical-align: top;\">5<\/td>\n<td style=\"padding: 10px 14px; color: #b0c4d8; vertical-align: top; line-height: 1.55;\">Barras a la izquierda del pivot que tienen que quedar por debajo (highs) o por encima (lows).<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid rgba(255,255,255,0.04); background: rgba(255,255,255,0.02);\">\n<td style=\"padding: 10px 14px; color: #76c7ff; font-family: monospace; font-weight: bold; vertical-align: top; white-space: nowrap;\">Right_Strength<\/td>\n<td style=\"padding: 10px 14px; color: #e0e6ed; font-family: monospace; vertical-align: top;\">5<\/td>\n<td style=\"padding: 10px 14px; color: #b0c4d8; vertical-align: top; line-height: 1.55;\">Barras a la derecha necesarias para confirmar un pivot. Valores m\u00e1s altos dan menos pivots, m\u00e1s significativos y confirmados m\u00e1s tarde.<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid rgba(255,255,255,0.04);\">\n<td style=\"padding: 10px 14px; color: #76c7ff; font-family: monospace; font-weight: bold; vertical-align: top; white-space: nowrap;\">Smooth<\/td>\n<td style=\"padding: 10px 14px; color: #e0e6ed; font-family: monospace; vertical-align: top;\">20<\/td>\n<td style=\"padding: 10px 14px; color: #b0c4d8; vertical-align: top; line-height: 1.55;\">Ancho de la ventana de suavizado, <span style=\"color: #ffffff; font-weight: bold;\">en ticks de precio<\/span>, no en barras.<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid rgba(255,255,255,0.04); background: rgba(255,255,255,0.02);\">\n<td style=\"padding: 10px 14px; color: #76c7ff; font-family: monospace; font-weight: bold; vertical-align: top; white-space: nowrap;\">Smooth_Passes<\/td>\n<td style=\"padding: 10px 14px; color: #e0e6ed; font-family: monospace; vertical-align: top;\">3<\/td>\n<td style=\"padding: 10px 14px; color: #b0c4d8; vertical-align: top; line-height: 1.55;\">Cu\u00e1ntas veces se aplica el suavizado. M\u00e1s pasadas dan una curva m\u00e1s redondeada y con menos picos.<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid rgba(255,255,255,0.04);\">\n<td style=\"padding: 10px 14px; color: #76c7ff; font-family: monospace; font-weight: bold; vertical-align: top; white-space: nowrap;\">Threshold_Pct<\/td>\n<td style=\"padding: 10px 14px; color: #e0e6ed; font-family: monospace; vertical-align: top;\">40<\/td>\n<td style=\"padding: 10px 14px; color: #b0c4d8; vertical-align: top; line-height: 1.55;\">Densidad m\u00ednima, como porcentaje del pico m\u00e1s alto, para que un nivel se dibuje.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div style=\"color: #76c7ff; font-size: 1.45rem; font-weight: bold; margin: 0 0 8px 0;\">Controles sobre el chart<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.95rem; line-height: 1.65; margin: 0 0 22px 0;\">El histograma se ubica en el borde derecho del panel de precio, con la curva de densidad encima. Tiene tres controles, y cada uno muestra su valor al pasar el mouse.<\/div>\n<div style=\"display: grid; grid-template-columns: repeat(auto-fit, minmax(240px,1fr)); gap: 18px; margin-bottom: 44px;\">\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Ancho del histograma<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">Arrastr\u00e1 el borde izquierdo del histograma, con el grip arriba, para ensancharlo o angostarlo.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Umbral<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">Arrastr\u00e1 la l\u00ednea vertical del umbral, con el grip abajo. Solo los picos cuya curva la supera reciben una l\u00ednea, y las l\u00edneas aparecen y desaparecen mientras la mov\u00e9s.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 22px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #76c7ff; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Suavizado<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.9rem; line-height: 1.6; margin: 0;\">Un slider en la parte de abajo del histograma, en escala logar\u00edtmica de 1 a 100.000 ticks. Hacia la izquierda, m\u00e1s suavizado. Un click en cualquier punto de la pista salta a ese valor.<\/div>\n<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 24px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); border-top: 3px solid #4ade80; margin-bottom: 32px; box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.1rem; font-weight: bold; margin: 0 0 10px 0;\">Consejos de ajuste<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0 0 10px 0; padding-left: 18px;\">\u25aa <span style=\"color: #ffffff; font-weight: bold;\">Smooth se mide en ticks<\/span>, as\u00ed que el valor correcto depende del instrumento. Un mercado que cotiza al centavo, como un par cripto, necesita un valor mucho m\u00e1s alto que un futuro de \u00edndice para lograr el mismo suavizado.<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0 0 10px 0; padding-left: 18px;\">\u25aa Empez\u00e1 por el umbral. Si la pantalla sigue cargada, sub\u00ed Smooth hasta que los niveles cercanos se unan en uno.<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0 0 10px 0; padding-left: 18px;\">\u25aa Si dos niveles que te interesan se unen en uno solo, baj\u00e1 Smooth antes de reducir Smooth_Passes.<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.65; margin: 0 0 10px 0; padding-left: 18px;\">\u25aa El umbral se mide contra el pico m\u00e1s alto de todo el histograma. Con mucha historia cargada, un nivel muy denso lejos del precio actual puede dejar por debajo del umbral a los niveles cercanos. Carg\u00e1 menos historia o baj\u00e1 el umbral.<\/div>\n<\/div>\n<div style=\"background: #1f1a0d; padding: 24px; border-radius: 10px; border-left: 4px solid #e0b33a; margin-bottom: 32px; box-sizing: border-box;\">\n<div style=\"color: #e0b33a; font-size: 1.05rem; font-weight: bold; margin: 0 0 10px 0;\">Qu\u00e9 son las l\u00edneas, y qu\u00e9 no son<\/div>\n<div style=\"color: #d8cba8; font-size: 0.92rem; line-height: 1.65; margin: 0 0 10px 0;\">Cada l\u00ednea marca un precio donde el mercado se dio vuelta repetidas veces en la historia cargada en el chart. Eso la convierte en una referencia de d\u00f3nde fueron probables las reacciones, no en una se\u00f1al ni en una predicci\u00f3n.<\/div>\n<div style=\"color: #d8cba8; font-size: 0.92rem; line-height: 1.65; margin: 0;\">Los niveles tambi\u00e9n dependen de los datos: si cambi\u00e1s el timeframe, el tipo de barra o la cantidad de historia cargada, las l\u00edneas se mueven. Un pivot necesita <span style=\"color: #ffffff; font-weight: bold;\">Right_Strength<\/span> barras para confirmarse, as\u00ed que los swings m\u00e1s recientes se suman con esa demora.<\/div>\n<\/div>\n<div style=\"background: #112637; padding: 24px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.05); box-sizing: border-box;\">\n<div style=\"color: #8fd0ff; font-size: 1.1rem; font-weight: bold; margin: 0 0 10px 0;\">Requisitos<\/div>\n<div style=\"color: #b0c4d8; font-size: 0.92rem; line-height: 1.7; margin: 0;\">NinjaTrader 8. Funciona en cualquier instrumento, cualquier timeframe y cualquier tipo de barra. Se importa como cualquier otro indicador: <span style=\"color: #ffffff; font-weight: bold;\">Tools \u2192 Import \u2192 NinjaScript Add-On<\/span> y eleg\u00eds el ZIP tal como se descarg\u00f3, sin descomprimirlo.<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Encontr\u00e1 los niveles de precio donde el mercado gir\u00f3 m\u00e1s veces. TIS_PivotDensity cuenta todos los pivots de swing del chart, convierte ese conteo en una curva de densidad suave y traza una l\u00ednea solo en los niveles m\u00e1s fuertes. El ancho, el umbral y el suavizado se ajustan arrastrando directamente sobre el chart.<\/p>","protected":false},"featured_media":3637,"comment_status":"open","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_kad_post_transparent":"default","_kad_post_title":"","_kad_post_layout":"default","_kad_post_sidebar_id":"","_kad_post_content_style":"default","_kad_post_vertical_padding":"default","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":""},"product_brand":[],"product_cat":[40,25,37,23],"product_tag":[83],"class_list":["post-3628","product","type-product","status-publish","has-post-thumbnail","product_cat-gaps-market-levels","product_cat-indicators","product_cat-price-action-candle-patterns","product_cat-setup-indicators","product_tag-snr","first","instock","downloadable","virtual","sold-individually","purchasable","product-type-simple","entry","content-bg","loop-entry"],"acf":[],"_links":{"self":[{"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/product\/3628","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/comments?post=3628"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/media\/3637"}],"wp:attachment":[{"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/media?parent=3628"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/product_brand?post=3628"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/product_cat?post=3628"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/theindicatorstore.com\/es\/wp-json\/wp\/v2\/product_tag?post=3628"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}