---
id: "T:cAlgo.API.ChartElliottWaveBase"
kind: "interface"
namespace: "cAlgo.API"
url: "https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartElliottWaveBase/"
---

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

# ChartElliottWaveBase (interface)

Represents the shared options of the Elliott Wave chart objects. An Elliott Wave is an ordered list of labelled pivots joined by a polyline; the wave degree drives the label notation.

Environments: Desktop supported · CLI works differently · Cloud works differently.

- CLI: Created and kept with all its properties, but never drawn: the CLI displays no chart.
- Cloud: Created and kept with all its properties, but never drawn: the cloud displays no chart.

## Definition

```csharp
public interface ChartElliottWaveBase
```

Available since cAlgo.API 5.10.

## Examples

C#:

```csharp
foreach (var wave in Chart.FindAllObjects<ChartElliottWaveBase>())
{
    wave.Degree = ChartElliottWaveDegree.Intermediate;
    wave.ShowLabels = true;
    Print("Elliott wave: {0} | Type: {1} | Degree: {2}", wave.Name, wave.ObjectType, wave.Degree);
}
```

Python:

```python
wave = api.Chart.DrawElliottCorrection("correction", ChartPoint(api.Bars.OpenTimes.Last(40), api.Bars.HighPrices.Last(40)), ChartPoint(api.Bars.OpenTimes.Last(30), api.Bars.LowPrices.Last(30)), ChartPoint(api.Bars.OpenTimes.Last(20), api.Bars.HighPrices.Last(20)), ChartPoint(api.Bars.OpenTimes.Last(10), api.Bars.LowPrices.Last(10)), Color.Blue)
wave.Degree = ChartElliottWaveDegree.Intermediate
wave.ShowLabels = True
api.Print(f"Elliott wave: {wave.Name} | Type: {wave.ObjectType} | Degree: {wave.Degree}")
```

## Properties

- `Color Color {get; set;}` — Gets or sets the chart object lines color. [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartElliottWaveBase/Color/index.md)
- `ChartElliottWaveDegree Degree {get; set;}` — Gets or sets the wave degree that drives the label notation and default color. [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartElliottWaveBase/Degree/index.md)
- `LineStyle LineStyle {get; set;}` — Gets or sets the chart object lines style. [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartElliottWaveBase/LineStyle/index.md)
- `bool ShowLabels {get; set;}` — Gets or sets a value indicating whether the wave labels are displayed. Default is true. [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartElliottWaveBase/ShowLabels/index.md)
- `int Thickness {get; set;}` — Gets or sets the chart object lines thickness. [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartElliottWaveBase/Thickness/index.md)

## Inherited members

- `string Name {get;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/Name/index.md)
- `string Comment {get; set;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/Comment/index.md)
- `ChartObjectType ObjectType {get;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/ObjectType/index.md)
- `bool IsInteractive {get; set;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/IsInteractive/index.md)
- `bool IsLocked {get; set;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/IsLocked/index.md)
- `bool IsHidden {get; set;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/IsHidden/index.md)
- `int ZIndex {get; set;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/ZIndex/index.md)
- `bool IsAlive {get;}` (from ChartObject) [details](https://help.ctrader.com/ctrader-algo/references/Chart/Drawings/ChartObject/IsAlive/index.md)

