API tra cứu biểu tượng mã chứng khoán [đã đóng]


97

Có loại API nào chỉ cung cấp dịch vụ tra cứu ký hiệu đơn giản không? tức là nhập tên công ty và nó sẽ cho bạn biết ký hiệu mã chứng khoán? Tôi vừa thử Google Finance sàng lọc, nhưng sau một thời gian ngắn, tỷ lệ này giới hạn bạn và bạn phải nhập CAPTCHA. Tôi đang cố tra cứu hàng loạt khoảng 2000 biểu tượng mã. Bất kỳ ý tưởng?


Không may mắn hơn với Yahoo Finance?
Noldorin

Bạn cần thêm thời gian trễ giữa các lần tra cứu. Nói 5 giây.
siamii

Tập lệnh này có thể hữu ích: github.com/kevin91nl/scrape-ticker-symbols
www.data-blogger.com

Tôi đã đánh giá gần đây về các API giao dịch có sẵn. Strategic-options.com/insight/…
Chad

Điều này làm chính xác những gì bạn muốn và nó được cập nhật hàng ngày fastapi.com/logicione/api/…
Watt

Câu trả lời:


104

Bạn có thể sử dụng cách tra cứu ký hiệu của yahoo như sau:

http://d.yimg.com/autoc.finance.yahoo.com/autoc?query=yahoo&callback=YAHOO.Finance.SymbolSuggest.ssCallback

Truy vấn ở đâu là tên công ty.

Đổi lại bạn sẽ nhận được một thứ như thế này:

YAHOO.Finance.SymbolSuggest.ssCallback(
{
    "ResultSet": {
        "Query": "ya",
        "Result": [
            {
                "symbol": "YHOO",
                "name": "Yahoo! Inc.",
                "exch": "NMS",
                "type": "S",
                "exchDisp": "NASDAQ"
            },
            {
                "symbol": "AUY",
                "name": "Yamana Gold, Inc.",
                "exch": "NYQ",
                "type": "S",
                "exchDisp": "NYSE"
            },
            {
                "symbol": "YZC",
                "name": "Yanzhou Coal Mining Co. Ltd.",
                "exch": "NYQ",
                "type": "S",
                "exchDisp": "NYSE"
            },
            {
                "symbol": "YRI.TO",
                "name": "YAMANA GOLD INC COM NPV",
                "exch": "TOR",
                "type": "S",
                "exchDisp": "Toronto"
            },
            {
                "symbol": "8046.TW",
                "name": "NAN YA PRINTED CIR TWD10",
                "exch": "TAI",
                "type": "S",
                "exchDisp": "Taiwan"
            },
            {
                "symbol": "600319.SS",
                "name": "WEIFANG YAXING CHE 'A'CNY1",
                "exch": "SHH",
                "type": "S",
                "exchDisp": "Shanghai"
            },
            {
                "symbol": "1991.HK",
                "name": "TA YANG GROUP",
                "exch": "HKG",
                "type": "S",
                "exchDisp": "Hong Kong"
            },
            {
                "symbol": "1303.TW",
                "name": "NAN YA PLASTIC TWD10",
                "exch": "TAI",
                "type": "S",
                "exchDisp": "Taiwan"
            },
            {
                "symbol": "0294.HK",
                "name": "YANGTZEKIANG",
                "exch": "HKG",
                "type": "S",
                "exchDisp": "Hong Kong"
            },
            {
                "symbol": "YAVY",
                "name": "Yadkin Valley Financial Corp.",
                "exch": "NMS",
                "type": "S",
                "exchDisp": "NASDAQ"
            }
        ]
    }
}
)

Đó là JSON và rất dễ làm việc.

Im đi ... đừng nói cho ai biết.


1
này có thể sử dụng ký tự hoang dã trong truy vấn không? cố gắng% và * nhưng không có may mắn ...
NightWolf

2
điều này trả về tối đa 10 kết quả trong JSON !!!! Làm thế nào chúng ta có thể vượt qua giới hạn CHỈ CÓ 10 kết quả này ??
Sandy505,

5
Như một vài ngày trước, giải pháp này dường như đã bị phá vỡ. Yahoo hiện yêu cầu tham số "khu vực" và việc đặt thành "Hoa Kỳ" không tạo ra sự khác biệt nào. Nếu ai đó có cách giải quyết khác, tôi rất muốn nghe nó!
wstr

6
có vẻ như họ đã thêm 2 tham số bổ sung, "khu vực" và "lang". hãy thử d.yimg.com/autoc.finance.yahoo.com/…
lancegoh

2
Và bây giờ nó không hỗ trợ tìm kiếm mờ nữa, nó chỉ có thể tra cứu ký hiệu "Chính xác". :( Có ai có cách giải quyết hoặc bất kỳ tham số ẩn nào để bật tính năng tìm kiếm mờ không?
Jonathan Chen

32

Google Finance cho phép bạn truy xuất tối đa 100 báo giá cổ phiếu cùng một lúc bằng cách sử dụng URL sau:

www.google.com/finance/info?infotype=infoquoteall&q=[ticker1],[ticker2],...,[tickern]

Ví dụ:

www.google.com/finance/info?infotype=infoquoteall&q=C,JPM,AIG

Ai đó đã giải mã các trường có sẵn ở đây:

http://qsb-mac.googlecode.com/svn/trunk/Vermilion/Modules/StockQuoter/StockQuoter.py

Giá hiện tại ("l") là theo thời gian thực và độ trễ ngang bằng với Yahoo Finance. Có một số điều kỳ quặc mà bạn nên biết. Một số ít cổ phiếu yêu cầu tiền tố trao đổi. Ví dụ: nếu bạn truy vấn "BTIM", bạn sẽ gặp lỗi "Yêu cầu không hợp lệ" nhưng "AMEX: BTIM" hoạt động. Một số cổ phiếu không hoạt động ngay cả với tiền tố sàn giao dịch. Ví dụ: truy vấn "FTWRD" và "NASDAQ: FTWRD" đều tạo ra lỗi "Yêu cầu không hợp lệ" mặc dù Google Finance có thông tin về cổ phiếu NASDAQ này.

Trường "el", nếu có, cho bạn biết giá hiện tại trước thị trường hoặc sau giờ làm việc.



4
Đáng tiếc là nó trông giống như API Google Finance bị phản đối và sẽ đóng vào ngày 20 Tháng 10 2012 developers.google.com/finance
vegemite4me

2
Vâng, có một cái nhìn và tài chính của google hiện đã cạn kiệt và không mở cửa cho hoạt động kinh doanh. Googles cho theo dõi apis đóng cửa kỷ lục tôi sẽ rất ngần ngại căn một doanh nghiệp hoặc ứng dụng trên nó, trừ khi bạn đã có một hợp đồng và SLA với họ
Shawn Vader

1
Bất kỳ tài liệu mới? Dịch vụ vẫn hoạt động, Đang tìm kiếm cổ phiếu quá :) như yahoo một
João Nunes

25

Bạn có thể gửi một yêu cầu HTTP đến http://finance.yahoo.com để yêu cầu các ký hiệu, tên, dấu ngoặc kép và tất cả các loại dữ liệu khác. Dữ liệu được trả về dưới dạng .CSV để bạn có thể yêu cầu nhiều ký hiệu trong một truy vấn.

Vì vậy, nếu bạn gửi:

http://finance.yahoo.com/d/quotes.csv?s=MSFT+F+ATT&f=sn

Bạn sẽ nhận lại một cái gì đó như:

"MSFT","Microsoft Corp"
"F","FORD MOTOR CO"
"ATT","AT&T"

Dưới đây là một bài viết gọi là Downloading Yahoo dữ liệu đó bao gồm các thẻ khác nhau sử dụng để yêu cầu dữ liệu.


1
Thật không may, việc tìm kiếm tên công ty từ một biểu tượng rất dễ dàng. Tôi đang tìm cách tự động hóa tra cứu hàng loạt các ký hiệu mã cổ phiếu từ danh sách tên công ty. Google cho đến nay là tìm kiếm tốt nhất, tôi có thể tìm thấy biểu tượng cho hầu hết mọi công ty trong danh sách của mình mà không cần phải tìm kiếm theo cách thủ công, nhưng Google có giới hạn tỷ lệ và sẽ đưa ra lỗi 503 cho bạn sau khoảng 1000 yêu cầu.
dancavallaro

không phải là câu trả lời, nhưng hữu ích cho miền
kenny

có vẻ như việc sử dụng api có vấn đề pháp lý. Khi mở [Tải Yahoo Data] người ta sẽ thấy một lưu ý của Yahoo rằng việc sử dụng dịch vụ của họ trong những cách là bất hợp pháp
Bogdan

1
Bạn có thể thấy giao diện tương tự được ghi lại tại jarloo.com/yahoo_finance . Hoặc tìm kiếm bản gốc tại archive.org .
George


9

Nếu bạn không muốn đăng ký một dịch vụ, tôi có thể sẽ tự quay lại các sàn giao dịch; hầu hết chúng đều chưa được CAPTCHAed ...

Trang tra cứu ký hiệu cho:

Vân vân...


2
Tốt hơn, hãy bỏ qua việc tra cứu ký hiệu tại các trang web trao đổi - chỉ cần sàng lọc danh sách đầy đủ của họ vào bảng địa phương của riêng bạn và tự mình thực hiện việc tra cứu.

@John Pirie: Ừ, cũng vậy ... :-)
Stobor

7

Sử dụng YQL và bạn không cần phải lo lắng. Đó là ngôn ngữ truy vấn của Yahoo và bạn có thể lấy tất cả dữ liệu cổ phiếu bao gồm tên công ty cho mã cổ phiếu. Đó là một API REST và nó trả về kết quả qua XML hoặc JSON. Tôi có một hướng dẫn đầy đủ và mã nguồn trên trang web của tôi, hãy xem: http://www.jarloo.com/yahoo-stock-symbol-lookup/


Điều đó trông đẹp nhưng nó trả về một kết quả với giới hạn 10 kết quả. Bất kỳ cơ hội nhận được nhiều hơn?
Timo



1

Đặt cược tốt nhất của bạn có thể là với một trong các dịch vụ tra cứu khác (vẫn đang sàng lọc) và kiểm tra xem chúng có yêu cầu CAPTCHA hay không.

Cuối cùng xuất hiện ít có khả năng yêu cầu CAPTCHA nhất tại bất kỳ thời điểm nào, nhưng bạn nên kiểm tra cả ba.



Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.