run_monte_carlo
Simulate random portfolio allocations to identify optimal risk-return combinations through Monte Carlo analysis.
Instructions
Run Monte Carlo simulation to find optimal portfolios.
Generates random portfolio weight combinations and evaluates their risk/return characteristics to find optimal allocations.
Note: This is computationally intensive. For large num_trials, consider using the Efficient Frontier method instead which provides mathematically optimal solutions.
Args: name: The portfolio name. num_trials: Number of random portfolios to generate (default: 5000).
Returns: Dictionary containing: - num_trials: Number of simulations run - min_volatility_portfolio: Portfolio with minimum volatility - max_sharpe_portfolio: Portfolio with maximum Sharpe ratio - simulation_stats: Statistics about the simulation - sample_portfolios: Sample of generated portfolios
Example:
result = run_monte_carlo(name="tech_stocks", num_trials=10000)
best = result['max_sharpe_portfolio']
print(f"Best Sharpe: {best['sharpe_ratio']:.2f}")
print(f"Optimal weights: {best['weights']}")
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| num_trials | No |