awt_quant.forecast.stochastic.portfolio.portfolio_simulations

Module Contents

awt_quant.forecast.stochastic.portfolio.portfolio_simulations.run_portfolio_simulation(portfolio, equation, start_date, end_date, train_test_split, num_paths=1000, plot_vol=False, plot_sim=False, num_sim=100)[source]

Runs a single portfolio simulation using the chosen stochastic differential equation.

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

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

  • start_date (str) – Start date for simulation.

  • end_date (str) – End date for simulation.

  • train_test_split (float) – Ratio of training data.

  • num_paths (int) – Number of simulation paths (default: 1000).

  • plot_vol (bool) – Whether to plot volatility models (default: False).

  • plot_sim (bool) – Whether to plot individual stock simulations (default: False).

  • num_sim (int) – Number of simulations for error estimation (default: 100).

awt_quant.forecast.stochastic.portfolio.portfolio_simulations.compare_multiple_portfolio_simulations(portfolios, equation_classes, end_dates, forecast_periods, train_test_splits, num_paths=1000, num_sim=100, plot_vol=False, plot_sim=False)[source]

Compares multiple portfolio simulations across different stochastic models and settings.

Parameters:
  • portfolios (list[dict]) – List of portfolios with stock symbols and positions.

  • equation_classes (list[str]) – List of stochastic models to test.

  • end_dates (list[str]) – End dates for different simulations.

  • forecast_periods (list[int]) – Forecasting periods in days.

  • train_test_splits (list[float]) – Different train-test split ratios.

  • num_paths (int) – Number of Monte Carlo paths (default: 1000).

  • num_sim (int) – Number of simulations for error estimation (default: 100).

  • plot_vol (bool) – Whether to plot volatility models (default: False).

  • plot_sim (bool) – Whether to plot individual stock simulations (default: False).

Returns:

Dataframe containing forecast errors and summaries.

Return type:

pd.DataFrame