# Percentage Price Oscillator (PPO)

> QuantNexus indicator page for normalized moving-average spread.

**Route**: `/quantnexus/indicators/ppo/`

## What It Does

PPO measures the percentage difference between two moving averages.

## Formula

`PPO = ((EMA(period1) - EMA(period2)) / EMA(period2)) * 100`

## Parameters

- `period1` - default `12`
- `period2` - default `26`
- `_movav` - default `ExponentialMovingAverage`
- `period_signal` - default `9`

## C++23 API

```cpp
#include <nonabt/indicators/ppo.hpp>
auto ppo = std::make_unique<nonabt::PPO>(data().close(), 12, 26, "ExponentialMovingAverage", 9);
```

## Common Usage

- Use the signal line for crossover entries and exits.
- Compare spread across assets with different price scales.
- Pair it with trend confirmation or momentum filters.
