In Breve (TL;DR)
L’approccio ingegneristico trasforma i KPI in segnali da elaborare, permettendo di separare nettamente le informazioni strategiche dal rumore di fondo dei dati.
L’analisi nel dominio della frequenza con la Trasformata di Fourier rivela ciclicità invisibili, superando le intuizioni basate sulla semplice osservazione temporale.
Implementare il filtro di Kalman offre una stima del trend in tempo reale, eliminando il ritardo decisionale causato dalle classiche medie mobili.
Il diavolo è nei dettagli. 👇 Continua a leggere per scoprire i passaggi critici e i consigli pratici per non sbagliare.
Nel panorama della Business Intelligence moderna, l’analisi serie storiche rappresenta spesso il confine tra una decisione basata sull’intuizione e una fondata sulla scienza dei dati. Tuttavia, la maggior parte degli analisti si limita a osservare medie mobili e variazioni percentuali, ignorando un patrimonio metodologico che l’ingegneria elettronica ha perfezionato negli ultimi decenni: il Signal Processing (Elaborazione Numerica dei Segnali).
In questa guida tecnica, abbandoneremo l’approccio statistico classico per adottare una visione ingegneristica. Tratteremo i KPI aziendali (come il volume di richieste di mutui in una Fintech o il cash flow giornaliero) non come semplici numeri su un foglio di calcolo, ma come segnali elettrici affetti da rumore. Applicando trasformate matematiche e filtri digitali, impareremo a estrarre il “trend puro” (il segnale) dalle fluttuazioni casuali del mercato (il rumore).

1. Il Mindset Ingegneristico: Segnale vs Rumore
In elettronica, un segnale ricevuto da un sensore è sempre contaminato da disturbi esterni. Lo stesso accade nei dati aziendali. Se osserviamo il grafico delle vendite giornaliere, vediamo picchi e valli. La domanda fondamentale è: quella flessione di martedì è un trend preoccupante (Segnale) o solo una variazione casuale dovuta al meteo o a un giorno festivo (Rumore)?
Per rispondere, dobbiamo definire il rapporto Segnale/Rumore (SNR – Signal-to-Noise Ratio). Un approccio basato sulla fisica dei sistemi ci insegna che:
- Il Segnale è l’informazione deterministica, spesso a bassa frequenza (trend di crescita) o con frequenza specifica (stagionalità).
- Il Rumore è stocastico, spesso ad alta frequenza e distribuito casualmente (rumore bianco gaussiano).
2. Strumenti e Prerequisiti

Per seguire questa guida, non useremo Excel. L’analisi avanzata dei segnali richiede potenza di calcolo e librerie specifiche. Al 2026, lo stack standard per questo tipo di operazione include:
- Python 3.12+: Il linguaggio di riferimento.
- NumPy & Pandas: Per la manipolazione delle serie temporali.
- SciPy (module signal): Per l’implementazione di filtri digitali e trasformate.
- PyKalman o FilterPy: Librerie ottimizzate per l’implementazione dei filtri di Kalman.
3. Analisi nel Dominio della Frequenza: La Trasformata di Fourier (FFT)

Uno degli errori più comuni nell’analisi serie storiche finanziarie è cercare di intuire la stagionalità guardando il grafico nel dominio del tempo. Un ingegnere elettronico, invece, sposta il problema nel dominio della frequenza.
Utilizzando la Fast Fourier Transform (FFT), possiamo scomporre il nostro KPI (es. richieste di mutui giornaliere) nelle sue componenti sinusoidali costitutive. Questo ci permette di identificare ciclicità nascoste che l’occhio umano non vede.
Applicazione Pratica: Rilevare la Ciclicità dei Mutui
Immaginiamo di avere un dataset di 365 giorni di richieste. Applicando la FFT, potremmo vedere un picco di magnitudo alla frequenza corrispondente a 7 giorni (ciclo settimanale) e uno a 30 giorni (ciclo mensile). Se notiamo un picco inatteso a 90 giorni, abbiamo scoperto una ciclicità trimestrale legata, ad esempio, alle scadenze fiscali, senza doverla indovinare.
4. Filtraggio Digitale: Oltre la Media Mobile
Una volta compreso lo spettro del nostro segnale, dobbiamo pulirlo. La tecnica più usata nel business è la Media Mobile Semplice (SMA). In ingegneria, la SMA è considerata un filtro passa-basso molto rudimentale con pessime caratteristiche di fase (introduce un ritardo, o lag, significativo).
Il Problema del Lag
Se usate una media mobile a 30 giorni per prevedere il cash flow, il vostro indicatore vi dirà che il trend è cambiato con 15 giorni di ritardo. In un mercato volatile come il Fintech, questo ritardo è inaccettabile.
La Soluzione: Il Filtro di Kalman
Il Filtro di Kalman è l’algoritmo definitivo per la stima di stato in sistemi dinamici (usato dal GPS ai sistemi di guida missilistica). A differenza delle medie mobili, il filtro di Kalman non si limita a “lisciare” il passato, ma:
- Possiede un modello interno della fisica del sistema (es. il trend di crescita previsto).
- Confronta la previsione del modello con la nuova misura reale (il dato di oggi).
- Calcola il Guadagno di Kalman: decide quanto fidarsi del modello e quanto della nuova misura basandosi sull’incertezza (covarianza) di entrambi.
Il risultato è una stima del trend estremamente reattiva che separa il rumore dal segnale reale quasi in tempo reale, riducendo drasticamente il lag.
5. Caso Studio: Implementazione in Python
Vediamo come applicare questi concetti a un dataset fittizio di richieste di prestiti giornalieri.
Step 1: Analisi Spettrale con FFT
import numpy as np
import pandas as pd
from scipy.fft import fft, fftfreq
import matplotlib.pyplot as plt
# Caricamento dati (Serie temporale)
data = pd.read_csv('richieste_mutui.csv')
segnale = data['richieste'].values
# Calcolo FFT
N = len(segnale)
T = 1.0 / 365.0 # Campionamento giornaliero
yf = fft(segnale)
xf = fftfreq(N, T)[:N//2]
# Plot dello spettro
plt.plot(xf, 2.0/N * np.abs(yf[0:N//2]))
plt.title('Spettro delle Frequenze (Ciclicità)')
plt.grid()
plt.show()Interpretazione: I picchi nel grafico indicano i cicli naturali del business. Se eliminiamo queste frequenze (filtro notch), otteniamo il trend destagionalizzato in modo matematicamente rigoroso.
Step 2: Smoothing con Filtro di Kalman
Per pulire il segnale mantenendo la reattività, usiamo un’implementazione base di un filtro di Kalman monodimensionale.
from pykalman import KalmanFilter
# Configurazione del Filtro
# transition_covariance: quanto velocemente cambia il trend reale
# observation_covariance: quanto rumore c'è nei dati giornalieri
kf = KalmanFilter(transition_matrices=[1],
observation_matrices=[1],
initial_state_mean=segnale[0],
initial_state_covariance=1,
observation_covariance=10,
transition_covariance=0.1)
# Calcolo del segnale filtrato
state_means, _ = kf.filter(segnale)
# Confronto
data['Kalman_Signal'] = state_means
data[['richieste', 'Kalman_Signal']].plot()
plt.title('Dati Grezzi vs Filtro di Kalman')
plt.show()6. Interpretazione dei Risultati per il Business
L’applicazione di queste tecniche di analisi serie storiche trasforma il processo decisionale:
- Pulizia del Dato: La linea generata dal filtro di Kalman (
state_means) rappresenta la “verità” del business, depurata dalla varianza giornaliera casuale. - Early Warning: Se il dato reale si discosta dal filtro di Kalman oltre una certa soglia (es. 3 deviazioni standard della covarianza residua), non è rumore: è un’anomalia o un cambio strutturale di mercato che richiede intervento immediato.
- Forecasting: Proiettando lo stato del filtro di Kalman nel futuro, otteniamo previsioni di cash flow molto più affidabili rispetto alla regressione lineare, perché il filtro si adatta dinamicamente alla velocità di cambiamento del sistema.
Conclusioni

Trattare i dati di business come segnali elettrici non è solo un esercizio accademico, ma un vantaggio competitivo. Mentre i competitor reagiscono al rumore (es. una giornata di scarse vendite dovuta al caso), l’azienda che utilizza il Signal Processing mantiene la rotta, reagendo solo quando il segnale indica un reale cambiamento strutturale. L’uso della Trasformata di Fourier e del Filtro di Kalman eleva l’analisi delle serie storiche da semplice osservazione a strumento predittivo di alta precisione.
Domande frequenti

Il Signal Processing applicato ai KPI è un approccio ingegneristico che tratta i dati di business, come le vendite o il cash flow, non come semplici numeri statistici ma come segnali elettrici. Questa metodologia utilizza trasformate matematiche e filtri digitali per separare il trend reale, definito segnale, dalle fluttuazioni casuali del mercato, identificate come rumore. L’obiettivo è ottenere una visione più chiara e scientifica dell’andamento aziendale, depurata dalle distorsioni momentanee.
Nell’analisi delle serie storiche, il Segnale rappresenta l’informazione deterministica e preziosa, come un trend di crescita strutturale o una stagionalità ricorrente a bassa frequenza. Il Rumore, al contrario, è costituito da variazioni stocastiche e casuali, spesso ad alta frequenza, dovute a fattori esterni imprevedibili come il meteo o eventi isolati. Distinguere correttamente il rapporto Segnale Rumore permette di evitare decisioni basate su falsi allarmi.
Il Filtro di Kalman è preferibile alla Media Mobile Semplice perché risolve il problema del ritardo, noto come lag, tipico degli indicatori classici. Mentre la media mobile reagisce lentamente ai cambiamenti lisciando solo i dati passati, il filtro di Kalman combina un modello predittivo interno con le misurazioni in tempo reale. Questo permette di stimare il trend attuale con estrema reattività e precisione, adattandosi dinamicamente alla volatilità del sistema.
La Fast Fourier Transform, o FFT, è fondamentale per analizzare i dati nel dominio della frequenza anziché in quello del tempo. Questo strumento scompone la serie storica nelle sue componenti sinusoidali, permettendo di identificare ciclicità nascoste e stagionalità complesse, come cicli settimanali o trimestrali, che non sarebbero visibili osservando semplicemente il grafico dell’andamento temporale dei dati.
Per implementare tecniche di Signal Processing sui dati aziendali, lo stack tecnologico standard basato su Python include diverse librerie specializzate. NumPy e Pandas sono essenziali per la manipolazione delle serie temporali, mentre SciPy, in particolare il modulo signal, è necessario per calcolare trasformate e filtri. Per l’implementazione specifica dei filtri predittivi, si utilizzano librerie ottimizzate come PyKalman o FilterPy.
Fonti e Approfondimenti
- NIST (USA) – Manuale di Statistica Ingegneristica: Introduzione all’Analisi delle Serie Storiche
- Wikipedia – Teoria, stima di stato e applicazioni del Filtro di Kalman
- ISTAT – Metodologie ufficiali per l’analisi e la destagionalizzazione delle serie storiche
- Wikipedia – Approfondimento matematico sulla Trasformata di Fourier Veloce (FFT)

Hai trovato utile questo articolo? C'è un altro argomento che vorresti vedermi affrontare?
Scrivilo nei commenti qui sotto! Prendo ispirazione direttamente dai vostri suggerimenti.