How the currency strength matrix is calculated
Read each row as the base currency and each column as the quote currency. A positive EUR/USD cell means the euro rose in dollar terms over the provider reference period. Percentage returns make differently priced pairs comparable in units; they do not make different time windows comparable.
- Recover the baseline: reference price = current price − reported price change. Return = 100 × change / reference price. Non-finite values and non-positive prices or baselines are excluded.
- Handle the direction: if the pair return is r percent, its inverse is −r / (1 + r / 100). When both directions are supplied, the alphabetically ordered symbol is preferred; otherwise its reverse is used. Both cells use that one source.
- Average the basket: sum the valid returns against the other seven listed currencies and divide by its available pair count. Each counterpart has one equal weight; other currencies are excluded.
- Scale the result: score = 100 × (average − minimum average) / (maximum average − minimum average). Equal averages all receive 50. No usable pairs means no rank, not a neutral observation.
The scale is relative to this snapshot. A score of 100 can occur during a small market move. Missing quotes change basket weights, so compare coverage before comparing ranks. A partial basket is not equivalent to a complete seven-pair average.
A three-currency worked example
Hypothetical arithmetic only: at one common reference time, EUR/USD, GBP/USD, and EUR/GBP each equal 1. At one common later time, EUR/USD is 1.10, GBP/USD is 1.05, and EUR/GBP is 1.10 / 1.05. The example uses only three currencies so every value can be checked.
| Base | EUR quote | GBP quote | USD quote | Average | Score |
|---|---|---|---|---|---|
| EUR | N/A | +4.7619% | +10.0000% | +7.3810% | 100 |
| GBP | −4.5455% | N/A | +5.0000% | +0.2273% | 50 |
| USD | −9.0909% | −4.7619% | N/A | −6.9264% | 0 |
The EUR average is (10 + 4.7619) / 2 = 7.3810%. USD/EUR falls 9.0909%, not 10%, because its starting and ending quotes are reciprocals. GBP receives 50 here because its average lies at the midpoint of the other two averages, not because its return is zero. Calculations use unrounded values; the table rounds for display.
Check the time window before comparing with TradingView
This page requests FMP quote data through the Pineify API. It does not simulate prices or replace failed requests with sample data. The browser refreshes every five minutes while open; the API currently caches these requests for 30 seconds. Neither interval defines the return window. The calculation inherits the provider reported change baseline and cannot verify aligned reference timestamps from price and change alone.
A historical currency relative strength indicator needs a fixed basket, a defined lookback, and aligned price observations for every bar. This tool does not fetch those histories or backtest a basket. Current quotes also need not match a TradingView broker feed. A stale quote can make a precise-looking score misleading.
- Specify all symbols and their providers, a common timeframe, and an exact baseline such as the close 20 completed hourly bars earlier.
- Choose whether missing data removes the whole observation or changes the divisor. Do not silently replace a missing return with zero.
- Separate developing bars from confirmed bars. Higher-timeframe requests need explicit confirmation and lookahead handling to avoid using future data.
- Check one direct pair, its inverse, the row average, and the normalized score on the same bar before defining entries, exits, spread, and costs.
TradingView documents how request.security() selects symbol and timeframe contexts and how gaps and lookahead affect returned data. Those settings must be specified when building the historical version; a current ranking alone is not a trading strategy.
Sources and further checks
Reviewed October 17, 2026. The formulas and hypothetical matrix are shown here for independent calculation.
- FMP Full Forex Quote API: current pair prices and changes.
- TradingView: other timeframes and data: requested contexts, missing data, and lookahead behavior.
- TradingView indicator guides: related calculation and chart checks.