awt_quant.forecast.portfolio.portfolio_forecast

Portfolio Forecasting using Monte Carlo Simulations & Copula Models.

This module extends SPDEMCSimulator to forecast a portfolio of assets.

Classes:
  • PortfolioForecast: Forecasts portfolio performance using copula-based simulations.

Module Contents

class awt_quant.forecast.portfolio.portfolio_forecast.PortfolioForecast(portfolio, equation, train_test_split, start_date='2022-01-01', end_date='2022-03-01', dt=1, num_paths=1000, plot_vol=False, plot_sim=False)[source]

Bases: awt_quant.forecast.stochastic.pde_forecast.SPDEMCSimulator

Forecasts a portfolio using Monte Carlo simulations and copula models.

- portfolio

Dictionary with stock symbols, positions, and quantities.

- equation

Stochastic Differential Equation model (CIR, GBM, Heston, OU).

- assets

List of SPDEMCSimulator instances for each stock.

- train_data, test_data

Aggregated portfolio data.

Initializes PortfolioForecast with a list of stocks and positions.

Parameters:
  • portfolio (dict) – Dictionary containing symbols, quantities, and positions.

  • equation (str) – Chosen stochastic model (CIR, GBM, Heston, OU).

  • train_test_split (float) – Ratio of training data.

  • start_date (str) – Start date for data collection.

  • end_date (str) – End date for data collection.

  • dt (int) – Time step size.

  • num_paths (int) – Number of simulation paths.

  • plot_vol (bool) – Plot volatility models.

  • plot_sim (bool) – Plot individual stock simulations.

portfolio[source]
symbols[source]
assets = [][source]
quantity[source]
position = [][source]
equation[source]
copula_simulation()[source]

Simulates a copula model to generate dependent return quantiles.

Returns:

Copula-simulated quantiles (shape: n_stocks x n_simulations x T)

Return type:

  • torch.Tensor

forecast()[source]

Generates portfolio price forecasts based on copula-simulated quantiles.

plot_forecast()[source]

Plots portfolio simulation with quantile paths and percent errors.

backtest()[source]

Backtests the forecast and prints ARMA model summaries.