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
  • VaR
  • ES
  • Conditional risk measures

Was this helpful?

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

Risk measures

This module mainly calculates two risk measures, Value-at-Risk (VaR) and Expected Shortfall (ES). It does so based on four different models: the empirical model, extreme value theory (EVT), a normal distribution, and Student's t-distribution.

VaR

  • Empirical: directly uses a quantile function to sort the data sample and find the quantile value at the target percentile.

  • EVT: we first use the QRM::fit.GPD function to fit the generalised Pareto distribution based on the data-exceeding threshold (the selected EVT two-side tail percentage). Next, we use the QRM::RiskMeasures function to find the quantile value at the target percentile. The package "QRM" considers the 'lambda' value, which is the total obs / number of excesses by threshold.

  • Normal: we first use MASS::fitdistr to fit the data sample to get the mean and standard deviation, then the qnorm function to find the quantile value at the target percentile.

  • Student's t: similar to the normal distribution model, it uses QRM::fit.st functions to fit the mean, sigma and nu, then the QRM::qst function to find the quantile value at the target percentile.

ES

  • Empirical: filters the subset data exceeding the quantile threshold and calculates their average value.

  • EVT: QRM::RiskMeasures can also calculate the ES value for the EVT model.

  • Normal: uses the data sample to MASS::fitdistr to fit the mean and standard deviation, then the formula $mu - sd * dnorm(qnorm(p))/p$ to calculate the ES value.

  • Student's t: similar to the normal distribution model, it uses QRM::fit.st functions to fit the mean, sigma and nu, then the below formula to calculate the ES value: $ES_st = 1/p / (nu - 1) * (nu - 2 + qt(1-p, nu)**2) * dt(qt(1-p, nu), nu)$ $ES = - (mu + sig*ES_st)$

Conditional risk measures

Conditional risk measures use one time-series data object as their reference. We then consider a certain bottom percentile of this reference data series and filter out the corresponding time period. Last, under the same period, we filter the target assets and calculate corresponding risk measures. For example, if the reference series is S&P 500 index, "below 50%" means the S&P 500 is lower than its median value. Then we only consider these periods and filter the target assets to the same period and calculate corresponding risk measures.

PreviousCarry trade strategiesNextConditional volatility

Last updated 1 year ago

Was this helpful?