Vai al contenuto

Cumulative vs. Compounding: Distinguere le Strade dell’Investimento

Abbiamo deciso di scrivere questo breve articolo per fare luce su uno dei fraintendimenti più comuni, soprattutto per i neofiti, quando si parla di modelli di investimento. Che si stia parlando dei profit/loss delle operazioni di una strategia di trading, oppure delle variazioni percentuali di un singolo asset, il primo passo per comprendere i punti di forza o di debolezza di tale sequenza è quella di costruire una “equity line”. Stiamo parlando, banalmente, della curva che descrive l’andamento del nostro investimento nel tempo.

Tuttavia esistono diversi modi di aggregare la nostra serie di valori e ogni modalità porta con se caratteristiche peculiari, che possono impattare enormemente sul risultato. E’ infatti possibile sommare i contributi nel tempo (“somma cumulata”), oppure moltiplicarli dopo aver normalizzato il punto di partenza. Studiando Python sappiamo che ciò si declina nei due metodi Pandas “cumsum” e “cumprod” e nei corrispettivi nel caso di utilizzo della libreria Numpy.

Partiamo dalle definizioni:

Somma Cumulativa (“cumsum”): La somma cumulativa è la somma progressiva dei valori. Nel contesto dei dati finanziari, se si dispone di una lista di rendimenti di un asset nel tempo, prendere la somma cumulativa darebbe la performance cumulativa di quell’asset nel tempo.

Matematicamente, se si hanno rendimenti 

r1, r2, … , rn, allora la somma cumulativa ad ogni istante t sarebbe:

Somma Cumulativa al tempo t = r1 + r2 + … + rt

Rappresenta come il valore del nostro investimento evolverebbe se semplicemente aggiungessi i rendimenti ad ogni istante di tempo.

Prodotto Cumulativo (“cumprod”): Il prodotto cumulativo, d’altra parte, calcola la moltiplicazione cumulativa dei valori. Nel contesto finanziario, rappresenta la crescita di un investimento se i rendimenti venissero composti nel tempo.

Se si hanno rendimenti r1, r2, … ,rn

allora il prodotto cumulativo ad ogni istante t sarebbe:

Prodotto Cumulativo al tempo t = (1 + r1) × (1 + r2) × … × (1 + rt)

Mostra la crescita del nostro investimento se reinvestissimo i rendimenti ad ogni istante di tempo. Ma un esempio vale più di mille parole: supponiamo di avere i seguenti rendimenti in un periodo di 3 giorni: [0.05, 0.03, -0.02].

Partiamo dalla somma dei contributi:

Somma Cumulativa:

Giorno 1: 0.05

Giorno 2: 0.05 + 0.03 = 0.08

Giorno 3: 0.05 + 0.03 − 0.02 = 0.06

Quindi, la somma cumulativa ad ogni giorno ci dà il rendimento totale fino a quel momento. Nel nostro caso, dopo tre giorni (tre rendimenti) avremo un guadagno del 6%.

Vediamo adesso cosa accada se consideriamo la proditoria di tali rendimenti e in seguito proveremo ad interpretare i risultati ottenuti:

Prodotto Cumulativo:

Giorno 1: (1 + 0.05) = 1.05

Giorno 2: (1 + 0.05) × (1 + 0.03) = 1.05 × 1.03 = 1.0815

Giorno 3: (1 + 0.05) × (1 + 0.03) × (1 − 0.02) = 1.05 × 1.03 × 0.98 = 1.06047

Quindi, il prodotto cumulativo ad ogni giorno ci restituisce il fattore di crescita totale fino a quel punto. Il fatto di aggiungere 1 ad ogni contributo permette di centrare su 1 (o se preferite sul 100% dell’investimento iniziale) i contributi incrementali. L’operazione di moltiplicazione permette di considerare, per ogni campione, il guadagno o la perdita ottenuti in quella specifica frazione di tempo. Nel nostro caso otteniamo il 6.047%, quindi leggermente di più che nel caso cumulativo. Se tale differenza può sembrare trascurabile, tra breve vedremo come le cose non stiano proprio così, all’aumentare della durata dell’investimento.

In sintesi, mentre la somma cumulativa mostra il rendimento totale ad ogni istante di tempo, il prodotto cumulativo dimostra la crescita composta di un investimento nel tempo.

Possiamo interpretare le due tecniche anche nel modo seguente: la somma cumulativa descrive un investimento in cui si utilizzi sempre la stessa quantità di denaro investita per ogni variazione percentuale, mentre il prodotto cumulativo ipotizza di reinvestire ogni volta il capitale iniziale e l’ammontare del profit/loss della precedente operazione.

Per cogliere meglio l’impatto che può derivare da tale differenza carichiamo i dati giornalieri del titolo Apple (ticker AAPL) a partire dal 1 gennaio 2020.

Consideriamo il prezzo di chiusura (adjusted close) di Yahoo Finance, che viene calcolato per tenere conto di eventuali eventi che potrebbero influenzare il prezzo di un titolo, come dividendi, scissioni o raggruppamenti di azioni. Questi aggiustamenti sono importanti per fornire una rappresentazione accurata del rendimento complessivo di un titolo nel tempo.

Di solito, il calcolo dell’adjusted close coinvolge i seguenti passaggi (consigliamo di leggere sempre le specifiche del provider dati di turno, prima di trarre conclusioni errate):

  1. Prezzo di chiusura (Close Price): È il prezzo finale al quale è stato negoziato il titolo durante la giornata di negoziazione.
  2. Dividendi: Se ci sono stati pagamenti di dividendi durante il periodo considerato, il prezzo di chiusura viene ridotto del valore del dividendo per azione. Questo è perché il pagamento del dividendo riduce effettivamente il valore dell’azione per gli investitori.
  3. Scissioni o raggruppamenti di azioni: Se ci sono state scissioni (split) o raggruppamenti (reverse split) di azioni durante il periodo, il prezzo di chiusura viene aggiustato di conseguenza per riflettere il nuovo rapporto di conversione delle azioni.
  4. Altri eventi corporate: A volte ci possono essere altri eventi aziendali che influenzano il prezzo di un titolo. Ad esempio, emissioni di azioni aggiuntive, fusioni, acquisizioni, ecc. Questi eventi possono richiedere ulteriori aggiustamenti al prezzo di chiusura.

In sintesi, l’adjusted close di Yahoo Finance è una versione corretta del prezzo di chiusura che tiene conto di tutti gli eventi che potrebbero influenzare il valore di un titolo nel tempo, consentendo agli investitori di valutare correttamente il rendimento complessivo dell’investimento.

Dopo aver calcolato la variazione percentuale giornaliera dell’adjusted close, costruiamo le due equity line, sia nel caso di somma cumulativa che nel caso di prodotto cumulativo.

In arancione l’andamento ottenuto con la somma cumulativa (in questo caso partiamo ovviamente da zero, dovendo tenere conto soltanto del contributo percentuale successivo al primo investimento), mentre in blu vediamo la curva ottenuta con il prodotto cumulativo (in questo caso partiamo da 1 o dal 100% del capitale iniziale).

E’ già possibile vedere delle differenze tra i due andamenti, ma per poter fare un confronto più significativo normalizziamo entrambe le equity line:

not_reinvesting = 1 + returns.cumsum()
reinvesting = (1 + returns).cumprod()

Di seguito le nuove curve che risulteranno sovrapposte in partenza:

Possiamo osservare come all’inizio risulti davvero difficile distinguere i due andamenti e questo è dovuto al fatto che la parte di reinvestimento che agisce sul prodotto è ancora piccola. Spostandosi in avanti nel tempo, invece, tale contributo diventa più consistente, creando, dapprima uno shifting della curva blu sull’arancione e successivamente un aumento considerevole della varianza. Tale effetto assume delle proporzioni davvero sorprendenti a fine 2023, in corrispondenza degli ultimi record della serie storica.

Tale effetto si enfatizza ulteriormente se facciamo iniziare la serie storica nel 2015 e diamo, quindi, un periodo temporale superiore all’effetto composto dei singoli profit/loss combinati nei singoli prodotti.

Anche in questo caso la prima parte delle due equity line risulta praticamente sovrapposta (intervallo 2015-2017), ma già dal 2018 gli andamenti iniziano a separarsi vistosamente e la varianza aumenta sulla curva che tiene conto dei investimenti degli utili. Da li in poi siamo davvero di fronte a due tipologie di investimento distinte: la curva arancione che non considera i reinvestimenti (e ipotizza un investimento costante per ciascun intervallo), continua a crescere con grande regolarità, concludendo la sua corsa intorno al 240% di performance finale. La curva blu, che contempla invece il reinvestimento degli utili/perdite, raggiunge un consistente 705%, ma a spese di una varianza, e quindi di un rischio che è quattro volte superiore.

Per apprezzare quanto detto, di seguito possiamo vedere le curve di draw down di entrambi i casi (in nero possiamo vedere il livello medio di draw down):

La differenza è notevole. Inoltre, cosa non da poco, si è anche spostato nel tempo il momento di massima sofferenza:

cumulative returns drawdown: -2.34 on 2023-01-05
cumulative sum drawdown: -0.46 on 2019-01-03


Analizziamo ancora più in dettaglio tale differenza visualizzando la “heatmap” dei profit/loss mensili e annuali. Iniziamo con il caso di reinvesting:

L’effetto di amplificazione delle escursione diventa invasivo già dal 2020 dividendo, di fatto, il risk factor in due zone distinte prima e dopo tale anno.

Di seguito in caso il caso senza reinvesting, che mostra una certa regolarità anche dal punto di vista della ripartizione di profitti e perdite negli anni.

Volendo concludere con una metrica identificativa della qualità di un investimento come lo sharpe ratio, passiamo da uno 0.54 reinvestendo gli utili ad uno 0.84 considerando un capitale costante.

La lezione è che è fondamentale conoscere in dettaglio le modalità di investimento prima di avventurarsi a cuor leggero in una attività finanziaria, sia essa anche semplicemente una strategia Buy&Hold.

Se vi è piaciuto questo modo di lavorare, sappiate che tutte le elaborazioni presentate sono state ottenute in Python e che questo è soltanto un piccolo assaggio di quello che facciamo all’interno dei nostri acceleratori didattici di punta “Python Academy” e “Machine Learning Academy” edizione 2024. Potete consultare il programma cliccando sui link e prenotare un colloquio con il docente semplicemente scrivendo una email ad info@gandalfproject.com.

Have a good trade!

Giovanni Trombetta

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *