Get Cross-Rates for minor Currencies
How is it possible to get the prices of minor currencies, that are not available directly from our web-service/api ?
Live-Rates.com's public feed covers the major currency pairs, but subscribers routinely ask how to price minor crosses such as MYR/CNY or SGD/GBP that are not quoted directly. The answer is a one-step arithmetic derivation from a shared reference currency, most often the US dollar or the euro.
The technique below turns any two dollar-based quotes already available on the webservice into a synthetic cross-rate, without requiring a new endpoint or a separate data source.
Key takeaways
- Minor cross-rates such as MYR/CNY are not published directly on the Live-Rates webservice.
- Any missing cross can be derived from two pairs that share a common base, typically USD or EUR.
- The formula is a simple division: quote currency rate divided by base currency rate.
- Using today's feed, USD/CNY 6.8421 divided by USD/MYR 4.14611 yields roughly 1.65 MYR/CNY.
- The same approach extends to any pair, including SGD/GBP, whenever both legs are available against a common reference.
Why Minor Cross-Rates Are Not Published Directly
The Live-Rates Webservice focuses on the most liquid quotes. Pairs such as MYR/CNY or SGD/GBP are not exposed as standalone symbols, which is the single most common question received through Live-Chat and email support.
Rather than adding every possible permutation as a separate feed, the service exposes each currency against a widely traded reference. That keeps the API compact while still allowing every cross to be reconstructed on the client side.
The Reference-Currency Method
The idea is straightforward: pick a reference currency that is quoted against both legs of the desired cross — in most cases USD, sometimes EUR — and combine those two quotes. Because both legs share the same base, the reference cancels out and the remaining ratio is the cross-rate.
When to Use USD vs. EUR
USD is the default reference because it is quoted against the widest set of currencies on the webservice. EUR works equally well whenever both target currencies have a euro-based quote available.
Worked Example: MYR/CNY
MYR/CNY, and any other cross with MYR as the base, is not provided directly. That does not prevent it from being calculated.
Using the reference pair USD/MYR (available on the webservice) together with USD/CNY, today's feed returns:
{"currency":"USD/MYR","rate":4.14611}
{"currency":"USD/CNY","rate":6.8421}The MYR/CNY price is then simply:
6.84 / 4.15 = 1.65 MYR/CNY
Generalising the Formula
For any cross AAA/BBB derived from a shared reference REF, the calculation is REF/BBB divided by REF/AAA. The same pattern that produced MYR/CNY applies equally to SGD/GBP or any other minor pair whose two legs are both quoted against USD or EUR on the webservice.
FAQ
Why can't I get MYR/CNY or SGD/GBP directly from the API?
These minor cross-rates are not exposed as standalone symbols on the Live-Rates webservice. They can be reconstructed from two pairs that share a common reference currency.
Which reference currency should be used?
In the majority of cases the reference is USD, and sometimes EUR. Either works as long as both target currencies are quoted against that reference on the webservice.
What is the exact formula?
Divide the reference-to-quote rate by the reference-to-base rate. For MYR/CNY that means USD/CNY divided by USD/MYR.
Can this example be reproduced with today's numbers?
Yes. With USD/MYR at 4.14611 and USD/CNY at 6.8421, the calculation 6.84 / 4.15 yields approximately 1.65 MYR/CNY.
Where can I ask follow-up questions?
Additional questions can be sent to Live-Rates through the standard Live-Chat and email support channels used by existing customers.
For real-time access to the USD- and EUR-based reference pairs that make these cross-rate calculations possible, review the subscription options on the Live-Rates plans page.
Real-time forex rates for your app
Live bid/ask for the pairs you need, updated every second, with a simple JSON & XML API. Try it free for 7 days.