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

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

# IIndicatorsAccessor.ChaikinOscillator

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

## ChaikinOscillator(int shortTerm, int longTerm, MovingAverageType maType)

The Chaikin Oscillator indicator is the difference between two moving averages over the Chaikin Money Flow.

Environments: Desktop supported · CLI supported · Cloud supported.

C#:

```csharp
ChaikinOscillator ChaikinOscillator(int shortTerm, int longTerm, MovingAverageType maType)
```

Python:

```python
api.Indicators.ChaikinOscillator(shortTerm: int, longTerm: int, maType: MovingAverageType) -> ChaikinOscillator
```

### Parameters

- `shortTerm` (`int`, Python `int`): The fast moving average period
- `longTerm` (`int`, Python `int`): The slow moving average period
- `maType` (`MovingAverageType`, Python `MovingAverageType`): Moving Average Type

### Returns

`ChaikinOscillator` — ChaikinOscillator

### Examples

C#:

```csharp
var chaikinOscillator = Indicators.ChaikinOscillator(3, 10, MovingAverageType.Exponential);
Print("Chaikin Oscillator: {0}", chaikinOscillator.Result.Last(1));
```

Python:

```python
chaikinOscillator = api.Indicators.ChaikinOscillator(3, 10, MovingAverageType.Exponential)
api.Print(f"Chaikin Oscillator: {chaikinOscillator.Result.Last(1)}")
```

## ChaikinOscillator(Bars bars, int shortTerm, int longTerm, MovingAverageType maType)

The Chaikin Oscillator indicator is the difference between two moving averages over the Chaikin Money Flow.

Environments: Desktop supported · CLI supported · Cloud supported.

C#:

```csharp
ChaikinOscillator ChaikinOscillator(Bars bars, int shortTerm, int longTerm, MovingAverageType maType)
```

Python:

```python
api.Indicators.ChaikinOscillator(bars: Bars, shortTerm: int, longTerm: int, maType: MovingAverageType) -> ChaikinOscillator
```

### Parameters

- `bars` (`Bars`, Python `Bars`): The Bars that will be used by indicator, you can pass another timeframe/symbol bars
- `shortTerm` (`int`, Python `int`): The fast moving average period
- `longTerm` (`int`, Python `int`): The slow moving average period
- `maType` (`MovingAverageType`, Python `MovingAverageType`): Moving Average Type

### Returns

`ChaikinOscillator` — ChaikinOscillator

### Examples

C#:

```csharp
var dailyBars = MarketData.GetBars(TimeFrame.Daily);
var dailyChaikinOscillator = Indicators.ChaikinOscillator(dailyBars, 3, 10, MovingAverageType.Exponential);
Print("Daily Chaikin Oscillator: {0}", dailyChaikinOscillator.Result.Last(1));
```

Python:

```python
dailyBars = api.MarketData.GetBars(TimeFrame.Daily)
dailyChaikinOscillator = api.Indicators.ChaikinOscillator(dailyBars, 3, 10, MovingAverageType.Exponential)
api.Print(f"Daily Chaikin Oscillator: {dailyChaikinOscillator.Result.Last(1)}")
```

