Как мне получить обменные курсы через API, например Google Finance?

Вопрос:Теперь я нашел Google Finance API и начал просматривать это, но я нашел много информации о портфелях, сделках, позициях и другие вещи, о которых я ничего не знаю. Я смотрю на неправильные документы? Что мне нужно сделать, чтобы получить фид обменных курсов от GF? Возможно ли это? ИЗМЕНИТЬ Сделать вещи немного яснее. Меня не интересует

Вопрос:

Теперь я нашел Google Finance API и начал просматривать это, но я нашел много информации о портфелях, сделках, позициях и другие вещи, о которых я ничего не знаю.

Я смотрю на неправильные документы? Что мне нужно сделать, чтобы получить фид обменных курсов от GF? Возможно ли это?

ИЗМЕНИТЬ

Сделать вещи немного яснее. Меня не интересует технический материал, и я не хочу кода.

Лучший ответ:

Спасибо за все ваши ответы.

Бесплатный конвертер валют:

  • Цены обновляются каждые 30 минут.
  • Ключ API теперь требуется для бесплатного сервера.

Пример URL конверсии:

Для потомков здесь они наряду с другими возможными ответами:

  1. Содержание
    1. API финансов Yahoo снят с производства 2017-11-06
    2. API с открытым исходным кодом обменного курса
    3. API валютного уровня
    4. Fixer.io API (данные Европейского центрального банка)
    5. Лента Европейского центрального банка
    6. exchangeratesapi.io
    7. CurrencyApi.net
    8. Валюта от LabStack
    9. [ Open Exchange Rates API ]
    10. [ API уровня валюты ]

    API финансов Yahoo снят с производства 2017-11-06

    Прекращено с 2017-11-06 с сообщением

    Нам стало известно, что эта услуга используется в нарушение Условий предоставления услуг Yahoo. Таким образом, услуга в настоящее время прекращено. Для всех будущих исследований рынка и акций, пожалуйста, обратитесь к finance.yahoo.com.

    Запрос: http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s=USDINR=X
    Этот CSV использовался плагином jQuery под названием Curry. С тех пор (2017-08-29) Карри перешел на использование fixer.io из-за проблем со стабильностью.
    Может быть полезно, если вам нужно больше, чем просто CSV.

  2. (благодаря Keyo) Yahoo Query Language позволяет получать целую кучу валют одновременно в XML или JSON. Данные обновляются с точностью до секунды (в то время как у Европейского центрального банка есть данные за прошедшие сутки) и останавливаются на выходных. Не требует никакой регистрации.

    * from yahoo.finance.xchange где пара в (“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”) & env = store://datatables.org/alltableswithkeys

    Вот YQL-конструктор, где вы можете протестировать запрос и скопировать URL: (НЕТ ДОЛГО ДОСТУПНО)

    *%20from%20yahoo.finance.xchange%20where%20pair%20in%20%28%22USDMXN%22%2C%20%22USDCHF%22%29

  1. API с открытым исходным кодом обменного курса

    Бесплатно для личного пользования (1000 просмотров в месяц)
    Изменение бесплатной учетной записи (от “USD”) в бесплатной учетной записи
    Требуется регистрация.
    Запрос:
    Ответ:

     

    { «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 … } }

  2. API валютного уровня

    Бесплатный план для 250 ежемесячных просмотров
    Смена “источника” (из “USD”) в бесплатной учетной записи не допускается.
    Требуется регистрация.
    Документация: currencylayer.com/documentation

    Ответ JSON:

     

    { […] «timestamp»: 1436284516, «source»: «USD», «quotes»: { «USDAUD»: 1.345352401, «USDCAD»: 1.27373397, «USDCHF»: 0.947845302, «USDEUR»: 0.91313905, «USDGBP»: 0.647603397, // 168 world currencies } }

  3. Fixer.io API (данные Европейского центрального банка)

    Бесплатный план для 1000 посещений в месяц
    Смена “источника” (из “USD”) не разрешена в бесплатном аккаунте.
    Требуется регистрация.

    Эта конечная точка API устарела и перестанет работать 1 июня 2018 года. Для получения дополнительной информации, пожалуйста, посетите: https://github.com/fixerAPI/fixer#readme)

    Веб-сайт: http://fixer.io/

    Пример запроса:

    Собирает только одно значение за каждый день

  4. Лента Европейского центрального банка

    Docs:
    http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html#dev
    Запрос: http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml

    Ответ XML:

     

    <Cube> <Cube time=»2015-07-07″> <Cube currency=»USD» rate=»1.0931″/> <Cube currency=»JPY» rate=»133.88″/> <Cube currency=»BGN» rate=»1.9558″/> <Cube currency=»CZK» rate=»27.100″/> </Cube>

  5. exchangeratesapi.io

    Согласно веб-сайту:

    API курсов валют – это бесплатный сервис для текущих и исторических курсов валют, публикуемых Европейским центральным банком

    .
    Этот сервис совместим с fixer.io и действительно прост в использовании: ключ API не требуется. Например (это использует CURL, но вы можете использовать ваш любимый инструмент запроса):

    > curl {«base»:»GBP»,»rates»:{«USD»:1.264494191},»date»:»2019-05-29″}

  6. CurrencyApi.net

    Бесплатный план для 1250 ежемесячных просмотров
    Базовая валюта установлена на свободном счете в долларах США.
    Требуется регистрация.
    Документация: currencyapi.net/documentation

    Ответ JSON:

     

    { «valid»: true, «timestamp»: 1567957373, «base»: «USD», «rates»: { «AED»: 3.673042, «AFN»: 77.529504, «ALL»: 109.410403, // 165 currencies + some cryptos } }

  7. Валюта от LabStack

    Веб-сайт: https://labstack.com/currency
    Документация: https://labstack.com/docs/api/currency/convert
    Цены: https://labstack.com/pricing
    Запрос:
    Ответ:

    { «time»: «2019-10-09T21:15:00Z», «amount»: 71.1488 }

Ответ №1

Европейский центральный банк (ЕЦБ) также имеет самый надежный бесплатный канал, о котором я знаю. Он содержит приблизительно 28 валют и обновляется, по крайней мере, ежедневно.

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

Дополнительные форматы и инструменты см. на странице справки ECB:
http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html

Ответ №2

Yahoo имеет функцию YQL, чтобы сразу получить целую кучу валют в XML или JSON. Я заметил, что данные обновляются в тот момент, когда ЕЦБ имеет данные дня и останавливается в выходные.

* от yahoo.finance.xchange, где пара в ( “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” ) & env = store://datatables.org/alltableswithkeys

Вот их построитель запросов, где вы можете протестировать запрос и скопировать URL-адрес:

%20 * %20from %20yahoo.finance.xchange %20where %20pair %20in %20% 28% 22USDMXN% 22% 2C %20% 22USDCHF% 22% 29

Ответ №3

Если вам нужен бесплатный и простой API для конвертации одной валюты в другую, попробуйте free.currencyconverterapi.com.

Отказ от ответственности, я автор сайта, и я использую его для одного из моих других сайтов.

Услуга бесплатна для использования даже в коммерческих целях, но не дает никаких гарантий. По соображениям производительности значения обновляются только каждый час.

Пример URL преобразования: , который будет возвращать значение в формате json, например {“EUR_PHP”: 60.849184}

Ответ №4

Я получил этот контент из

<?php function get_currency($from_Currency, $to_Currency, $amount) { $amount = urlencode($amount); $from_Currency = urlencode($from_Currency); $to_Currency = urlencode($to_Currency); $url = «http://www.google.com/finance/converter?a=$amount&from=$from_Currency&to=$to_Currency»; $ch = curl_init(); $timeout = 0; curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_USERAGENT, «Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)»); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $rawdata = curl_exec($ch); curl_close($ch); $data = explode(‘bld>’, $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); ?> Ответ №5

Вот некоторые API обмена с примером PHP.

[ Open Exchange Rates API ]

Предоставляет 1000 запросов в месяц бесплатно. Вы должны зарегистрироваться и получить идентификатор приложения. Базовая валюта USD для бесплатной учетной записи. Проверьте поддерживаемые валюты и документацию.

// 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

[ API уровня валюты ]

Предоставляет 1000 запросов в месяц бесплатно. Вы должны зарегистрироваться и захватить ключ доступа. Таможенная базовая валюта не поддерживается в бесплатной учетной записи. Проверьте документацию.

$exchange_url = ‘http://apilayer.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

Ответ №6

Вы можете попробовать geoplugin

Помимо геолокации, выполняемой по IP (но IP-адрес провайдера IP, поэтому не так точен), они также возвращают валюты и имеют конвертер валют: см. примеры.

У них обновлено 111 валют.

Ответ №7

Если вы ищете решение на основе Ruby для этой проблемы, я рекомендую использовать метод Google Calculator для решения, аналогичного следующему: 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 output is not JSON, it 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})» Ответ №8

Вот один простой PHP Script, который получает обменный курс между GBP и USD

<?php $amount = urlencode(«1»); $from_GBP0 = urlencode(«GBP»); $to_usd= urlencode(«USD»); $Dallor = «hl=en&q=$amount$from_GBP0%3D%3F$to_usd»; $US_Rate = file_get_contents(«http://google.com/ig/calculator?».$Dallor); $US_data = explode(‘»‘, $US_Rate); $US_data = explode(‘ ‘, $US_data[‘3’]); $var_USD = $US_data[‘0’]; echo $to_usd; echo $var_USD; echo ‘<br/>’; ?>

Курсы валют Google не являются точными. Google говорит: > Google не может гарантировать точность обменных курсов, используемых калькулятором. Вы должны подтвердить текущие ставки перед совершением каких-либо транзакций, на которые могут повлиять изменения обменных курсов. Курсы иностранной валюты, предоставляемые Citibank N.A., отображаются по лицензии. Цены указаны исключительно в информационных целях и могут быть изменены без предварительного уведомления. Тарифы на фактические транзакции могут отличаться, и Citibank не предлагает вносить какие-либо транзакции в любой момент.

Ответ №9

Для всех новичков, которые ищут некоторый намек на конвертацию валют, взгляните на эту ссылку. Datavoila

Это помогло мне много узнать о моем собственном проекте на С#. На всякий случай сайт исчезнет, ​​я добавлю код ниже. Просто добавьте приведенные ниже шаги в свой собственный проект. Извините за форматирование.

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);

Оцените статью
Добавить комментарий