Signals
Williams %R
Read momentum on a -100 to 0 overbought and oversold scale.
What it is
Williams %R is a momentum oscillator on a -100 to 0 scale. It is closely related to the Stochastic oscillator and is often used to spot overbought and oversold swings.
When to use it
- Monitoring mean-reversion setups in range-bound markets.
- Comparing oscillator extremes across several liquid ETFs or large-cap names.
- Checking whether a rally has become stretched before chasing momentum higher.
The maths
%R = -100 × (highest_high(N) - close) / (highest_high(N) - lowest_low(N)) The range is -100 to 0.
What it tells you
Readings above -20 signal overbought conditions, while readings below -80 signal oversold conditions. It is similar to Stochastic but shown on an inverted scale, which makes it useful for spotting short-term reversal points.
REST example
python
import os
import requests
response = requests.get(
'https://api.financedata.com/v1/signals/WILLR/SPY',
params={'start_date': '2025-01-01', 'end_date': '2025-04-30', 'period': 14},
headers={'X-API-Key': os.environ['FDA_KEY']},
timeout=30,
)
response.raise_for_status()
print(response.json())MCP example
Tool call body
{
"name": "run_signals",
"arguments": {
"symbols": ["SPY"],
"signal_names": ["WILLR"],
"start_date": "2025-01-01",
"end_date": "2025-04-30",
"signal_parameters": {
"WILLR": { "period": 14 }
}
}
}Williams %R uses run_signals on the MCP side today, which keeps it easy to batch with RSI or STOCH in the same request.
Agent prompt that triggers it
Compute Williams %R for SPY and tell me whether the latest reading looks overbought, oversold, or comfortably mid-range.