さて、私は Google Finance API を見つけてそれを見始めましたが、私はポートフォリオ、取引、ポジション、そして私が知っている他のものについて多くの情報を見つけました何もない。
間違ったドキュメントを見ていますか? GFから為替レートの情報を入手するにはどうすればいいですか?これでも可能ですか?
編集
物事をもう少し明確にする。私は技術的なものには興味がなく、コードも欲しくありません。
あなたのすべての答えをありがとう。
無料通貨変換:
サンプルの変換URLは次のとおりです。 http://free.currencyconverterapi.com/api/v5/convert?q=EUR_USD&compact=y
ここに子孫のために彼らは他の可能な答えと一緒にいます:
2017-11-06現在、メッセージで廃止
このサービスがYahooの利用規約に違反して使用されていることがわかりました。そのため、サービスは中止されています。将来のすべての市場および株式データの調査については、finance.yahoo.comを参照してください。
リクエスト: http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s=USDINR=X
このCSVは、 Curry というjQueryプラグインによって使用されていました。カレーは(2017-08-29)以来安定性の問題のために代わりにfixer.ioを使用することにしました。 CSVだけでは足りない場合に便利です。
( Keyo のおかげで)Yahoo Query Languageを使用すると、XMLで一度にたくさんの通貨を取得できます。またはJSON。データは秒単位で更新され(ヨーロッパ中央銀行には1日前のデータがあります)、週末には停止します。いかなる種類のサインアップも必要としません。
これが YQLクエリビルダークエリをテストしてURLをコピーすることができます。(NO LONGER AVAILABLE)
個人使用は無料です (月1000ヒット)
( "USD"から) "base"を変更することは無料アカウントでは許可されていません
登録が必要です。
リクエスト: http://openexchangerates.org/latest.json
応答:
{
"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 ...
}
}
月額1,000回の無料プラン
( "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
}
}
毎月1,000ヒットの無料プラン
無料のアカウントでは(「USD」から)「ソース」を変更することはできません登録が必要です。
このAPIエンドポイントは推奨されておらず、2018年6月1日には機能しなくなります。詳細については、https://github.com/fixerAPI/fixer#readmeを参照してください。
ウェブサイト: http://fixer.io/
リクエスト例: http://api.fixer.io/latest?base=USD
毎日1つの値のみを収集します
ドキュメント: 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>
ウェブサイトによると:
為替レートAPIは、欧州中央銀行が発行する現在および過去の為替レートに対する無料サービスです。このサービスはfixer.ioと互換性があり、本当に使いやすく、APIキーは不要です。例えば(これはCURLを使用しますが、あなたのお気に入りの要求ツールを使用することができます):
> curl https://api.exchangeratesapi.io/latest?base=GBP&symbols=USD
{"base":"GBP","rates":{"USD":1.264494191},"date":"2019-05-29"}
欧州中央銀行(ECB)にも、私が知っている最も信頼できる無料フィードがあります。約28の通貨が含まれており、少なくとも毎日更新されます。
http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml
その他のフォーマットやツールについてはECBのリファレンスページをご覧ください。 http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html
Yahooには、XMLまたはJSONで一度に大量の通貨を取得するためのYQL機能があります。私はECBがその日のデータを持っていて、週末に止まる分までにデータが最新であることに気付きました。
これが彼らのクエリビルダーで、クエリをテストしてURLをコピーすることができます。
ある通貨を別の通貨に変換するための無料でシンプルなAPIが必要な場合は、 free.currencyconverterapi.com を試してください。
免責事項、私はウェブサイトの作者であり、私は他のウェブサイトの一つにそれを使用します。
このサービスは商用アプリケーションでも無料で使用できますが、保証はありません。パフォーマンス上の理由から、値は1時間ごとにしか更新されません。
サンプル変換URLは次のとおりです。 http://free.currencyconverterapi.com/api/v6/convert?q=EUR_PHP&compact=ultra&apiKey=sample-api-key フォーマットされた値、例えば{"EUR_PHP":60.849184}
<?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);
?>
PHPの例を使った交換APIがいくつかあります。
1か月あたり1,000リクエストを無料で提供します。アプリIDを登録して取得する必要があります。無料アカウントの基本通貨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
1か月あたり1,000リクエストを無料で提供します。アクセスキーを登録して取得する必要があります。カスタム基本通貨は無料アカウントではサポートされていませんサポートされていません。 ドキュメント を確認してください。
$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
あなたは試すことができます geoplugin
IPによって行われる地理的位置情報の他に(ただしIPはプロバイダIPなので、それほど正確ではありません)、通貨も返され、通貨コンバーターがあります。例を参照してください。
彼らは111の通貨が更新されています。
この問題に対する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'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})"
これは、GBPとUSDの間の為替レートを取得する簡単なPHPスクリプトの1つです。
<?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が計算機によって使用される為替レートの正確さを保証することはできません。為替レートの変更によって影響を受ける可能性のあるトランザクションを実行する前に、現在のレートを確認する必要があります。シティバンクN.A.が提供する外貨レートは、ライセンスに基づいて表示されています。料金は情報提供のみを目的としており、予告なく変更されることがあります。実際の取引のレートは異なる場合があり、シティバンクは表示されているレートで取引を行うことを申し出ていません。