Deutsch한국어日本語中文EspañolFrançaisՀայերենNederlandsРусскийItalianoPortuguêsTürkçePortfolio TrackerSwapCryptocurrenciesPricingIntegrationsNewsEarnBlogNFTWidgetsDeFi Portfolio TrackerOpen API24h ReportPress KitAPI Docs

The best open-source currency rates provider has been updated to v4.0.0

12M ago
bullish:

0

bearish:

0

Share

We have updated our API for providing crypto and fiat currency rates in JSON format to version 4.0.0, making it the most reliable and fault-tolerant on the market.

There are many services and exchanges that provide fiat and crypto currency rates for free, but they all share similar problems, such as potentially outdated data, request limits, or unstable performance.

That’s why we created our own provider, reliable for every currency pair, which you can run on your own server.

We solved the problem of free currency rate providers by creating our own free provider, combining others, and publishing its source code on GitHub.

Summary

Currencyinfo is the premier choice for a currency rate provider due to its reliability, flexibility, and comprehensive configuration options. By combining data from multiple sources and offering advanced filtering mechanisms, it ensures the most accurate and trustworthy currency rates. With its self-hosted solution, users maintain full control, avoid common issues with free providers, and benefit from open-source accessibility.

Default Sources

Currencyinfo collects data from several sources to provide the most accurate currency rates. The sources are listed below:

  • MOEX — Moscow Exchange for fiat currencies mostly
  • Currency API — Free fiat currency exchange rates API
  • ExchangeRate — Simple and lightweight service for world currencies, precious metals, and Bitcoin
  • CoinMarketCap — Crypto coin rates updating every single minute
  • CryptoCompare — Exchange rate API that provides comprehensive crypto coin and fiat list with frequent updates
  • CoinGecko — Broad crypto coin list with data stably refreshed every 1 to 5 minutes

Filtering prices

The main advantage of our service is that you can determine the criteria for considering currency pair rates as reliable. Let’s examine the factors you can configure to create results you trust.

Rate Lifetime

Since the sources from which data is obtained may not always be operational or return data, it is important to ensure that our service does not store and display outdated data that has not been updated for some reason. To address this, you can configure in the configuration file the time during which prices will be considered valid:

{
"rateLifetime": 30, // 30 minutes
}

This option can also be changed during a request to get the latest currency rates. For example, if you want to consider prices valid for up to two hours, specify a rate lifetime of 120 minutes in the request:

https://info2.adm.im/get?rateLifetime=120

Minimum Number of Sources

Another important factor can be the number of sources from which the currency rate was obtained. If you do not want to always trust a single source, thinking it may return false data, you can configure Currencyinfo to always compare prices from multiple sources and not save data if it managed to get prices from fewer sources than required:

{
"minSources": 3, // Do not display prices obtained from fewer than 3 sources
}

Price Comparison Between Sources

Suppose one of the sources mistakenly provides incorrect data due to a system failure. By comparing this data with other sources, Currencyinfo can detect that one of the rates significantly differs from the others. In this case, the suspicious data can be excluded.

For example, we can configure Currencyinfo to not save data if the difference between prices exceeds 35%:

{
"rateDifferencePercentThreshold": 35
}
You can read more about how Currencyinfo determines price differences here.

Price Selection

Since Currencyinfo takes prices from multiple sources, the question arises of how to merge or select the best price for a pair. For this, we created a highly flexible configuration system that allows you to customize the algorithm to your needs: whether it’s displaying the lowest prices or prices from sources you trust the most.

You can create your own algorithm based on the source code, or choose one of the following strategies in the configuration file:

  • Priorities: You can configure Currencyinfo to save prices from sources that are higher on your priority list
  • Average Price: If you do not trust any sources more than others, you can save the average value from the obtained sources for maximum accuracy
  • Minimum/Maximum Price: For finding the best deals or determining a price with a buffer

If you want to save rates from Coingecko when possible, put it in the first place in the list and choose priority strategy:

{
"strategy": "priority",
"priorities": [
"Coingecko",
"CurrencyApi",
"ExchangeRateHost",
"MOEX",
"Coinmarketcap",
"CryptoCompare"
],
}

Notifications

Another important condition for a reliable service is the rapid acknowledgment and resolution of issues. You can receive Currencyinfo error notifications via the following messengers:

Get Currencyinfo

You can find detailed documentation and installation instructions on GitHub: https://github.com/Adamant-im/currencyinfo/wiki.


The best open-source currency rates provider has been updated to v4.0.0 was originally published in ADAMANT on Medium, where people are continuing the conversation by highlighting and responding to this story.

12M ago
bullish:

0

bearish:

0

Share
Manage all your crypto, NFT and DeFi from one place

Securely connect the portfolio you’re using to start.