Measuring Momentum: 50/100/250-Day MAs, Velocity & Acceleration
Part 2 on how to translate momentum into signals for my long/short trading strategy
This is part 2 of my series — Building & Scaling Algorithmic Trading Strategies
Intro
In the last post I laid out what I’m building: a leveraged long/short strategy for an index, designed to ride trends when they’re strong and flip (or step aside) when they fade. This post focuses on one of the core ideas: using moving averages (MAs) as more than just trend filters — instead, as measures of movement speed and change of speed (velocity & acceleration).
Because I want this to be concrete, I’ll reference data from SPY as an example. We won’t get into full code yet, but the logic should be clear enough for you to see how it fits into the system.
Why 50, 100 and 250 days?
Here’s how I’m thinking about these three look-back lengths:
The 50-day MA: This is the short-to-medium term sample. It reacts fairly quickly to price shifts, so it gives me a sense of recent momentum.
The 100-day MA: Mid‐term. It smooths out more of the noise and starts to reflect more sustained direction rather than short bursts.
The 250-day MA: A longer trend horizon (roughly one trading year). It shows the broader structural trend.
Using all three gives me a multi-timeframe view of trend strength. If the 50 is far above the 100, and the 100 is above the 250, I’m seeing a strong trend that’s been building. If those relationships compress or invert, I interpret that as momentum fading or reversing.
Bear in mind -- in reality, I might end up using MA54, MA102, and MA225. These are just directional envelopes for you to consider.
Current Example: SPY as of Now
Let’s take actual SPY numbers: MA50: 671.98, MA100: 668.95, MA250: 669.09
Interpretation:
The short-term trend (50 vs 100) is slightly positive, meaning the recent trend is still marginally above the medium-term baseline.
The medium-term vs long-term (100 vs 250) spread is slightly negative, meaning the mid-trend is flattening relative to the long trend.
That combination — small positive short-term velocity but neutral-to-negative mid/long — often shows up near potential inflection zones. It’s what I’d call a neutral momentum state: neither strong uptrend nor clear reversal, but compression.
When the short-term spread (3.03 here) expands consistently over a few sessions, it signals the trend is picking up pace.
If it contracts, that’s deceleration — a warning that the market is losing momentum.
Acceleration (i.e., is the trend speeding up or slowing down?)
Acceleration is simply the change in velocity — i.e., how the spread changes over time.
If last week the Spread (50-100) was +5 and now it’s +3, acceleration is negative — the uptrend is still there, but it’s slowing down.
If it was +1 and now it’s +3, acceleration is positive — momentum is building.
I track these changes daily (or weekly averages of daily changes) to determine whether to hold, increase exposure, or scale down.
In SPY’s case, the spreads are tight and relatively flat — meaning acceleration is basically near zero. That fits what we’re seeing in the chart: the index grinding sideways after a run-up, waiting for new direction.
Practical Interpretation
For my implementation:
Positive spread and positive acceleration → trend gaining speed → potential long bias (levered if volatility allows).
Positive spread but negative acceleration → trend tiring → reduce exposure.
Negative spread with negative acceleration → trend breaking down → short bias or flat.
Mixed (like SPY now) → neutral stance until trend reestablishes.
With SPY’s current MAs, the takeaway is simple:
The short-term trend is still slightly above the mid-term, but both are converging toward the long-term line. That’s not what strong rallies look like so it’s probably just consolidation.
For a leveraged strategy, this kind of environment is exactly where I avoid using full leverage. The payoff of getting it right is small, and the cost of a reversal is large.
Normalizing for Scale
A raw difference of 3 points between MAs on a $670 index is only about 0.45%.
To compare across assets or time periods, I normalize spreads as percentages of the longer MA:
Velocity (50-100) = (MA50 – MA100) / MA100 = 3.03 / 668.95 ≈ 0.45%
Velocity (100-250) = (MA100 – MA250) / MA250 = -0.14 / 669.09 ≈ -0.02%
This tells me the short-term trend is up only half a percent faster than the medium-term one — very weak momentum.
The mid-long structure is basically flat.
In the model, I might define something like:
Strong uptrend: > +1%
Weak trend: ±0.5%
Converging trend: near 0%
SPY sits right on that boundary, so my system would likely mark this period as “no trade” or “low leverage hold.”
My Rationale....
I’m not using moving averages as traditional “buy/sell crossovers.”
Instead, I’m using them to measure how trends behave in space and time.
Velocity = the distance between trend lines (speed of movement)
Acceleration = how fast that distance is changing (energy in the move)
The point isn’t to predict reversals but to identify when a trend is strong enough to bet on or weak enough to step aside.
Leverage amplifies both outcomes, so I think it’s better to enter when acceleration is building, not just when the trend is up.
And as I mentioned in my first post, one of my goals is also to have a decent Sharpe ratio. Entering when acceleration is building (vs. when the trend is up) is also a good way to minimize risk (but it does leave $$ on the table).
Summary
With SPY’s current setup:
50-day = 671.98
100-day = 668.95
250-day = 669.09
The short-term is slightly above both mid and long terms, but the spreads are minimal.
That means the market’s directional velocity is low, and acceleration is near zero — a wait-and-watch environment, not a full-throttle trend.
For my bot, that translates to: stay neutral or lightly positioned, and wait for velocity and acceleration to expand before taking on leverage.
The information presented in Math & Markets is not investment or financial advice and should not be construed as such.



What does '4. other' mean?
What are the SPY backtest results with those rules, Strong uptrend: > +1%, Weak trend: ±0.5% and Converging trend: near 0%?