Qué es
Ichimoku Kinko Hyo (“gráfico de equilibrio de un vistazo”) es un sistema desarrollado por Goichi Hosoda que combina tendencia, momentum y soporte/resistencia en un solo indicador. A diferencia de los indicadores clásicos (SMA, EMA, BB), no es una única línea sino cinco líneas que se leen en conjunto:
El área entre Senkou Span A y Senkou Span B es la nube (Kumo): alcista/verde cuando A queda por encima de B, bajista/roja en caso contrario.
Implementación en
frontend/lib/indicators/ichimoku.ts (cálculo puro, sin dependencias de chart) — ver useIchimokuOutput.ts para el adaptador que lo convierte en IndicatorOutput y IchimokuModule.tsx para el render. Cobertura de tests: frontend/__tests__/lib/indicators/ichimoku.test.ts.Parámetros
Los tres períodos y el desplazamiento son configuración estándar japonesa: nacieron de una semana de trading de 6 días (26 ≈ un mes bursátil de la época). El preset
ichimoku_intraday (10/30/60/30) es una adaptación común para mercados 24h (forex/crypto).
Cómo se calcula
-
Tenkan-sen / Kijun-sen: el mismo cálculo de “canal Donchian” (máximo/mínimo de N barras), solo cambia el período.
donchianMid(i, N) = (highestHigh(i, N) + lowestLow(i, N)) / 2. -
Senkou Span A: promedio de Tenkan y Kijun en la barra
i, pero el punto se dibuja en el tiempo de la barrai + displacement. Como esas barras futuras normalmente no existen todavía en los datos, el tiempo se proyecta usando el espaciado dominante entre barras (inferBarInterval— la moda de los deltas de tiempo consecutivos, robusta a huecos de fin de semana). -
Senkou Span B: igual que Tenkan/Kijun pero con
senkouBPeriod(52) y el mismo desplazamiento hacia adelante que Span A. -
Chikou Span: el cierre de la barra
ise dibuja en el tiempo de la barrai - displacement. No requiere proyección de tiempo (esas barras ya existen).
La nube: decisión de render
El contratoIndicatorOutput del framework de indicadores (components/indicators/core/indicator-output.ts) tiene 4 primitivas: DrawLine (línea horizontal/diagonal), DrawMarker, DrawRectangle (caja de precio fija) y DrawLineSeries (una línea continua). Ninguna de las cuatro dibuja el relleno entre dos líneas que varían con el precio — DrawRectangle es una caja con priceHigh/priceLow fijos, no sirve para una nube que sube y baja barra a barra.
Esto es consistente con cómo el resto de la plataforma resuelve áreas: los paneles separados (BasePanelIndicator.tsx, usePaneIndicators.ts) usan AreaSeries nativa de Lightweight Charts (línea + relleno hacia una base fija), que tampoco sirve para un relleno entre dos líneas independientes.
Qué ve el usuario en el chart
El móduloIchimokuModule.tsx sigue el patrón useXxxOutput → IndicatorRenderer (el mismo que usan SwingPoints V2 y BZK) — no hace llamadas directas a la API de Lightweight Charts. Las 5 líneas se dibujan como LineSeries independientes; showCloud/showChikou/showTenkanKijun habilitan o deshabilitan grupos completos de líneas de una sola vez.
Colores por defecto (tokens del framework, components/indicators/framework/colors.ts):
Recetas
1. Lectura estándar (default 9/26/52/26)
1. Lectura estándar (default 9/26/52/26)
Dejá los parámetros por defecto. Precio arriba de la nube = sesgo alcista, abajo = sesgo bajista, dentro = rango. Confirmá con el cruce Tenkan/Kijun (similar a un cruce de medias) y con que el Chikou Span no esté “atrapado” contra el precio histórico.
2. Simplificar el chart (solo líneas)
2. Simplificar el chart (solo líneas)
Usá el preset
ichimoku_lines_only (showCloud: false, showChikou: false) para quedarte solo con Tenkan/Kijun — útil si ya tenés otros indicadores de estructura (ISS, Swing Points) y la nube agrega ruido visual.3. Adaptar a mercados 24h
3. Adaptar a mercados 24h
El preset
ichimoku_intraday (10/30/60/30) ajusta los períodos a una “semana” de 30 horas, más apropiado para forex/crypto que no cierran los fines de semana de la misma forma que las bolsas japonesas de los años 30 (origen de los períodos 9/26/52).Volver a la Visión General
Ver el resto de indicadores propios de la plataforma.