¿Cómo obtengo las tasas de cambio de divisas a través de una API como Google Finance?

Ahora, encontré la API de Google Finance y comencé a revisarla, pero encontré mucha información sobre carteras, transacciones, posiciones y otras cosas de las que no sé nada.

¿Estoy mirando los documentos incorrectos? ¿Qué debo hacer para obtener un feed de los tipos de cambio de GF? ¿Esto es posible?

EDITAR

Para aclarar un poco las cosas. No estoy interesado en cosas técnicas ni quiero ningún código.

Gracias por todas sus respuestas.

Monedaconverterapi gratis:

  • Tasas actualizadas cada 30 min
  • No se requiere cuenta

Un URL de conversión de muestra es: http://free.currencyconverterapi.com/api/v5/convert?q=EUR_USD&compact=y


Para la posteridad aquí están junto con otras posibles respuestas:

  1. API de finanzas de Yahoo Descontinuado el 2017-11-06

    Descontinuado a partir del 2017-11-06 con mensaje

    Hemos detectado que este servicio se está utilizando en violación de los Términos de servicio de Yahoo. Como tal, el servicio se descontinúa. Para toda la investigación de datos de mercados y acciones futuras, consulte finance.yahoo.com.

    Solicitud: http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s=USDINR=X
    Este CSV estaba siendo utilizado por un plugin jQuery llamado Curry . Desde entonces, Curry (2017-08-29) decidió usar fixer.io debido a problemas de estabilidad. Puede ser útil si necesita algo más que un CSV.

  2. ( gracias a Keyo ) Yahoo Query Language le permite obtener un montón de monedas a la vez en XML o JSON. Las actualizaciones de datos por segundo (mientras que el Banco Central Europeo tiene datos de un día), y se detiene en el fin de semana. No requiere ningún tipo de registro.

    http://query.yahooapis.com/v1/public/yql?q=select * de yahoo.finance.xchange donde par en (“USDEUR”, “USDJPY”, “USDBGN”, “USDCZK”, “USDDKK”, “USDGBP”, “USDHUF”, “USDLTL”, “USDLVL”, “USDPLN”, “USDRON”, “USDSEK”, “USDCHF”, “USDNOK”, “USDHRK”, “USDRUB”, “USDTRY”, “USDAUD” “,” USDBRL “,” USDCAD “,” USDCNY “,” USDHKD “,” USDIDR “,” USDILS “,” USDINR “,” USDKRW “,” USDMXN “,” USDMYR “,” USDNZD “,” USDPHP “, “USDSGD”, “USDTHB”, “USDZAR”, “USDISK”) y env = store: //datatables.org/alltableswithkeys

    Aquí está el generador de consultas YQL, donde puedes probar una consulta y copiar la url:

    http://developer.yahoo.com/yql/console/?q=show%20tables&env=store://datatables.org/alltableswithkeys#h=select%20*%20from%20yahoo.finance.xchange%20where%20pair% 20% 20% 28% 22% DMS 2% 22% 2C% 20% 22% DCHF% 22% 29

  3. API de tipos de cambio de código abierto

    Gratis para uso personal (1000 visitas por mes)
    Cambiar la “base” (desde “USD”) no está permitido en la cuenta gratuita
    Requiere registro.
    Solicitud: http://openexcambios.org/latest.json
    Respuesta:

    { "disclaimer": "This data is collected from various providers ...", "license": "all code open-source under GPL v3 ...", "timestamp": 1323115901, "base": "USD", "rates": { "AED": 3.66999725, "ALL": 102.09382091, "ANG": 1.78992886, // 115 more currency rates here ... } } 
  4. API del agente de cambio de divisas

    Plan gratuito para 1,000 visitas mensuales
    Cambiar la “fuente” (de “USD”) no está permitido en la cuenta gratuita
    Requiere registro.
    Documentación: currencylayer.com/documentation

    Respuesta de JSON:

     { [...] "timestamp": 1436284516, "source": "USD", "quotes": { "USDAUD": 1.345352401, "USDCAD": 1.27373397, "USDCHF": 0.947845302, "USDEUR": 0.91313905, "USDGBP": 0.647603397, // 168 world currencies } } 
  5. Fixer.io API (datos del Banco Central Europeo)

    Plan gratuito para 1,000 visitas mensuales
    No se permite cambiar “fuente” (de “USD”) en Cuenta gratuita Requiere registro.

    Este punto final API está en desuso y dejará de funcionar el 1 de junio de 2018. Para obtener más información, visite: https://github.com/fixerAPI/fixer#readme)

    Sitio web: http://fixer.io/
    Solicitud de ejemplo: http://api.fixer.io/latest?base=USD
    Solo recoge un valor por cada día

  6. Fuente del Banco Central Europeo

    Documentos: http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html#dev
    Solicitud: http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml

    Respuesta XML:

            
  7. Consulta de tasa de cambio de Google (analizada) Actualmente no disponible:

    Solicitud: http://rate-exchange.appspot.com/currency?from=USD&to=EUR
    Respuesta:

     {"to": "EUR", "rate": 0.76911244400000001, "from": "USD"} 

    Aquí hay otra API JSON (P) basada en la API de Google (fuente: este comentario ):
    http://rate-exchange.appspot.com/currency?from=USD&to=EUR&q=1

    Respuesta original de Ryan .

El Banco Central Europeo (BCE) también tiene la alimentación gratuita más confiable que yo sepa. Contiene aproximadamente 28 monedas y se actualiza al menos diariamente.

http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml

Para obtener más formatos y herramientas, consulte la página de referencia del BCE: http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html

Yahoo tiene una función YQL para obtener un montón de monedas a la vez en XML o JSON. Me he dado cuenta de que los datos están actualizados por minuto, donde el BCE tiene datos del día anterior, y se detiene en el fin de semana.

http://query.yahooapis.com/v1/public/yql?q=select * de yahoo.finance.xchange donde par en (“USDEUR”, “USDJPY”, “USDBGN”, “USDCZK”, “USDDKK”, “USDGBP”, “USDHUF”, “USDLTL”, “USDLVL”, “USDPLN”, “USDRON”, “USDSEK”, “USDCHF”, “USDNOK”, “USDHRK”, “USDRUB”, “USDTRY”, “USDAUD” “,” USDBRL “,” USDCAD “,” USDCNY “,” USDHKD “,” USDIDR “,” USDILS “,” USDINR “,” USDKRW “,” USDMXN “,” USDMYR “,” USDNZD “,” USDPHP “, “USDSGD”, “USDTHB”, “USDZAR”, “USDISK”) y env = store: //datatables.org/alltableswithkeys

Aquí está su generador de consultas, donde puede probar una consulta y copiar la url:

http://developer.yahoo.com/yql/console/?q=show%20tables&env=store://datatables.org/alltableswithkeys#h=select%20*%20from%20yahoo.finance.xchange%20where%20pair% 20% 20% 28% 22% DMS 2% 22% 2C% 20% 22% DCHF% 22% 29

Si necesita una API gratuita y simple para convertir una moneda a otra, intente free.currencyconverterapi.com .

Descargo de responsabilidad, soy el autor del sitio web y lo uso para uno de mis otros sitios web.

El servicio es gratuito incluso para aplicaciones comerciales, pero no ofrece ninguna garantía. Por razones de rendimiento, los valores solo se actualizan cada hora.

Un URL de conversión de muestra es: http://free.currencyconverterapi.com/api/v5/convert?q=EUR_PHP&compact=ultra que devolverá un valor con formato json, por ejemplo {{“EUR_PHP”: 60.849184}

Obtuve este contenido de http://www.scriptarticle.com/2012/05/03/get-live-currency-rates-and-currency-conversion-using-php-and-apis/

 ', $rawdata); $data = explode($to_Currency, $data[1]); return round($data[0], 2); } // Call the function to get the currency converted echo get_currency('USD', 'INR', 1); ?> 

Aquí hay algunas API de intercambio con ejemplos de PHP.

[ Abrir tasa de cambio API ]

Proporciona 1,000 solicitudes por mes gratis. Debes registrarte y tomar la ID de la aplicación. La moneda base USD para la cuenta gratuita. Verifique las monedas y la documentación admitidas .

 // open exchange URL // valid app_id * REQUIRED * $exchange_url = 'https://openexchangerates.org/api/latest.json'; $params = array( 'app_id' => 'YOUR_APP_ID' ); // make cURL request // parse JSON $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $exchange_url . '?' . http_build_query($params), CURLOPT_RETURNTRANSFER => true )); $response = json_decode(curl_exec($curl)); curl_close($curl); if (!empty($response->rates)) { // convert 150 USD to JPY ( Japanese Yen ) echo $response->rates->JPY * 150; } 

150 USD = 18039.09015 JPY

[ Currency Layer API ]

Proporciona 1,000 solicitudes por mes gratis. Debe registrarse y tomar la clave de acceso. La moneda base personalizada no es compatible con la cuenta gratuita. Verifique la documentación .

 $exchange_url = 'http://astackyer.net/api/live'; $params = array( 'access_key' => 'YOUR_ACCESS_KEY', 'source' => 'USD', 'currencies' => 'JPY', 'format' => 1 // 1 = JSON ); // make cURL request // parse JSON $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $exchange_url . '?' . http_build_query($params), CURLOPT_RETURNTRANSFER => true )); $response = json_decode(curl_exec($curl)); curl_close($curl); if (!empty($response->quotes)) { // convert 150 USD to JPY ( Japanese Yen ) echo '150 USD = ' . $response->quotes->USDJPY * 150 . ' JPY'; } 

150 USD = 18036.75045 JPY

Puedes probar geoplugin

Además de la geolocalización realizada por IP (pero la IP es la IP del proveedor, por lo que no es tan precisa), también devuelven monedas y tienen un convertidor de divisas: ver ejemplos.

Ellos tienen 111 monedas actualizadas.

Si está buscando una solución basada en ruby ​​para este problema, le recomiendo usar el método Google Calculator una solución similar a la siguiente: http://j.mp/QIC564

 require 'faraday' require 'faraday_middleware' require 'json' # Debug: # require "pry" country_code_src = "USD" country_code_dst = "INR" connection = Faraday.get("http://www.google.com/ig/calculator?hl=en&q=1#{country_code_src}=?#{country_code_dst}") currency_comparison_hash = eval connection.body #Google's output is not JSON, it's a hash dst_currency_value, *dst_currency_text = *currency_comparison_hash[:rhs].split(' ') dst_currency_value = dst_currency_value.to_f dst_currency_text = dst_currency_text.join(' ') puts "#{country_code_dst} -> #{dst_currency_value} (#{dst_currency_text} to 1 #{country_code_src})" 

Aquí hay un script PHP simple que obtiene la tasa de cambio entre GBP y USD

 '; ?> 

Las tasas de cambio de Google no son precisas. Google mismo dice ==> Google no puede garantizar la exactitud de los tipos de cambio utilizados por la calculadora. Debe confirmar las tarifas actuales antes de realizar cualquier transacción que pueda verse afectada por cambios en las tasas de cambio. Las tasas de moneda extranjera proporcionadas por Citibank NA se muestran bajo licencia. Las tarifas son solo informativas y están sujetas a cambios sin previo aviso. Las tasas de las transacciones reales pueden variar y Citibank no está ofreciendo realizar ninguna transacción en ningún momento.

Para todos los chicos novatos que buscan alguna pista sobre la conversión de divisas, echen un vistazo a este enlace. Datavoila

Ayudó a med mucho sobre mi propio proyecto en C #. En caso de que el sitio desaparezca, agregaré el siguiente código. Simplemente agregue los pasos a continuación a su propio proyecto. Perdón por el formateo.

 const string fromCurrency = "USD"; const string toCurrency = "EUR"; const double amount = 49.95; // For other currency symbols see http://finance.yahoo.com/currency-converter/ // Clear the output editor //optional use, AFAIK Output.Clear(); // Construct URL to query the Yahoo! Finance API const string urlPattern = "http://finance.yahoo.com/d/quotes.csv?s={0}{1}=X&f=l1"; string url = String.Format(urlPattern, fromCurrency, toCurrency); // Get response as string string response = new WebClient().DownloadString(url); // Convert string to number double exchangeRate = double.Parse(response, System.Globalization.CultureInfo.InvariantCulture); // Output the result Output.Text = String.Format("{0} {1} = {2} {3}", amount, fromCurrency, amount * exchangeRate, toCurrency);