---
id: "M:cAlgo.API.Internals.IIndicatorsAccessor.UltimateOscillator(System.Int32,System.Int32,System.Int32)"
kind: "method"
type: "T:cAlgo.API.Internals.IIndicatorsAccessor"
url: "https://help.ctrader.com/ctrader-algo/references/Indicators/IIndicatorsAccessor/UltimateOscillator/"
---

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

# IIndicatorsAccessor.UltimateOscillator

Member of [IIndicatorsAccessor](https://help.ctrader.com/ctrader-algo/references/Indicators/IIndicatorsAccessor/index.md).

## UltimateOscillator(int cycle1, int cycle2, int cycle3)

Returns the Ultimate Oscillator indicator instance.

Environments: Desktop supported · CLI supported · Cloud supported.

C#:

```csharp
UltimateOscillator UltimateOscillator(int cycle1, int cycle2, int cycle3)
```

Python:

```python
api.Indicators.UltimateOscillator(cycle1: int, cycle2: int, cycle3: int) -> UltimateOscillator
```

### Parameters

- `cycle1` (`int`, Python `int`): The value of the short periods used for calculation.
- `cycle2` (`int`, Python `int`): The value of the medium periods used for calculation.
- `cycle3` (`int`, Python `int`): The value of the long periods used for calculation.

### Returns

`UltimateOscillator` — UltimateOscillator indicator instance

### Examples

C#:

```csharp
var ultimateOscillator = Indicators.UltimateOscillator(7, 14, 28);
Print("Ultimate Oscillator: {0}", ultimateOscillator.Result.LastValue);
```

Python:

```python
ultimateOscillator = api.Indicators.UltimateOscillator(7, 14, 28)
api.Print(f"Ultimate Oscillator: {ultimateOscillator.Result.LastValue}")
```

## UltimateOscillator(Bars bars, int cycle1, int cycle2, int cycle3)

Returns the Ultimate Oscillator indicator instance.

Environments: Desktop supported · CLI supported · Cloud supported.

C#:

```csharp
UltimateOscillator UltimateOscillator(Bars bars, int cycle1, int cycle2, int cycle3)
```

Python:

```python
api.Indicators.UltimateOscillator(bars: Bars, cycle1: int, cycle2: int, cycle3: int) -> UltimateOscillator
```

### Parameters

- `bars` (`Bars`, Python `Bars`): The Bars that will be used by indicator, you can pass another timeframe/symbol bars
- `cycle1` (`int`, Python `int`): The value of the short periods used for calculation.
- `cycle2` (`int`, Python `int`): The value of the medium periods used for calculation.
- `cycle3` (`int`, Python `int`): The value of the long periods used for calculation.

### Returns

`UltimateOscillator` — UltimateOscillator indicator instance

### Examples

C#:

```csharp
var dailyBars = MarketData.GetBars(TimeFrame.Daily);
var dailyUltimateOscillator = Indicators.UltimateOscillator(dailyBars, 7, 14, 28);
Print("Daily Ultimate Oscillator: {0}", dailyUltimateOscillator.Result.LastValue);
```

Python:

```python
dailyBars = api.MarketData.GetBars(TimeFrame.Daily)
dailyUltimateOscillator = api.Indicators.UltimateOscillator(dailyBars, 7, 14, 28)
api.Print(f"Daily Ultimate Oscillator: {dailyUltimateOscillator.Result.LastValue}")
```

