Real-time relative strength scores for all 8 major currencies, delivered as lightweight JSON - built for MT4/MT5 Expert Advisors, Telegram bots, and custom trading dashboards.
Start free. Upgrade instantly with PayPal whenever you need more requests.
Test it in minutes
100 requests (lifetime)
Best for: Testing & prototyping
For live EAs & bots
10,000 requests / month
Best for: Live trading EAs & bots
For commercial products
Unlimited requests
Best for: Commercial products & high-volume use
Paid plans are billed once via PayPal for a fixed 30-day period and can be purchased from this page or your dashboard anytime.
Manually eyeballing eight currency pairs to figure out which currency is genuinely strong and which is genuinely weak is slow, error-prone, and impossible to automate. The Currency Strength Meter API solves this by doing the cross-pair math for you and returning a single, ranked strength score per currency in one API call - the same calculation that powers our live Currency Strength Meter, now available programmatically.
For algorithmic traders, this turns a subjective "which pair looks strong" judgment call into an objective, numeric filter your Expert Advisor or bot can act on instantly - no manual chart-flipping required. For indicator and bot developers, it means you can ship a currency-strength feature without building and maintaining your own real-time correlation engine across 28 pairs.
Because the response is small, cache-friendly JSON, it's fast enough to poll from an MT5 EA on every new bar, from a Python or Node.js backend on a schedule, or from a Telegram bot that only needs to alert you when two currencies diverge sharply.
Because the API is a standard RESTful service returning JSON, it can be called directly from an MQL5 Expert Advisor or indicator using the built-in WebRequest() function. A common pattern is to compare two currency scores and trigger an action - for example, sending a Telegram alert - once the gap between them crosses a threshold you define.
// Example: alert when EUR and USD strength diverge by 4+ points
double eur = strength["EUR"];
double usd = strength["USD"];
if (MathAbs(eur - usd) >= 4.0) {
// Trade logic or Telegram WebRequest() alert here
}Before WebRequest() calls will succeed in the MetaTrader terminal, add https://www.currencystrengthsmeters.com to the allowed URL list under Tools → Options → Expert Advisors.
GET https://www.currencystrengthsmeters.com/api/v1/strengthPass your API key in an X-API-KEY header with every request. Keys are issued from your dashboard after signing up.
{
"success": true,
"data": {
"AUD": 10,
"CAD": 80,
"CHF": 100,
"EUR": 90,
"GBP": 50,
"JPY": 100,
"NZD": 30,
"USD": 100
}
}| Status | Meaning |
|---|---|
| 401 | Missing, invalid, or revoked API key |
| 403 | No active subscription, or plan has expired |
| 429 | Request limit reached for your current plan |
| 500 | Unexpected server error - safe to retry |
A single JSON object with a relative strength score (0-100) for each of the 8 major currencies - USD, EUR, GBP, JPY, CHF, AUD, CAD, and NZD - calculated from real-time price action across 28 major, minor, and cross pairs.
Every request must include an X-API-KEY header with the API key generated from your dashboard after signing up. Requests without a valid key return a 401 Unauthorized response.
Strength scores are recalculated continuously from live market data, so each request reflects current market conditions rather than a cached or delayed snapshot.
Yes. The API is a standard RESTful JSON endpoint, which MQL5's WebRequest() function can call directly. You'll need to whitelist the API domain in your terminal's Tools > Options > Expert Advisors settings before WebRequest() calls will succeed.
The API returns a 429 status code with an explanatory error message. Free trial users need to upgrade to a paid plan to continue; Pro subscribers can upgrade to Unlimited, or wait for their next 30-day billing cycle to reset.
Each paid plan runs for a fixed 30-day period from the date of payment through PayPal. Your dashboard shows your renewal date, and you can pay again before or after it expires to continue uninterrupted access.
Your account automatically reverts to the Free plan's limits until you renew. Your API key stays the same - it isn't revoked when a plan expires.
Plans are enforced as a request cap (100 lifetime on the free trial, 10,000/month on Pro, unlimited on the Unlimited plan). There's no strict per-second throttle, but please poll at a reasonable interval (e.g. once every 30-60 seconds) rather than in a tight loop.
Yes, the Unlimited plan is designed for exactly this use case - commercial products or multi-user indicator distributions where request volume can't be predicted in advance.
Open your dashboard and click 'Regenerate key'. Your old key is revoked immediately and a new one is issued - just update it in your EA, bot, or app.