IniziaInizia gratis

Simulazione di portafoglio - Parte I

Nei prossimi esercizi calcolerai i rendimenti attesi di un portafoglio azionario e ne caratterizzerai l’incertezza.

Supponi di aver investito 10.000 $ in un portafoglio composto da più azioni. Vuoi valutare la performance del portafoglio su 10 anni. Puoi modificare il tasso di rendimento atteso complessivo e la volatilità (deviazione standard del tasso di rendimento). Assumi che il tasso di rendimento segua una distribuzione normale.

Per prima cosa, scriviamo una funzione che prenda in input il capitale iniziale (investimento iniziale), il numero di anni, il tasso di rendimento atteso e la volatilità, e restituisca il valore totale del portafoglio dopo 10 anni.

Al termine di questo esercizio, avrai una funzione che puoi chiamare per determinare la performance del portafoglio.

Questo esercizio fa parte del corso

Simulazione statistica in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Nella definizione della funzione, accetta quattro argomenti: numero di anni yrs, tasso di rendimento atteso avg_return, volatilità sd_of_return e capitale iniziale principal come input.
  • Simula i rates di rendimento per ogni anno come variabile casuale normale.
  • Inizializza end_return con l’input principal. Nel ciclo for, end_return viene aumentato ogni anno in base al tasso.
  • Usa portfolio_return() per calcolare e stampare result.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# rates is a Normal random variable and has size equal to number of years
def portfolio_return(____):
    np.random.seed(123)
    rates = ____(loc=avg_return, scale=sd_of_return, size=yrs)
    # Calculate the return at the end of the period
    end_return = ____
    for x in rates:
        end_return = end_return*(1+____)
    return end_return

result = portfolio_return(yrs = 5, avg_return = 0.07, sd_of_return = 0.15, principal = 1000)
print("Portfolio return after 5 years = {}".format(____))
Modifica ed esegui il codice