NUVOLOS
Sign In
  • Getting Started
    • Introduction to Nuvolos
    • Documentation structure
    • Nuvolos basic concepts
      • Organisational hierarchy
      • Applications
      • Distribution
      • Data integration
      • Snapshots
      • Background tasks
    • Navigate in Nuvolos
    • Quickstart tutorials
      • Research
      • Education (instructor)
      • Education (student)
  • Features
    • Applications
      • Application resources
      • Sessions
        • Session Logs
      • Install a software package
      • Create a persistent .bashrc
      • Automatic code execution
      • Long-running applications
      • Troubleshooting applications
      • New applications or licenses
      • Configuring applications
      • Exporting applications
      • Add-ons
        • MariaDB add-on
        • PostgreSQL add-on
        • OpenSearch add-on
        • MongoDB add-on
        • Redis add-on
        • PostGIS add-on
        • Rclone mount add-on
        • Neo4j add-on
    • File system and storage
      • File navigator
      • Large File Storage
      • Preview files
      • Mount Dropbox
      • Access S3 buckets with RClone
      • Access remote files with SSHFS
      • Access files on SharePoint Online
    • Object distribution
      • Distribution strategies
      • The distributed instance
    • Snapshots
      • Create a snapshot
      • Restore a snapshot
      • Delete a snapshot
    • Database integration
      • Create datasets
      • View tables
      • Build queries
      • Upload data
      • Access data from applications
        • Set up ODBC drivers
        • Obtain tokens for data access
        • Find database and schema path
      • DBeaver integration
    • Environment variables and secrets
    • Searching
      • Page
      • Find an application
      • Find an organisation
      • Find a space
      • Find an instance
      • Find a state
    • Video library
    • Nuvolos CLI and Python API
      • Installing the CLI
      • Using the CLI
  • User Guides
    • Research guides
      • Inviting a reviewer
      • GPU computation
    • Education guides
      • Setting assignments
        • Programmatical assignment handling
      • Documenting your course
      • Setting up group projects
        • Collaborative application editing
      • Configuring student applications
      • Archiving your course
      • Student guides
        • Joining a course
        • Working on assignments
        • Leaving a course
    • Application-specific guides
      • JupyterLab
      • RStudio
      • VSCode
      • Stata
      • MATLAB
      • Terminal
      • Terminal [tmux]
      • Apache Airflow
      • Apache Superset
      • D-Wave Inspector
      • MLFlow
      • Databricks Connect
      • Dynare.jl
      • CloudBeaver
      • InveLab
      • Overleaf
      • Metabase
      • DNDCv.CAN
      • OpenMetaData
      • Uploading data to the Large File Storage
    • Data guides
      • Setting up a dataset on Nuvolos
      • Importing data on Nuvolos
      • A complete database research workflow (Matlab & RStudio)
      • Accessing data as data.frames in R
      • Working with CRSP and Compustat
      • Working with the S&P 500®
  • Pricing and Billing
    • Pricing structure
    • Resource pools and budgets
    • Nuvolos Compute Units (NCUs)
  • Administration
    • Roles
      • Requesting roles
    • Organisation management
    • Space management
      • Invite to a space
      • Revoke a space user
      • HPC spaces
      • Resting spaces
    • Instance management
      • Invite to an instance
    • Enabling extra services
    • Monitoring resource usage
  • Reference
    • Application reference
      • InveLab
        • Dataset selection
        • Modules
          • Time-series visualisation
          • Moment estimation
          • Mean-variance frontiers
          • Frontiers
          • Dynamic strategy
          • Portfolio analysis
          • Performance analysis
          • Benchmarking
          • Carry trade strategies
          • Risk measures
          • Conditional volatility
          • Replication
          • Factor factory
          • Factor tilting
          • Valuation
    • Glossary
  • FAQs
    • FAQs
    • Troubleshooting
      • Login troubleshooting
        • I forgot my email address
        • I forgot my identity provider
        • I can't log in to Nuvolos
        • I forgot my password
        • I haven't received the password reset email
        • I haven't received the invitation email
      • Application troubleshooting
        • I can't see an application
        • I can't start an application
        • I can't create an application
        • I can't delete an application
        • I can't stop a running application
        • JupyterLab 3 troubleshooting
        • Spyder 3.7 troubleshooting
      • Administration troubleshooting
        • I can't see a space
        • I can't create a space
        • I can't delete a space
        • I can't invite admins to my space
        • I can't see an instance
        • I can't create an instance
        • I can't delete an instance
        • I can't invite users to an instance
        • I can't see distributed content in my instance
        • I can't see a snapshot
        • I can't create a snapshot
        • I can't delete a snapshot
        • I can't revoke a user role
        • I can't upload a file
        • I can't delete a file
        • I can't invite students to my course
      • Content troubleshooting
        • I can't find my files in my Linux home
        • I can't find my files among the Workspace files
        • I restored a snapshot by mistake
Powered by GitBook
On this page
  • Correlation
  • Expected Return
  • Sigmas

Was this helpful?

  1. Reference
  2. Application reference
  3. InveLab
  4. Modules

Moment estimation

PreviousTime-series visualisationNextMean-variance frontiers

Last updated 2 years ago

Was this helpful?

This section provides three methods to calculate the correlation, expected return, and standard deviations. These methods are used in other modules as well, such as dynamic strategy.

Correlation

It plots the correlation across pair-wise assets. When the number of assets is less than or equal to 10, it will show the correlation matrix with numbers. Above 10 assets, it will show the heatmap as default. It uses the below methods to calculate covariance first, then converts it to the correlation matrix:

  • Sample statistics. Regular covariance calculation for the data in the sample period.

  • Factor model. Selecting used factors and the risk-free rate, they are applied to:

    1. Calculate the beta(s) of each asset based on the selected factors and the risk-free rate.

    2. For each asset $i$ and a vector of factor b:

      • its expected return can be written as $E[R_i] = E[R_f] + E(R_ib)$, where $E(R_ib) = \beta_{ib} * E[\text{Factor}_b]$,

      • so the covariance between asset $i$ and $j$ is written as $cov(R_i, R_j) = b_i*CF*b_j' + cov(R_{ib}, R_f) + cov(R_{jb}, R_f) + var(R_f)$, where:

        • bi = a {1*m} vector of asset i's exposures to the m factors

          • CF = an {m*m} matrix of the factor covariances

          • bj = a {1*m} vector of asset j's exposures to the m factors;

    See also this reference from William Sharpe:

  • Shrinkage method:

    • Classic: Ledoit-Wolf Shrinkage Variance Estimate with weight in NULL. For more information, please refer to

    • Glasso: estimates a sparse inverse covariance matrix using a lasso (L1) penalty, using the approach of Friedman, Hastie and Tibshirani (2007). For more information, please see

Expected Return

  • Sample statistics. Simple mean of historical observations without null values.

  • Factor. For asset $i$, the expected return $E[R_i]$ is calculated as

    1. Run regression : $R_{it} - R_{ft} = alpha_i + beta_{ij} * Factor_{jt} + \varepsilon_{it}$

    2. Calculate the expected return $E[R_i] = E[R_f] + \sum_j \beta_{ij} * E[\text{Factor}_j]$.

  • Shrinkage method: same as sample statistics.

Sigmas

Same as the correlation/covariance matrix calculation.

https://web.stanford.edu/~wfsharpe/mia/fac/mia_fac3.htm
https://search.r-project.org/CRAN/refmans/BurStFin/html/var.shrink.eqcor.html
https://cran.r-project.org/web/packages/glasso/glasso.pdf