---
id: "P:cAlgo.API.BacktestingSettings.MonteCarlo"
kind: "property"
type: "T:cAlgo.API.BacktestingSettings"
url: "https://help.ctrader.com/ctrader-algo/references/Plugin/Backtesting/BacktestingSettings/MonteCarlo/"
---

> Documentation index for agents: https://help.ctrader.com/ctrader-algo/llms.txt · machine index: https://help.ctrader.com/ctrader-algo/api.json

# BacktestingSettings.MonteCarlo

Member of [BacktestingSettings](https://help.ctrader.com/ctrader-algo/references/Plugin/Backtesting/BacktestingSettings/index.md).

## MonteCarlo

Gets or sets the optional Monte Carlo simulation that runs on the completed backtest. When it is null, the default, no Monte Carlo simulation is performed and the backtest behaves exactly as before. When it is set, the simulation runs on the completed backtest and its result is written to the configured output file.

Environments: Desktop supported · CLI not supported · Cloud not supported.

- CLI: Available to plugins only, and plugins cannot run in the CLI.
- Cloud: Available to plugins only, and plugins cannot run in the cloud.

C#:

```csharp
public MonteCarloSettings MonteCarlo {get; set;}
```

Python:

```python
backtestingSettings.MonteCarlo: MonteCarloSettings
```

### Returns

`MonteCarloSettings` — 

Available since cAlgo.API 5.10.

### Examples

C#:

```csharp
var backtestingSettings = new BacktestingSettings
{
    StartTimeUtc = new DateTime(2025, 1, 1, 0, 0, 0, DateTimeKind.Utc),
    EndTimeUtc = new DateTime(2025, 6, 1, 0, 0, 0, DateTimeKind.Utc),
    Balance = 10000,
    DataMode = BacktestingDataMode.M1,
    MonteCarlo = new MonteCarloSettings(MonteCarloMethod.BlockBootstrap, @"C:\Temp\montecarlo-result.json")
    {
        Iterations = 5000,
        Seed = 42,
        BlockSize = 10
    }
};

Print($"Monte Carlo output file: {backtestingSettings.MonteCarlo.OutputFilePath}");
```

Python:

```python
from System import DateTime, DateTimeKind
backtestingSettings = BacktestingSettings()
backtestingSettings.StartTimeUtc = DateTime(2025, 1, 1, 0, 0, 0, DateTimeKind.Utc)
backtestingSettings.EndTimeUtc = DateTime(2025, 6, 1, 0, 0, 0, DateTimeKind.Utc)
backtestingSettings.Balance = 10000
backtestingSettings.DataMode = BacktestingDataMode.M1

monteCarlo = MonteCarloSettings(MonteCarloMethod.BlockBootstrap, r"C:\Temp\montecarlo-result.json")
monteCarlo.Iterations = 5000
monteCarlo.Seed = 42
monteCarlo.BlockSize = 10
backtestingSettings.MonteCarlo = monteCarlo

api.Print(f"Monte Carlo output file: {backtestingSettings.MonteCarlo.OutputFilePath}")
```

