optNetwork cycle

Detección de Fraude en Transacciones Financieras (Carrusel)

Scénario de test & Cas d'usage

Contexto empresarial

Una unidad de inteligencia financiera investiga patrones de lavado de dinero tipo 'carrusel'. El objetivo es identificar fondos que pasan por múltiples cuentas testaferros para regresar a la cuenta de origen, creando un ciclo cerrado de transacciones.
Sobre el conjunto : optNetwork

Análisis de redes y algoritmos de grafos.

Descubrir todas las acciones de optNetwork
Preparación de datos

Generación de datos de transacciones bancarias que incluyen un ciclo fraudulento deliberado (A->B->C->D->A) entre transacciones legítimas lineales.

¡Copiado!
1 
2DATA mycas.transacciones_bancarias;
3INPUT origen $ destino $ monto;
4DATALINES;
5Cta_A Cta_B 5000 Cta_B Cta_C 4900 Cta_C Cta_D 4800 Cta_D Cta_A 4700 Cta_X Cta_Y 100 Cta_Y Cta_Z 100;
6 
7RUN;
8 

Étapes de réalisation

1
Configuración y ejecución del análisis de ciclos dirigidos. Se solicita recuperar todos los ciclos posibles (maxCycles='ALL') para no perder ninguna trama compleja.
¡Copiado!
1 
2PROC CAS;
3optNetwork.cycle direction="DIRECTED" links={name="transacciones_bancarias", vars={from="origen", to="destino"}} maxCycles="ALL" out={name="CuentasSospechosas"} outCyclesLinks={name="DetalleTransacciones"};
4 
5RUN;
6 

Resultado esperado


El sistema debe detectar únicamente el ciclo formado por Cta_A, Cta_B, Cta_C y Cta_D. Las tablas de salida 'CuentasSospechosas' y 'DetalleTransacciones' deben listar estos nodos y sus enlaces. Las cuentas X, Y y Z no deben aparecer en los resultados ya que forman un camino lineal sin retorno.