Skip to content

knicola/finviz-screener

Repository files navigation

FinViz Screener Library for Node.js

Free, open-source Node.js client for the FinViz Stock Screener.

Installing

Using npm:

$ npm install finviz-screener

Using yarn:

$ yarn add finviz-screener

Usage

// ES6
import finviz from 'finviz-screener'
// CommonJs
const finviz = require('finviz-screener')
const options = {
    // Maximum number of pages to fetch. Set to `0` to disable. Default is 1
    pageLimit: 1,
    // Number of milliseconds to wait between requests. Default is 1000
    requestTimeout: 1000,
}

const tickers = await finviz(options)
    .averageVolume('Over 2M')
    .sector('Technology')
    .price('Over $50')
    .scan()

console.log(tickers) //=> ['AAPL', 'MSFT', 'IBM', ... ]

By default, the client will fetch only the first page of tickers (~1000 per page). To fetch more pages, increase the pageLimit option. Set pageLimit = 0 to fetch all available pages.

API

See docs/API.md file for the full list of available methods.

Development

This library is built using file generators. They do most of the heavy lifting around here by generating the "filter" methods and tests, the typescript definitions and the API documentation 🎉.

Any changes to this library, must be introduced to the file generators or the src/index.js and src/base.js files. Make sure to run npm run build and review the changes before submitting anything.

License

This project is open-sourced software licensed under the MIT license.