pure-realtime-stock

1.0.8-2 • Public • Published

pure-realtime-stock

NPM Downloads NPM Version

get real-time stock data for free in Node.js

How does it work?

Hidden Robinhood pages are opened programmatically for each stock. When the price of a stock changes in realtime, the price and symbol is sent over.

Installation

Using npm:

  • npm install pure-realtime-stock

Using yarn:

  • yarn add pure-realtime-stock

On Ubuntu use --unsafe-perm=true. Then follow dependency installation directions.

Usage

RealtimeStock()

Creates a new EventEmitter that outputs realtime stock prices.

 
const RealtimeStock = require("pure-realtime-stock");
const realtime = new RealtimeStock();

.subscribe(stock : string)

Subscribe to the price movements of a stock with the symbol.

 
realtime.subscribe("ROKU");
 
// The realtime "priceMoved" event will now output ROKU's price movements.

.unsubscribe(stock : string)

Unsubscribe from a stock's price movements.

 
realtime.unsubscribe("ROKU");
 
// The realtime "priceMoved" event will stop outputting ROKU's price movements.

.getPrice(stock : string)

Gets a stock price.

 
realtime.getPrice("ROKU").then(price => console.log(`ROKU's current price is ${price}.`));

.getInformation(stock: string)

Gets a stock's information as found on a Robinhood page.

 
realtime.getInformation("ROKU").then(info => {
 console.log(info);
 realtime.close();
});

.close()

Should be ran at the end of your program to close the connection with Robinhood. If close is not called, the program will not exit.

 
realtime.getPrice("ROKU").then(price => {
 console.log(price);
 realtime.close();
});

.on("priceMoved", callback( { stock : string, price : number } ) )

Listens for price movements of all the subscribed stocks.

 
realtime.on("priceMoved", ({ stock, price }) => console.log(`${stock} moved... new price is ${price}`);

.on("debug", callback(error : string))

Listens for event messages or non-fatal problems.

realtime.unsubscribe("BLARG123");
 
realtime.on("debug", (x) => console.log(x));
// Output: BLARG123 is not a subscription.

.on("logs", callback(error : string))

Listens for internal error logs.

 
realtime.on("logs", (e) => console.log(e));

Contributing

Feel free to send any pull requests this way!

Getting Started

  • $ git clone https://github.com/jackHedaya/pure-realtime-stock
  • $ cd pure-realtime-stock && yarn

Dependencies

Package Sidebar

Install

npm i pure-realtime-stock

Weekly Downloads

1

Version

1.0.8-2

License

MIT

Unpacked Size

11.2 kB

Total Files

7

Last publish

Collaborators

  • jackhedaya