Calcolatore del tasso interno di rendimento
Il calcolatore del tasso interno di rendimento stima il tasso di attualizzazione periodico che porta a zero il valore attuale netto di una serie di flussi di cassa.
Esegui gratis nel browser
Inserisca l'investimento iniziale e ogni successivo incasso o costo in ordine cronologico, usando valori negativi per le uscite e positivi per le entrate. Il risultato comprende il TIR decimale e percentuale, il VAN residuo e dati diagnostici. Può così confrontare i progetti senza perdere di vista la tempistica dei flussi.
Inserisca una serie completa con intervalli uniformi
Parta dal flusso del periodo zero, che solitamente rappresenta l'investimento iniziale ed è quindi negativo. Aggiunga ogni entrata o uscita successiva in ordine cronologico. Ciascuna posizione rappresenta un periodo della stessa durata: se i dati sono mensili, il risultato sarà un TIR mensile; se sono annuali, sarà annuale. Inserisca zero quando in un periodo non avviene alcun movimento, poiché eliminare quella posizione modifica la tempistica e quindi la risposta. Il calcolatore richiede almeno un valore negativo e uno positivo, condizione che esprime il passaggio tra capitale impegnato e denaro recuperato. Può usare qualsiasi valuta, purché tutti gli importi abbiano la stessa valuta e scala. Non mescoli periodi mensili e annuali, valori nominali e corretti per l'inflazione, né unità monetarie e migliaia nella stessa serie. Il TIR dipende sia dall'importo sia dal momento del flusso, quindi una cronologia coerente è essenziale. La stima facoltativa è un punto di partenza percentuale, non una risposta garantita, e il valore predefinito è adatto a molti progetti convenzionali.
Comprenda come viene trovata la stima
Per ogni tasso candidato, il calcolatore attualizza ciascun flusso in base al suo periodo e somma i valori ottenuti per calcolare il valore attuale netto. Cerca un tasso superiore a meno cento per cento che porti la somma a zero. Inizia con una rapida iterazione basata sulla derivata vicino alla stima indicata. Se il tentativo non converge, esplora un ampio intervallo logaritmico, individua i tratti in cui il segno cambia e li affina mediante bisezione. Questo metodo alternativo è più lento, ma stabile vicino al limite inferiore e indipendente da scelte casuali. Quando rileva più radici con cambio di segno, seleziona l'intervallo più vicino alla stima fornita. La regola rende deterministica la scelta, senza eliminare l'ambiguità dei flussi non convenzionali. Il VAN residuo indica quanto accuratamente il tasso soddisfa l'equazione; il numero di iterazioni è soltanto un dato diagnostico. L'arrotondamento avviene dopo la soluzione. Se nessuna radice supportata può essere delimitata e affinata, la richiesta restituisce un errore di input anziché un tasso fuorviante.
Valuti il TIR insieme a dimensione, rischio e alternative
Il TIR esprime il rendimento percentuale periodico implicito nei flussi inseriti. In un progetto convenzionale con un esborso iniziale seguito da benefici, un TIR più alto indica in genere un rendimento maggiore rispetto alla tempistica del capitale. Una regola comune consiste nel confrontarlo con il rendimento minimo richiesto: il progetto può essere interessante quando il TIR supera tale soglia, se previsioni e ipotesi di rischio sono credibili. Tuttavia, il TIR da solo non mostra quanto valore monetario venga creato. Un piccolo progetto può avere un TIR elevato ma generare meno valore complessivo di un progetto maggiore con un tasso inferiore; confronti quindi anche il VAN a un tasso di attualizzazione appropriato. Più cambi di segno possono produrre più TIR matematici e progetti alternativi possono ricevere classifiche diverse secondo TIR e VAN. La misura implica inoltre un reinvestimento che potrebbe non essere realistico. Consideri il risultato una stima, non una promessa, e verifichi incassi, costi, ritardi, valore terminale, imposte e finanziamento. Per date irregolari utilizzi XIRR, anziché trattare intervalli diversi come uguali.
Casi d'uso
Valutare un progetto di investimento
Stimi il rendimento implicito nell'esborso iniziale e nei flussi operativi previsti prima di confrontarlo con la soglia aziendale.
Confrontare scenari di investimento
Modifichi costi, incassi o ipotesi temporali e osservi come varia il TIR periodico del progetto in ogni scenario.
Controllare un modello di foglio elettronico
Ricalcoli il TIR dalla riga dei flussi esportata e confronti il tasso e il VAN residuo con il risultato del foglio.
Domande frequenti
Quanto costa il calcolatore?
Ogni richiesta API costa $0.002. Il prezzo si applica al singolo calcolo, non a ogni periodo del flusso di cassa.
Il risultato è annuale o mensile?
Segue lo stesso periodo dei flussi. Dati mensili producono un TIR mensile, mentre dati annuali producono un TIR annuale.
Perché servono flussi con entrambi i segni?
Una radice del TIR richiede normalmente movimenti di denaro opposti. Una serie di sole entrate o sole uscite non attraversa un VAN nullo nell'intervallo ammesso.
Un progetto può avere più di un TIR?
Sì. Flussi che cambiano segno più volte possono produrre più radici. In tal caso, il calcolatore sceglie quella più vicina alla stima fornita.
Che cosa significa VAN al TIR?
È il valore attuale netto ricalcolato al TIR stimato. Dovrebbe essere molto vicino a zero; può restare un residuo minimo a causa della precisione numerica finita.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/finance/irr \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"cash_flows":[-100000,30000,40000,50000]}'const res = await fetch("https://api.kit.forhosting.com/finance/irr", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"cash_flows": [
-100000,
30000,
40000,
50000
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/finance/irr",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"cash_flows": [
-100000,
30000,
40000,
50000
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/finance/irr", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"cash_flows":[-100000,30000,40000,50000]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"cash_flows":[-100000,30000,40000,50000]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/finance/irr", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"cash_flows": [
-100000,
30000,
40000,
50000
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "finance.irr",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |