# Бестрендовый ценовой осциллятор (DPO)

> Страница индикатора StratCraft для DPO.

**Route**: `/indicators/dpo/`

## Что он делает

DPO устраняет влияние долгосрочного тренда, помогая выявить циклические движения и краткосрочные точки разворота.

## Формула

`DPO = Цена - центрированная скользящая средняя`

## Параметры

- `period` - по умолчанию `20`
- `movav` - по умолчанию `MovingAverageSimple`

## C++23 API

```cpp
#include <nonabt/indicators/dpo.hpp>
auto dpo = std::make_unique<nonabt::DPO>(data().close(), 20, "MovingAverageSimple");
```

## Типичное использование

- Используйте DPO для идентификации циклических колебаний.
- Сочетайте его с уровнями поддержки/сопротивления или правилами тайминга.
- Полезен для систем возврата к среднему (mean-reversion).

## Практический паттерн

Положительные значения DPO могут указывать на то, что цена находится выше своей центрированной средней, а отрицательные — на обратное.
