---
id: "P:cAlgo.API.OptimizationPassCompletedEventArgs.Process"
kind: "property"
type: "T:cAlgo.API.OptimizationPassCompletedEventArgs"
url: "https://help.ctrader.com/ctrader-algo/references/Plugin/Optimization/OptimizationPassCompletedEventArgs/Process/"
---

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

# OptimizationPassCompletedEventArgs.Process

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

## Process

Gets the optimization process that produced the pass.

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 OptimizationProcess Process {get;}
```

Python:

```python
optimizationPassCompletedEventArgs.Process: OptimizationProcess
```

### Returns

`OptimizationProcess` — 

Available since cAlgo.API 5.9.

### Examples

C#:

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

private void OnPassCompleted(OptimizationPassCompletedEventArgs args)
{
    if (args.Pass.NetProfit < 0 && args.Process.Passes.Count > 100)
        args.Process.Terminate();
}
```

Python:

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

def on_pass_completed(self, args):
    if args.Pass.NetProfit < 0 and args.Process.Passes.Count > 100:
        args.Process.Terminate()
```

