Análisis

Un análisis es un evaluador de riesgo configurado sobre un tipo de evento. Acumula el historial reciente de los eventos en ventanas deslizantes y, en cada nuevo evento, devuelve una puntuación de 0 a 100 que indica cuánto se aparta ese comportamiento de lo esperado.

El análisis no decide por sí solo: la decisión corresponde a la regla. La regla alimenta el análisis con la acción registrar análisis, consulta el resultado con la acción ejecutar análisis y usa ese resultado en las condiciones siguientes.

Se destina a preguntas de velocidad y de concentración: cuántos intentos hizo esta tarjeta en la última hora, cuántas tarjetas diferentes pasaron por este usuario hoy.

El análisis es transaccional: evalúa un evento por vez y responde a tiempo para que la regla actúe sobre él. El término se refiere al modo de operación, no al tipo de dato: el análisis vale para cualquier tipo de evento, no solo para transacciones financieras. Para seguir el comportamiento agregado a lo largo del tiempo, use métricas y monitoreos.

Dónde configurarlo

En Configuración > Tipos de evento, abra el tipo de evento y vaya a la pestaña Análisis.

El análisis tiene un único campo propio, el Nombre, que es el identificador usado por las reglas y no se puede cambiar después de la creación: las acciones que citaran el nombre anterior quedarían huérfanas. Todo lo demás se configura en las celdas.

El editor de la celda organiza la configuración en cuatro grupos: Identidad (el identificador de la celda), Ventana (qué eventos entran, con qué clave y por cuánto tiempo), Medida (el número que se extrae de la ventana) y Disparador (el límite aplicado a ese número). También ofrece ejemplos listos, como un contador de intentos o un límite de velocidad, que completan los cuatro grupos de una vez y pueden ajustarse después.

La lista de celdas puede reordenarse arrastrando. El nuevo orden graba la Prioridad de cada celda, es decir, define el orden del cascade: la primera de la lista decide primero.

Cómo decide el análisis

Un análisis es un conjunto de celdas. Cada celda es una pregunta independiente sobre una porción del historial: una agrupación, una ventana de tiempo, una medida y un objetivo.

Todas las celdas se evalúan, y la más específica entre las que se activaron decide el resultado: vale la menor Prioridad y, en caso de empate, la celda que observó la mayor muestra. La puntuación devuelta es la de esa celda, y no la mayor del análisis: una celda específica que puntuó 91 decide por delante de una celda amplia que puntuó 99. El cascade elige por el alcance del bloqueo, no por la magnitud de la desviación, para que la acción quede restringida al menor grupo posible.

Cuando ninguna celda se activa, la puntuación es la mayor que alguna celda alcanzó y la celda de puntuación no se informa. Al persistir la celda de puntuación en un campo del evento, este queda completado solo en los eventos en que alguna celda explicó la puntuación.

Una celda que no puede evaluarse, porque el evento no trajo el campo de la dimensión o porque la ventana está vacía, se omite, nunca se lee como si estuviera normal.

Campos de la celda

Campo Contenido
Nombre identificador de la celda, único dentro del análisis; aparece en los resultados de la regla
Dimensión campo, o combinación de campos, que agrupa la ventana
Ventana tamaño de la ventana deslizante, en minutos, horas o días, hasta 90 días
Señal cómo la celda juzga la ventana: estadística, límite fijo o sin disparador
Medida qué mide la celda en la ventana
Dirección qué lado del objetivo representa riesgo
Objetivo valor de referencia; en las medidas de tasa, un número entre 0 y 1
Umbral puntuación de 0 a 100 a partir de la cual la celda se activa; predeterminado 90
Prioridad orden en el cascade; la menor decide primero
Numerador y Denominador filtros que definen la tasa, en las medidas de porcentaje
Distinto por campo contado, o entidad de la tasa, según la medida
Registrar cuando filtro que decide qué eventos alimentan la ventana

Registrar cuando es la única configuración que ve campos que la celda no agrupa ni cuenta, y es lo que permite cambiar la pregunta: registrar solo eventos rechazados transforma una celda de “tarjetas diferentes de este usuario” en “tarjetas diferentes en las que este usuario fue rechazado”.

Cambiar la dimensión, la ventana o la medida reinicia el historial acumulado, sin reprocesamiento: la celda necesita una ventana entera de tráfico para volver a significar algo. Cambiar el objetivo, el umbral, la prioridad o los filtros preserva el historial.

Medida

Medida Qué mide
Cantidad volumen de eventos en la ventana, es decir, velocidad
Valores distintos cuántos valores diferentes de un campo aparecen en la ventana
Porcentaje la tasa de un resultado, como la de aprobación
Porcentaje por valores distintos la misma tasa, contando cada valor distinto una sola vez

Cantidad no exige configuración adicional. Valores distintos exige el campo Distinto por, cuyos valores diferentes se cuentan.

Porcentaje exige un Numerador y acepta un Denominador, ambos filtros sobre el mismo campo de resultado: el numerador indica qué valores cuentan a favor, y con el denominador vacío la base son todos los valores de la ventana.

Porcentaje por valores distintos es la misma tasa medida sobre entidades en vez de intentos. Cada valor distinto entra con una observación, la de su último intento en la ventana, de modo que un cliente que intentó diez veces pesa lo mismo que uno que intentó una vez.

Las dos medidas de porcentaje se evalúan sobre las 100 observaciones más recientes de la ventana.

Señal

Define cómo la celda juzga la ventana, y es la elección que cambia el significado del Objetivo.

Con la señal Estadística, que es la predeterminada, el objetivo es el comportamiento normal esperado y la puntuación expresa cuánto se aparta la ventana de él. Úsela cuando el propósito es detectar desviaciones de lo normal y el número exacto no importa.

Con la señal Límite fijo, el objetivo es el propio punto de disparo: la celda se activa cuando la observación lo alcanza, y la puntuación es siempre 100 o 0. Úsela cuando el número forma parte de una política acordada, por ejemplo un tope de intentos rechazados por período definido en contrato. Traducir ese número a un objetivo estadístico lo dejaría acoplado a la calibración del análisis, y reajustar la calibración movería silenciosamente un valor que un documento externo fija.

Al elegir el límite fijo:

  • No hay protección contra muestras pequeñas. Es la diferencia central respecto a la señal estadística, y un riesgo real en las medidas de porcentaje: un límite de 50% se activa con un único intento rechazado, porque un rechazo en un intento es 100%. Combínelo con una ventana y un filtro de registro que hagan significativa una muestra pequeña.
  • El campo Umbral no se aplica y desaparece del formulario, ya que la puntuación solo asume 100 o 0.
  • La dirección es de un solo lado: “Por encima” se activa al alcanzar o pasar el objetivo, “Por debajo” al alcanzarlo o quedar bajo él. “Ambos” se rechaza, porque un único número delimita solo un lado.
  • En las medidas de volumen el objetivo debe ser un número entero: no se observan 2,5 eventos.

Sin disparador

Una celda con la señal Sin disparador mantiene la ventana y expone el valor medido, sin dispararse. Objetivo, Dirección y Umbral no se aplican, y la celda queda fuera del cascade: no decide el resultado ni entra en el conteo de celdas activadas.

Una celda sin disparador es adecuada para exponer un número de la ventana sin transformarlo en bloqueo: contar los intentos de un pedido, grabar ese contador en un campo y dejar la decisión a una condición de la regla.

Las tres señales conviven en el mismo análisis, y las dos que se disparan puntúan en la misma escala de 0 a 100.

El formulario muestra una vista previa de la celda en cuanto medida, dirección y objetivo estén completados. En una celda de límite fijo, muestra la escala saltando directamente de 0 a 100 en el objetivo.

Usar el análisis en una regla

El análisis solo produce efecto a través de una regla:

  1. la acción registrar análisis alimenta las ventanas con el evento actual;
  2. la acción ejecutar análisis evalúa el análisis y expone el resultado;
  3. las condiciones siguientes deciden qué hacer con ese resultado.

El resultado queda disponible como variable temporal, con la puntuación, la celda que la originó y el conjunto de celdas activadas.

Cada celda evaluada también publica el valor bruto que midió en la ventana, en %<resultado>.cells.<celda>.value. Una celda sin disparador entrega su número por esa variable, para las condiciones siguientes o para un campo del evento.

Condición 1:  $amount > 0     → Registrar análisis: bot
Condición 2:  $amount > 0     → Ejecutar análisis: bot
Condición 3:  %bot.triggered  → Completar campo: revision = "true"
Condición 4:  "rechazos_por_tarjeta" in %bot.triggered_cells  → Agregar a la lista: $card_fingerprint en @tarjetas_bloqueadas

Registrar y ejecutar son independientes: una condición puede alimentar el historial sin consultarlo, consultarlo sin alimentar, o hacer ambas cosas.

Reglas que usan este análisis

La página del análisis presenta las reglas que se ligan a él, una fila por versión de regla, separando las que lo ejecutan de las que lo registran, con los campos que cada una graba y el nombre del resultado.

Como registrar y ejecutar son independientes, el análisis puede quedar en uno de dos estados incompletos, ambos señalados en esa relación:

  • puntúa sin que nadie registre: una regla consulta el análisis, pero ninguna alimenta sus ventanas, de modo que la puntuación se calcula sobre un historial que no recibe tráfico;
  • registra sin que nadie puntúe: las ventanas acumulan, pero ninguna regla lee el resultado, de modo que el análisis no produce efecto sobre decisión alguna.

Un análisis nombrado por una versión de regla publicada o en observación no puede eliminarse. La eliminación informa qué reglas lo mantienen en uso, y pasa a ser posible después de que esas reglas dejan de nombrarlo.

Versiones

Un análisis se versiona como una regla: la versión publicada es inmutable, la edición de una celda o del orden de la cascada parte de ella hacia un borrador, y la publicación lleva la cascada entera a producción de una vez. Una versión anterior puede restaurarse, y una versión puede publicarse en observación, sobre el mismo tráfico de la versión activa, sin decidir nada. Consulte Versionado.