Direct answer: what is a worked example of CMO?
A worked example of CMO shows the exact steps for calculating the Chande Momentum Oscillator from a short sequence of price changes. It uses chosen inputs (a lookback length and a set of price values), then computes each intermediate quantity so you can independently reproduce the final CMO value.
Mechanism: definition and the calculation inputs
CMO is a momentum oscillator that summarizes recent directional movement by contrasting “up” momentum versus “down” momentum over a fixed number of periods.
A common formulation uses a lookback window of length N and computes:
- UpSum = sum of positive price changes over the last N periods
- DownSum = sum of absolute values of negative price changes over the last N periods
- CMO = 100 × (UpSum − DownSum) ÷ (UpSum + DownSum)
Price change assumption. In a worked example, you must pick what “price” means (for example, the close) and how you form changes:
- Change at step t = Price[t] − Price[t−1]
- Positive changes contribute to UpSum
- Negative changes contribute to DownSum as absolute magnitude
Worked numerical example (fully transparent assumptions)
Assumptions for this example:
- We use close prices (any single price series is fine for demonstration).
- We use N = 5 periods.
- The price list below is the only data used; there is no real-time update.
- We compute changes as difference between consecutive closes.
Example price series (6 closes to create 5 changes):
- Price[0] = 100
- Price[1] = 102
- Price[2] = 101
- Price[3] = 105
- Price[4] = 103
- Price[5] = 106
Step 1: compute the 5 changes
- c1 = 102 − 100 = +2
- c2 = 101 − 102 = −1
- c3 = 105 − 101 = +4
- c4 = 103 − 105 = −2
- c5 = 106 − 103 = +3
Step 2: compute UpSum and DownSum
- UpSum = (+2) + (+4) + (+3) = 9
- DownSum = |−1| + |−2| = 3
Step 3: compute CMO
- CMO = 100 × (UpSum − DownSum) ÷ (UpSum + DownSum)
- CMO = 100 × (9 − 3) ÷ (9 + 3)
- CMO = 100 × 6 ÷ 12 = 50
So, with these exact assumptions and these exact inputs, the worked-example result is CMO = 50.
Limitations and risks (what can fail and why)
- Window length (N) changes the output. If you choose a different lookback window, UpSum and DownSum are computed from a different set of changes, so CMO will change even if the underlying trend is similar.
- Noise and whipsaws in the underlying series. In choppy movement, small alternating up/down changes can keep UpSum and DownSum closer together, making the oscillator fluctuate in a way that may not reflect directional strength.
- Edge cases in computation. If UpSum + DownSum = 0 (for example, when all changes are zero in the window), the formula has a division-by-zero problem. Some implementations handle this differently (e.g., returning zero), so you must check how a specific calculator defines behavior in that case.
- Data-definition mismatch. Different platforms may use slightly different inputs (e.g., close vs typical price) or rounding conventions. Your ability to independently verify depends on using the same definition.
Verification and next question to ask
To verify any CMO number, replicate the same steps:
- Use the same price series definition (e.g., close).
- Use the same lookback length N.
- Compute each consecutive change.
- Split changes into positives (UpSum) and negative magnitudes (DownSum).
- Apply the formula and check arithmetic, including division-by-zero handling.
A useful next question is: “What exact price input and lookback definition does the indicator implementation use, and how does it handle the UpSum + DownSum = 0 case?”
You can also compare results by recalculating CMO from the same dataset with two different N values to see how sensitive the oscillator is to the window choice.