
Currency Rates API - austincodesa
https://currencyscoop.com?u=a
======
amluto
> The real-time mid-market rate is the midpoint between demand and supply at
> any point in time, making it the most accurate rate.

By which they mean "the real-time mid-market rate is something that some
unnamed provider made up and claims is representative of actual rates."

They give EUR/USD to two digits of precision. The actual spreads quoted by
anyone who isn't trying to utterly screw you over is much, much tighter than
0.01. Different parties will have different ideas of the current and
historical bids and offers.

Using a service like this is probably fine for display purposes and maybe okay
for some accounting purposes as long as no one is going to audit it or care
about the results being entirely correct. Using it for transactions would be a
bad idea.

~~~
dclusin
Amen. The forex market is very different than the stock market. FX is
relationship driven. What this means is that the prices you can get are based
on the relationship you negotiate with your provider.

When Forex prices flash across cspan or similar they are typically quoting the
interbank offered rate. Retail traders don’t get anything close to this rate.
You usually go through several intermediaries who each add a spread. There’s
not best price law in fx.

Using prices from retail fx brokers usually isn’t a good idea either since
their spreads are so outrageous. Oanda has reasonable rate info I’m told, but
it’s more geared for professional traders.

~~~
Scoundreller
> Using prices from retail fx brokers usually isn’t a good idea either since
> their spreads are so outrageous.

What's wrong with averaging them together? That should negate the spread
unless they're really short of one currency and long on the other. I guess
your local bank would post bad rates on some pairs because of their carrying
costs, but someone like transferwise?

Back in 2009, I recall one Canadian bank having competitive rates when you
wanted to sell them USD, but terrible rates when you wanted to buy their USD.
I guess they were in dire need for USD and didn't want to sell what they had
to their retail customers.

~~~
dclusin
I guess it depends on what your requirements are. I’m not too knowledgeable on
the pricing side but your price increases/decreases as you noticed aren’t
linear and vary based on the amount you’re buying or selling. Buying or
selling currencies from a trading partner exposes them to fluctuations in that
currency so they’re going to need to be compensated to cover their trading
costs like hedgeing (if your transactions are large enough) as well as some
sort of profit for them.

If you’re just doing it for a retail perspective some sort of averaging scheme
like you mentioned would probably be okay. If you’re dealing with large
amounts regularly you’d probably want to negotiate with multiple liquidity
providers to get an idea of what kind of rates you’d get for a given currency
pair.

~~~
Scoundreller
All valid concerns.

It's funny how much was based on LIBOR when it provided zero indication of
depth-of-market for the banks feeding it numbers.

~~~
dclusin
Yeah. As far as my limited knowledge goes on pricing, I don't believe LIBOR
had a direct impact on fx rates. FX forwards and swaps are more impacted by
the interest rate on treasury bills. LIBOR & EURIBOR would have an effect on
interest rates on money being lent to people doing carry trades for example.
But I don't think that it would affect pricing of the underlying trades afaik.
Maybe a trader can chime in.

------
hn_throwaway_99
Note that the Bank of Canada provides, for free, feeds of exchange rate data:
[https://www.bankofcanada.ca/rates/exchange/](https://www.bankofcanada.ca/rates/exchange/).
It's only updated daily, but I think points out the difficult niche that
currencyscoop would be able to go after. For anyone showing general prices on
goods (like an online store), daily rates should be good enough, while anyone
doing something like currency trading is going to need something much more
accurate than what currencyscoop provides.

~~~
coderintherye
Oh that's interesting, thanks for sharing. We've always used the paid XE APIs,
but only need daily accuracy so these could be worth exploring.

------
CodesInChaos
You can get the official EUR exchange rate for the following list of
currencies from the ECB. The API is a little less convenient (either zipped
csv or a slightly weird xml), but that's should be a big deal. (Including
historical data since 1999-01-04, not every currency is present in every row)

[https://www.ecb.europa.eu/stats/policy_and_exchange_rates/eu...](https://www.ecb.europa.eu/stats/policy_and_exchange_rates/euro_reference_exchange_rates/html/index.en.html)

USD, JPY, BGN, CZK, DKK, GBP, HUF, PLN, RON, SEK, CHF, ISK, NOK, HRK, RUB,
TRY, AUD, BRL, CAD, CNY, HKD, IDR, ILS, INR, KRW, MXN, MYR, NZD, PHP, SGD,
THB, ZAR

~~~
lioeters
Good to know! Direct link to the XML:
[https://www.ecb.europa.eu/stats/eurofxref/eurofxref-
daily.xm...](https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml)

------
shermanmccoy
Any serious user of FX data will want to see the bid/offer points and
calculate the mid themselves. This is fine for someone creating a pretty
ticker on their app, which I suppose is their target market.

------
vamega
I've looked into [https://exchangeratesapi.io/](https://exchangeratesapi.io/)
as a possible alternative for simple needs.

------
1996
Where's the data? Do you have to register to use it?

Here's a better alternative, updated every minute:
[http://cryptomarketplot.com/api.json](http://cryptomarketplot.com/api.json)

It has the bid and ask (apparently missing given the comments below). For
fiat/fiat pairs, use the BTC/fiat pair, for example:

    
    
            "id": "fiat-eur",
            "symbol": "EUR",
            "pair": "BTC/EUR",
            "name": "Euro",
            "bid_eur": "8251.26",
            "ask_eur": "8277.58",
            "last_eur": "8231.34",
    

(...)

    
    
            "id": "fiat-try",
            "symbol": "TRY",
            "pair": "BTC/TRY",
            "name": "Turkish Lira",
            "bid_try": "53258.52",
            "ask_try": "54173.34",
            "last_try": "51903.02",
    

Use the BTC/EUR and BTC/LYR to find the LYR/EUR with one division.

No rate limit, no condition to use the api. It's free for all and will remain
free.

~~~
bdcravens
That's not how currency rates work. This requires Bitcoin to be identical in
demand. For example, EUR to TRY using Bitcoin is 0.15496, vs 0.15313 according
to XE. Moreover, that crypto API only features 15 fiat pairs, vs. well
Currenyscoop's 159.

[https://currencyscoop.com/supported-
currencies](https://currencyscoop.com/supported-currencies)

~~~
1996
This is correct.

However, most people will not be able to trade at the XE quoted rates. Just
try to go to your back and exchange. The price reported on CMP are what any
random person can get, for real, using the crypto exchanges - without
complicated paperwork. Without delay. With a separate bid and ask, instead of
reporting a theoretical midpoint.

Also, the API is fully free. Anytime. Any volume of request. Commercial
purposes included. No questions asked.

So yeah, that's currently smaller, but I think it is closer to what people and
especially developers really care or need - the big fiat pairs, and true
rates, without Terms-Of-Service.

------
apesti
I see Zendesk listed as one of the businesses that uses this. Does anyone have
an idea why Zendesk would need an exchange rate API?

~~~
hbcondo714
That's what I thought too but according to their latest quarterly report[1],
ZenDesk generates revenue in Ireland, Singapore and "other" countries in
Europe and Asia.

[1] [https://last10k.com/sec-
filings/zen/0001463172-19-000445.htm...](https://last10k.com/sec-
filings/zen/0001463172-19-000445.htm#s634EB6BD69E8575F9B445B93DC816857)
(scroll up a bit to see geographic information)

------
fastest963
How does this compare to Open Exchange Rates?

