---
id: "T:cAlgo.API.OptimizationPassCompletedEventArgs"
kind: "record"
namespace: "cAlgo.API"
url: "https://help.ctrader.com/ctrader-algo/references/Plugin/Optimization/OptimizationPassCompletedEventArgs/"
---

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

# OptimizationPassCompletedEventArgs (record)

Provides data for the optimization pass completed event.

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.

## Definition

```csharp
public class OptimizationPassCompletedEventArgs
```

Available since cAlgo.API 5.9.

## Examples

C#:

```csharp
protected override void OnStart()
{
    Optimization.PassCompleted += OnPassCompleted;
}

private void OnPassCompleted(OptimizationPassCompletedEventArgs args)
{
    Print("Pass {0} done, {1} passes completed so far", args.Pass.Id, args.Process.Passes.Count);
}
```

Python:

```python
def on_start(self):
    api.Optimization.PassCompleted += self.on_pass_completed

def on_pass_completed(self, args):
    api.Print(f"Pass {args.Pass.Id} done, {args.Process.Passes.Count} passes completed so far")
```

## Constructors

- `public OptimizationPassCompletedEventArgs(OptimizationPassCompletedEventArgs original)` —  [details](https://help.ctrader.com/ctrader-algo/references/Plugin/Optimization/OptimizationPassCompletedEventArgs/Constructor/index.md)

## Properties

- `public OptimizationPass Pass {get;}` — Gets the pass that completed. [details](https://help.ctrader.com/ctrader-algo/references/Plugin/Optimization/OptimizationPassCompletedEventArgs/Pass/index.md)
- `public OptimizationProcess Process {get;}` — Gets the optimization process that produced the pass. [details](https://help.ctrader.com/ctrader-algo/references/Plugin/Optimization/OptimizationPassCompletedEventArgs/Process/index.md)

