mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-08-25 05:48:06 +00:00
Afirma + documentation
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
## ALMA: Arnaud Legoux Moving Average
|
||||
|
||||
### Concept
|
||||
|
||||
ALMA is a moving average designed to reduce the lag of traditional moving averages while maintaining smoothness. It uses a Gaussian distribution to weight the price data, allowing for greater flexibility in balancing smoothness and responsiveness.
|
||||
|
||||
### Origin
|
||||
|
||||
ALMA was developed by *Arnaud Legoux and Dimitrios Kouzis-Loukas*, introduced in 2009. It was created to address the limitations of traditional moving averages, particularly the lag issue in trend identification and signal generation.
|
||||
|
||||
### Key Features
|
||||
|
||||
1. **Gaussian Distribution**: Uses a Gaussian (normal) distribution to weight price data, concentrating the most weight around a specific point.
|
||||
2. **Offset Parameter**: Allows shifting the Gaussian distribution to the left or right, affecting the lag and responsiveness.
|
||||
3. **Sigma Parameter**: Controls the width of the Gaussian distribution, affecting the smoothness of the average.
|
||||
4. **Lag Reduction**: Designed to minimize lag while maintaining a smooth output.
|
||||
|
||||
### Usage
|
||||
|
||||
1. **Trend Identification**: ALMA can identify trends more quickly than traditional moving averages due to its reduced lag.
|
||||
2. **Signal Generation**: Crossovers between ALMA and price, or between different ALMA settings, can generate trading signals.
|
||||
3. **Support and Resistance**: ALMA can act as dynamic support and resistance levels.
|
||||
4. **Smoothing Price Action**: Useful for smoothing noisy price data while preserving important trend information.
|
||||
|
||||
### Advantages
|
||||
|
||||
- Reduces lag compared to simple and exponential moving averages.
|
||||
- Highly customizable through its offset and sigma parameters.
|
||||
- Can be tuned to be more responsive or more smooth based on trading preferences.
|
||||
- Potentially more effective in capturing short-term price movements.
|
||||
|
||||
### Considerations
|
||||
|
||||
- **Offset Parameter**: Ranges from 0 to 1, determining the distribution's center of weight.
|
||||
- 0 results in a simple moving average (more lag, very smooth).
|
||||
- 1 creates a weighted average focused on the most recent prices (less lag, less smooth).
|
||||
- 0.85 is often used as a default, balancing lag reduction and smoothness.
|
||||
|
||||
- **Sigma Parameter**: Controls the Gaussian distribution's width.
|
||||
- Lower values create a narrower distribution, focusing on fewer price bars.
|
||||
- Higher values create a wider distribution, incorporating more price bars.
|
||||
- 6 is often used as a default value.
|
||||
|
||||
- **Period**: As with other moving averages, determines how many price bars are included in the calculation.
|
||||
|
||||
- **Balancing Responsiveness and Stability**:
|
||||
- Adjusting offset and sigma allows fine-tuning between quick response to price changes and stability in noisy markets.
|
||||
- Higher offset and lower sigma increase responsiveness but may lead to more false signals in volatile markets.
|
||||
- Lower offset and higher sigma increase smoothness but may introduce more lag.
|
||||
|
||||
- **Computational Complexity**: More complex to calculate than simple moving averages, which may be a consideration in high-frequency trading systems.
|
||||
|
||||
- **Interpretation**: Due to its unique weighting system, ALMA may behave differently from traditional moving averages in certain market conditions, requiring careful interpretation.
|
||||
Reference in New Issue
Block a user