Moving averages are a fundamental technical indicator that smooths out price data to reveal trends, aiding traders in making informed decisions. There are different types of moving averages. Some of them are listed here.

## Simple Moving Average

A Simple Moving Average (SMA) is a widely used technical indicator that calculates the average of a financial instrument's closing prices over a specified period. It's calculated using this formula:

`SMA = (Sum of Closing Prices for N Periods) / N`

## Exponential Moving Average

An Exponential Moving Average (EMA) is a popular technical indicator that, like the Simple Moving Average (SMA), helps traders identify trends and potential reversal points in financial instruments. The EMA, however, gives more weight to recent price data, making it more responsive to current market conditions. It's calculated using this formula:

`EMA = (Closing Price - Previous EMA) x (2 / (N + 1)) + Previous EMA`

## Rolling Moving Average

The Rolling Moving Average, sometimes referred to as "Smoothed Moving Average", gives the recent prices most weighting, though the historic prices are also weighted, each given less weighting further back in time. The latest Rolling Average is obtained by multiplying the previous Rolling Average by n-1 periods, adding current price, and then dividing the total by n periods. Note that the initial RMA is based on a Simple Moving Average.

`RMA = (RMA(t-1) * (n-1) + Closing Price) / n`

## Weighted Moving Average

The Weighted Moving Average (WMA) is a type of moving average that assigns different weights to different data points. It gives more importance to recent data, making it more responsive to price changes. The formula for WMA is:

`WMA = (P1 * W1 + P2 * W2 + ... + Pn * Wn) / (W1 + W2 + ... + Wn)`

Where:

- WMA is the Weighted Moving Average.
- P1, P2, ..., Pn are the prices of the data points.
- W1, W2, ..., Wn are the weights assigned to the corresponding data points.

## Hull Moving Average

The Hull Moving Average (HMA) is a technical indicator that reduces the lag of traditional moving averages while retaining the smoothness of the moving average line. It does this by using a weighted average of three moving averages, with the weights chosen to reduce lag.

The formula for the HMA is:

```
HMA = WMA(WMA(WMA(close, n / 2) * 2 - WMA(close, n), sqrt(n)), sqrt(n))
```

where:

`close`

is the closing price of the security`n`

is the period of the HMA`WMA`

is the weighted moving average

To calculate the HMA, you first need to calculate the weighted moving average of the closing price over half the specified period. Then, you need to multiply this result by two and subtract the weighted moving average of the closing price over the full specified period. Next, you need to calculate the square root of the specified period. Finally, you need to calculate the weighted moving average of this result over the square root of the specified period.

The HMA is typically used to identify trends and to generate trading signals. When the HMA crosses above the closing price, it is considered a bullish signal. When the HMA crosses below the closing price, it is considered a bearish signal.

**Double Exponential Moving Average (DEMA)**

The double exponential moving average (DEMA) is a technical indicator that reduces the lag of traditional exponential moving averages (EMAs), making it more responsive. It does this by using a weighted average of two EMAs.

`DEMA = 2 * EMA(EMA(close, n), n) - EMA(close, n)`

where:

`close`

is the closing price of the security`n`

is the period of the DEMA

To calculate the DEMA, you first need to calculate the EMA of the closing price over the specified period. Then, you need to calculate the EMA of the EMA of the closing price over the same period. Finally, you need to multiply the EMA of the EMA of the closing price by two and subtract the EMA of the closing price.

The DEMA is typically used to identify trends and to generate trading signals. When the DEMA crosses above the closing price, it is considered a bullish signal. When the DEMA crosses below the closing price, it is considered a bearish signal.

**Triple Exponential Moving Average (TEMA)**

The Triple Exponential Moving Average (TEMA) is a technical indicator that reduces the lag of traditional exponential moving averages (EMAs) by taking multiple EMAs of the original EMA and subtracting out some of the lag. This results in an indicator that is more responsive to price changes and can provide earlier trading signals.

```
TEMA = 3 * EMA(EMA(EMA(close, n), n), n) - 3 * EMA(EMA(close, n), n) + EMA(close, n)
```

where:

`close`

is the closing price of the security`n`

is the period of the TEMA

To calculate the TEMA, you first need to calculate the EMA of the closing price over the specified period. Then, you need to calculate the EMA of the EMA of the closing price over the same period. Finally, you need to calculate the EMA of the EMA of the EMA of the closing price over the same period. Finally, you need to multiply the EMA of the EMA of the EMA of the closing price by three, multiply the EMA of the EMA of the closing price by three, subtract the two, and add the EMA of the closing price.

The TEMA is typically used to identify trends and to generate trading signals. When the TEMA crosses above the closing price, it is considered a bullish signal. When the TEMA crosses below the closing price, it is considered a bearish signal.

**Zero Lag Exponential Moving Average**

The Zero Lag Exponential Moving Average (ZLEMA) is a technical indicator that aims to reduce the lag of traditional exponential moving averages (EMAs) by de-lagging the closing price data before calculating the EMA. This results in an indicator that is more responsive to price changes and can provide earlier trading signals.

```
ZLEMA = EMA(close - lag, n)
```

where:

`close`

is the closing price of the security`lag`

is the number of periods to de-lag the closing price data`n`

is the period of the ZLEMA

**Arnaud Legoux Moving Average (ALMA)**

The Arnaud Legoux Moving Average (ALMA) is a technical indicator that reduces the lag of traditional moving averages and is less noisy. It does this by using a weighted average of two moving averages, one calculated from left to right and the other from right to left.

`ALMA = (EMA(close, n) + EMA(close[::-1], n)) / 2`

where:

`close`

is the closing price of the security`n`

is the period of the ALMA`[::-1]`

reverses the order of the closing prices

To calculate the ALMA, you first need to calculate the EMA of the closing price over the specified period. Then, you need to reverse the order of the closing prices and calculate the EMA of the reversed closing prices over the same period. Finally, you need to average the two EMAs.

The ALMA is typically used to identify trends and to generate trading signals. When the ALMA crosses above the closing price, it is considered a bullish signal. When the ALMA crosses below the closing price, it is considered a bearish signal.

**Adaptive Moving Average (AMA)**

The Adaptive Moving Average (AMA) is a technical indicator that adapts to the volatility of the market, making it more responsive to price changes. It does this by using a weighted average of two exponential moving averages (EMAs), with the weights determined by the volatility of the market.

The formula for the AMA is:

`AMA = (EMA(close, fastPeriod) * EMA(ATR, slowPeriod)) / (EMA(ATR, slowPeriod) + EMA(close, fastPeriod))`

where:

`close`

is the closing price of the security`fastPeriod`

is the period of the fast EMA`slowPeriod`

is the period of the slow EMA`ATR`

is the Average True Range

The AMA is typically used to identify trends and to generate trading signals. When the AMA crosses above the closing price, it is considered a bullish signal. When the AMA crosses below the closing price, it is considered a bearish signal.

**Triangular Moving Average**

The Triangular Moving Average (TMA) is a technical indicator that reduces the lag of traditional moving averages and is less noisy. It does this by using a weighted average of the closing prices over the specified period, with the weights assigned in a triangular shape.

The formula for the TMA is:

```
TMA = (close[0] + 2 * close[1] + 3 * close[2] + ... + n * close[n-1]) / (n * (n + 1) / 2)
```

where:

`close`

is the closing price of the security`n`

is the period of the TMA

To calculate the TMA, you first need to sum the closing prices over the specified period, with each closing price multiplied by its corresponding weight. Then, you need to divide this sum by the product of the period and the next integer greater than the period divided by two.

The TMA is typically used to identify trends and to generate trading signals. When the TMA crosses above the closing price, it is considered a bullish signal. When the TMA crosses below the closing price, it is considered a bearish signal.