programing

Yahoo Finance All Currencies API 문서 견적

megabox 2023. 2. 28. 23:23
반응형

Yahoo Finance All Currencies API 문서 견적

저는 오랫동안 이 피드를 사용해 왔습니다만, Mac 위젯에서도 Apple이 하고 있다고 생각합니다만, 정말로 궁금한 것은, 그 메뉴얼을 찾을 수 없고, Google등을 사용해 보았습니다.

http://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote

하는 사람들이 .view=basic date=Ymd; currency=true공식적인 게 없다는 게 너무 끔찍해요

현재는 다음 파라미터를 사용하고 있습니다.

format=json ★★★★★★★★★★★★★★★★★」callback=list★★★★★★★★★★★…

하지만 그것은 여전히 나에게 미스터리이다.야후가 다른 곳에 숨기려 하고 있는 것 같아서, 이것에 대한 진짜 진실을 아는 사람이 있나요?

제가 조사한 바로는 사용하시는 API에 대한 문서는 없는 것 같습니다.취득하려는 데이터에 따라서는 Yahoo의 YQL API를 사용하여 Yahoo Finance에 접속하는 것이 좋습니다(예는 이쪽).또는 이 문서화된 방법을 사용하여 Yahoo Finance에서 CSV 데이터를 가져올 수도 있습니다.

편집:

Yahoo 개발자 포럼에 대해 몇 가지 논의가 있었지만 문서(강조사항)는 없는 것 같습니다.

문서가 부족한 이유는 Finance API가 없기 때문입니다.일부에서는 Finance 데이터를 가져오기 위해 사용하는 API를 리버스 엔지니어링하고 있는 것 같습니다만, 이 과정에서 서비스 약관(Finance 데이터의 재배포 없음)을 위반하고 있기 때문에 이러한 웹 서비스를 사용하지 않도록 권장합니다.

또, 리스트 되고 있는 URL은, YQL 콘솔을 사용해 액세스 할 수 있습니다만, URL 파라미터를 추출하는 방법에 대해서는 잘 모릅니다.

주의!!!

YAHOW에 의해 서비스가 일시 중단

저는 현재 https://currencyscoop.com/의 무료 계정을 사용하고 있습니다.이 계정은 한 달에 최대 5000개의 무료 요청을 할 수 있는 API를 상업적으로 사용할 수 있습니다(10분마다 요청).

구식 솔루션(더 이상 유효하지 않음)

REST 쿼리에서 구문 분석할 수 있는 JSON 또는 XML을 Yahoo에서 가져옵니다.

YQL(Yahoo Query Language)을 사용하면 원하는 통화에서 원하는 통화로 교환할 수 있으며 쿼리 날짜 및 시간도 얻을 수 있습니다.

https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20csv%20where%20url%3D%22http%3A%2F%2Ffinance.yahoo.com%2Fd%2Fquotes.csv%3Fe%3D.csv%26f%3Dnl1d1t1%26s%3Dusdeur%3DX%22%3B&format=json&callback=

그러면 다음과 같은 예가 나타납니다.

{
 "query": {
  "count": 1,
  "created": "2016-02-12T07:07:30Z",
  "lang": "en-US",
  "results": {
   "row": {
    "col0": "USD/EUR",
    "col1": "0.8835",
    "col2": "2/12/2016",
    "col3": "7:07am"
   }
  }
 }
}

콘솔을 사용해 볼 수 있습니다.

100% 야후 솔루션이기 때문에 서비스 조건을 위반하지 않는다고 생각합니다.

도움이 될 수 있습니다.http://finance.yahoo.com/d/quotes.csv?e=.csv&f=c4l1&s=EURUSD=X,GBPUSD=X.csv 파일을 반환합니다.

"EUR",1.2972
"GBP",1.6034

또는 json이 필요한 경우:Yahoo csv 파서

통화 전환이 필요한 앱을 개발 중인데, 앱 테스트 중이기 때문에 요금을 지불하지 않기 때문에 오픈 환율을 사용하고 있습니다.그러나 2012년 9월부터는 오픈환율이 비개인용으로 지급되기 때문에 Yahoo Finance Webservice('존재하지 않는' 서비스')를 사용하고 있는 것을 확인하고 문서를 찾아 YQL을 선택했습니다.

Yahoo Finance 테이블에서 YQL 사용(yahoo).자금.따옴표) NT3RP에 의해 링크되며 통화는 기호="로 표시됩니다.예를 들어, 아르헨티나 페소의 경우 "ARS=X", 호주 달러의 경우 "AUD=X" 등입니다."USD=X"는 존재하지 않지만, 나머지는 USD 대비 요금이므로 1이 됩니다.

OP API의 "가격" 값은 테이블의 "LastTradePriceOnly" 필드에 있습니다.어플리케이션에서는 "Ask" 필드를 사용했습니다.

NT3RP가 알려준 것처럼

...우리(Yahoo!)는 Finance API를 가지고 있지 않습니다.일부에서는 파이낸스 데이터를 가져오기 위해 사용하는 API를 리버스 엔지니어링하고 있는 것 같습니다만, 서비스 약관을 위반하고 있습니다.

그래서 이 사이트를 여러분과 공유하려고 합니다.
http://josscrowcroft.github.com/open-exchange-rates/httpjosscrowcroft.github.com//
[업데이트: 사이트가 http://openexchangerates.org으로 이동했습니다]

이 사이트에는 다음과 같이 기술되어 있습니다.

요금 환율 한 XML - JSON 입니다.
[갱 : ]개인 용도로 무료로 이용하실 수 있습니다.

제가 도움이 됐으면 좋겠고, 이것이 당신에게도 도움이 될 것입니다.: )

Yahoo!에 대한 쿼리가 갱신되었습니다.자금,

https://query1.finance.yahoo.com/v7/finance/quote?&symbols=USD,CAD,EUR,XMR&fields=regularMarketPrice

돌아온다

{
"quoteResponse": {
    "result": [
        {
            "language": "en-US",
            "region": "US",
            "quoteType": "ETF",
            "quoteSourceName": "Delayed Quote",
            "triggerable": true,
            "exchange": "PCX",
            "exchangeTimezoneName": "America/New_York",
            "exchangeTimezoneShortName": "EDT",
            "gmtOffSetMilliseconds": -14400000,
            "market": "us_market",
            "esgPopulated": false,
            "firstTradeDateMilliseconds": 1170340200000,
            "priceHint": 2,
            "regularMarketTime": 1628712000,
            "regularMarketPrice": 35.56,
            "fullExchangeName": "NYSEArca",
            "tradeable": false,
            "sourceInterval": 15,
            "exchangeDataDelayedBy": 0,
            "marketState": "PRE",
            "symbol": "USD"
        },
        {
            "language": "en-US",
            "region": "US",
            "quoteType": "ETF",
            "quoteSourceName": "Delayed Quote",
            "triggerable": true,
            "exchange": "PCX",
            "exchangeTimezoneName": "America/New_York",
            "exchangeTimezoneShortName": "EDT",
            "gmtOffSetMilliseconds": -14400000,
            "market": "us_market",
            "esgPopulated": false,
            "firstTradeDateMilliseconds": 1320935400000,
            "priceHint": 2,
            "regularMarketTime": 1411675200,
            "regularMarketPrice": 95.879,
            "fullExchangeName": "NYSEArca",
            "tradeable": false,
            "sourceInterval": 15,
            "exchangeDataDelayedBy": 0,
            "marketState": "PRE",
            "symbol": "CAD"
        },
        {
            "language": "en-US",
            "region": "US",
            "quoteType": "INDEX",
            "triggerable": false,
            "exchange": "NYS",
            "exchangeTimezoneName": "America/New_York",
            "exchangeTimezoneShortName": "EDT",
            "gmtOffSetMilliseconds": -14400000,
            "market": "us_market",
            "esgPopulated": false,
            "firstTradeDateMilliseconds": 1543501800000,
            "priceHint": 4,
            "regularMarketTime": 0,
            "regularMarketPrice": 0.0,
            "fullExchangeName": "NYSE",
            "tradeable": false,
            "sourceInterval": 15,
            "exchangeDataDelayedBy": 0,
            "marketState": "PRE",
            "symbol": "EUR"
        },
        {
            "language": "en-US",
            "region": "US",
            "quoteType": "ECNQUOTE",
            "quoteSourceName": "Delayed Quote",
            "triggerable": true,
            "exchange": "NMS",
            "exchangeTimezoneName": "America/New_York",
            "exchangeTimezoneShortName": "EDT",
            "gmtOffSetMilliseconds": -14400000,
            "market": "us_market",
            "esgPopulated": false,
            "firstTradeDateMilliseconds": 1493213400000,
            "fullExchangeName": "NasdaqGS",
            "tradeable": false,
            "sourceInterval": 15,
            "exchangeDataDelayedBy": 0,
            "marketState": "PRE",
            "symbol": "XMR"
        }
    ],
    "error": null
}

}

저는 이 URL을 사용하여 여러 통화 시장 시세를 취득했습니다.

http://finance.yahoo.com/d/quotes.csv?e = . csv & f = c4l1 & s = FX 、 CAD = X 、 EUR = X

"USD",1.0000
"CAD",1.2458
"EUR",0.8396

PHP에서는 다음과 같이 해석할 수 있습니다.

$symbols = ['USD=X', 'CAD=X', 'EUR=X'];
$url = "http://finance.yahoo.com/d/quotes.csv?e=.csv&f=c4l1&s=".join($symbols, ',');

$quote = array_map( 'str_getcsv', file($url) );

foreach ($quote as $key => $symb) {
    $symbol = $quote[$key][0];
    $value = $quote[$key][1];
}

현재2022, 다음을 사용하여 성공했습니다.

1개의 콜로 복수의 페어를 요구할 수도 있습니다.

주의:

  • 지연된.실시간 견적 또는 거래 정보에는 사용하지 마십시오.
  • 확인.['spark']['result'][0]['meta']['regularMarketTime']견적 타임스탬프를 취득한다.
  • yahoo가 요건이 아닌 경우 https://assets.ino.com/data/quote/?format=json&s=FOREX_EURGBP를 사용할 수 있습니다.
  • 링크가 스니핑을 찾았습니다.XHRForex 웹사이트를 참조하는 동안 네트워크 요청

언급URL : https://stackoverflow.com/questions/5108399/yahoo-finance-all-currencies-quote-api-documentation

반응형