Как транслировать цену акций в прямом эфире с помощью python

Сначала я хочу найти какой-нибудь API, но я искал в Интернете и не нашел ничего действительно полезного.

«В режиме реального времени» я имею в виду прямую трансляцию курса акций на веб-странице без обновления.

Если такого API нет, будет ли мой следующий метод хорошим способом реализовать это? 1. На стороне Python позвоните в Yahoo Finance API, чтобы получить самую последнюю цену. 2. На стороне браузера используйте ajax для постоянного обращения к серверу, чтобы получить цену и отобразить цену. В частности, я думаю использовать setInterval в jquery для достижения этой цели.

Как выглядит этот подход?

На самом деле это не относится к данным о ценах на акции, любой веб-сайт, которому необходимо постоянно получать данные со стороны сервера, должен учитывать эту проблему. Например, чат Google, новостная лента Facebook и так далее. Может ли кто-нибудь сказать мне в целом, как добиться потоковой передачи данных с сервера в браузер?


person performanceuser    schedule 04.11.2012    source источник


Ответы (3)


Другой способ — использовать push-архитектуру. Вы можете взглянуть на APE — Ajax Push Engine.

Вы также можете взглянуть на Socket.IO, платформу приложений реального времени для Node.JS.

Надеюсь это поможет!

person Thanos Makris    schedule 04.11.2012
comment
Спасибо. Похоже, есть несколько вариантов. Не могли бы вы дать мне немного больше информации о том, что лучше в какой ситуации? Я не хочу тратить слишком много времени на один подход только для того, чтобы найти другой, который лучше - person performanceuser; 05.11.2012
comment
APE обеспечивает архитектуру push, а Socket.IO обеспечивает среду приложений реального времени в том смысле, что с помощью Socket.IO вы достигаете двусторонней связи. На вашем месте я бы попробовал Socket.IO. - person Thanos Makris; 05.11.2012

Вы обязательно должны использовать Push API. В наши дни вам, вероятно, следует использовать http://www.websocket.org/

person Thomas Vander Stichele    schedule 04.11.2012
comment
В эти дни? Я думаю, что вам все равно придется подождать несколько лет для этого... :( - person vipw; 05.11.2012
comment
Автор не указал больше на свои ограничения на развертывание, но, учитывая, что существуют реализации веб-сокетов с использованием Flash, мне интересно, какие браузеры вы хотели бы поддерживать сегодня, которые нельзя заставить работать ни с родными веб-сокетами, ни с веб-сокетами на основе флэш-памяти. . - person Thomas Vander Stichele; 06.11.2012

Вы не хотите использовать API для отдыха в режиме реального времени, неэффективно постоянно «подтягивать» текущую цену. Вместо этого вам нужен сервис, который будет «подталкивать» вас к изменениям всякий раз, когда на бирже совершаются новые сделки. Это делается с помощью веб-сокета, который является типом API, но он определенно отличается от остальных API. В этой статье обсуждается разница.

Intrinio предоставляет веб-сокет в реальном времени, и вы можете получить к нему доступ через Python, используя этот SDK на Github. Вы можете получить доступ к тем же данным через rest API, используя этот пакет на Python. Если вы попробуете их оба, вы увидите, что архитектура не имеет смысла с остальным API.

В этом видео показаны сделки, поступающие на рынок — внутренние сделки не исполняются. через равные промежутки времени, это совершенно спорадический. Вместо того, чтобы постоянно «спрашивать» данные у сервера, лучше «слушать». Это называется верхней частью книги, что означает, что вы получаете самые новые сделки, когда они приходят сверху.

person Andrew Carpenter    schedule 19.05.2017