No aplicativo Laravel 11, importo taxas de câmbio do FrankfurterService ou ExchangeRateHost, alternando entre diferentes implementações de serviços, recuperando resultados e comparando dados. Obtive resultados um pouco diferentes.
Primeiramente pensei que a diferença é que eles mostram a taxa de câmbio em diferentes "modos": "Nós compramos" / "Nós negociamos"
Depois disso, uma pergunta se esse "modo" é mostrado em algum lugar nos documentos em
https://exchangerate.host/documentação
e
https://github.com/brunoinds/frankfurter-laravel
?
Não encontrei...
Verificando os resultados que recupero de algumas moedas:
Vejo que são um pouco diferentes. Não tenho certeza se é "We buy" / "We trade" "mode" ou outra coisa?
Em ambos os casos, mostro a moeda "origem" - "CAD"
Não há um preço "correto" centralizado para moedas.
Ações, futuros etc. são negociados em bolsas centralizadas (New York Stock Exchange, Chicago Mercantile Exchange etc.) e o preço do ticker é retirado da última transação registrada. Isso resulta em um preço universalmente consistente em qualquer momento.
Transações de moeda acontecem em todo o mundo entre duas partes sem obrigação de divulgar o preço acordado. Cada corretor calcula seu próprio preço a partir de suas próprias transações. Isso é conhecido como negociação Over-The-Counter (OTC). Dada a natureza descentralizada e o propósito de fluxo livre do dinheiro, é muito difícil para uma autoridade centralizada entrar no meio e regular como as pessoas escolhem trocá-lo (embora isso possa mudar no futuro, por exemplo, com o RMB Digital)
Geralmente, os preços dos corretores são muito similares, porque se uma diferença maior do que a comissão de negociação surgisse entre 2 corretores, os investidores a arbitrariam. Dinheiro grátis.
Isto é igualmente verdadeiro para moedas tradicionais e criptomoedas.
Você também está certo em ter cuidado com a
spread
diferença entre o preço de compra e o preço de venda.Na prática, a solução mais fácil é escolher uma fonte e declará-la ao lado dos dados. Como alternativa, você pode calcular constantemente uma média ou selecionar uma fonte comparando-a com a média de várias fontes, mas o resultado dependeria muito da sua escolha de fontes e do período de tempo considerado.