---
id: "M:cAlgo.API.OptimizationSymbolParameter.#ctor(System.String,System.Collections.Generic.IEnumerable{cAlgo.API.Internals.Symbol})"
kind: "constructor"
type: "T:cAlgo.API.OptimizationSymbolParameter"
url: "https://help.ctrader.com/ctrader-algo/references/Plugin/Optimization/OptimizationSymbolParameter/Constructor/"
---

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

# OptimizationSymbolParameter constructor

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

## OptimizationSymbolParameter(string name, IEnumerable<Symbol> values)

Optimizes the parameter over the given values.

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 OptimizationSymbolParameter(string name, IEnumerable<Symbol> values)
```

Python:

```python
OptimizationSymbolParameter(name: str, values: Iterable[Symbol])
```

### Parameters

- `name` (`string`, Python `str`): The cBot parameter name.
- `values` (`IEnumerable<Symbol>`, Python `Iterable[Symbol]`): The discrete set of symbols to optimize over.

Available since cAlgo.API 5.9.

### Examples

C#:

```csharp
var parameter = new OptimizationSymbolParameter("HedgeSymbol", Symbols.GetSymbols("EURUSD", "GBPUSD"));
Print("{0} is optimized: {1}", parameter.Name, parameter.IsOptimized);
```

Python:

```python
parameter = OptimizationSymbolParameter("HedgeSymbol", api.Symbols.GetSymbols("EURUSD", "GBPUSD"))
api.Print(f"{parameter.Name} is optimized: {parameter.IsOptimized}")
```

## OptimizationSymbolParameter(string name, Symbol value)

Holds the parameter fixed at the given value.

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 OptimizationSymbolParameter(string name, Symbol value)
```

Python:

```python
OptimizationSymbolParameter(name: str, value: Symbol)
```

### Parameters

- `name` (`string`, Python `str`): The cBot parameter name.
- `value` (`Symbol`, Python `Symbol`): The fixed value.

Available since cAlgo.API 5.9.

### Examples

C#:

```csharp
var parameter = new OptimizationSymbolParameter("BaseSymbol", Symbols.GetSymbol("EURUSD"));
Print("{0} is fixed at {1}", parameter.Name, parameter.Value.Name);
```

Python:

```python
parameter = OptimizationSymbolParameter("BaseSymbol", api.Symbols.GetSymbol("EURUSD"))
api.Print(f"{parameter.Name} is fixed at {parameter.Value.Name}")
```

## OptimizationSymbolParameter(OptimizationSymbolParameter original)



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 OptimizationSymbolParameter(OptimizationSymbolParameter original)
```

Python:

```python
OptimizationSymbolParameter(original: OptimizationSymbolParameter)
```

### Parameters

- `original` (`OptimizationSymbolParameter`, Python `OptimizationSymbolParameter`):

Available since cAlgo.API 5.9.

