# FinViz Stock Screener (`sheshinmcfly/finviz-stock-screener`) Actor

Extract real-time stock data from FinViz screeners: top gainers, losers, most active, unusual volume, overbought, oversold, new highs and lows. Returns ticker, price, % change, sector, industry, volume, and P/E ratio per stock. No login required.

- **URL**: https://apify.com/sheshinmcfly/finviz-stock-screener.md
- **Developed by:** [Sheshinmcfly](https://apify.com/sheshinmcfly) (community)
- **Categories:** News, Lead generation, Automation
- **Stats:** 2 total users, 0 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## FinViz Stock Screener

Extract **real-time stock market data** from [FinViz](https://finviz.com) screeners — one of the most popular stock screening tools used by traders and investors worldwide.

Filter by screener type (top gainers, losers, most active, unusual volume, overbought/oversold) and export structured data with ticker, company, sector, price, change, and volume.

---

### What data does it extract?

| Field | Description | Example |
|---|---|---|
| `screener` | Screener filter used | `"ta_topgainers"` |
| `ticker` | Stock ticker symbol | `"AAPL"` |
| `company` | Company name | `"Apple Inc"` |
| `sector` | Market sector | `"Technology"` |
| `industry` | Industry | `"Consumer Electronics"` |
| `country` | Country of listing | `"USA"` |
| `marketCap` | Market capitalization | `"3.12T"` |
| `pe` | Price-to-Earnings ratio | `"32.5"` |
| `price` | Current stock price | `185.42` |
| `change` | Price change % today | `5.21` |
| `changePercent` | Formatted change % | `"+5.21%"` |
| `volume` | Trading volume | `52341800` |
| `url` | FinViz quote page | `"https://finviz.com/quote.ashx?t=AAPL"` |
| `extractedAt` | Extraction timestamp | `"2026-04-21T12:00:00Z"` |

---

### Available screeners

| Screener | Description |
|---|---|
| `ta_topgainers` | Stocks with the highest % gain today |
| `ta_toplosers` | Stocks with the highest % loss today |
| `ta_newhigh` | Stocks hitting 52-week highs |
| `ta_newlow` | Stocks hitting 52-week lows |
| `ta_mostactive` | Highest trading volume stocks |
| `ta_unusualvolume` | Stocks with unusual volume spikes |
| `ta_mostvolatile` | Most volatile stocks today |
| `ta_overbought` | Stocks with RSI > 70 |
| `ta_oversold` | Stocks with RSI < 30 |

---

### Use cases

- **Day traders**: Spot top movers and unusual volume before market close
- **Swing traders**: Find overbought/oversold setups for entries and exits
- **Market research**: Track sector trends and daily market breadth
- **Algorithmic trading**: Feed screener data into trading strategies
- **Portfolio monitoring**: Watch for stocks hitting new highs/lows
- **Volume analysis**: Detect institutional activity via unusual volume

---

### How to use

1. Open the actor and configure:
   - **Screeners**: Select one or more screener filters
   - **Max results**: Cap the number of stocks per screener
2. Click **Start**
3. Download results as JSON, CSV, or Excel

---

### Example output (JSON)

```json
{
  "screener": "ta_topgainers",
  "ticker": "FFAI",
  "company": "Faraday Future Intelligent Electric Inc",
  "sector": "Consumer Cyclical",
  "industry": "Auto Manufacturers",
  "country": "USA",
  "marketCap": "132.32M",
  "pe": null,
  "price": 0.53,
  "change": 85.52,
  "changePercent": "+85.52%",
  "volume": 575445744,
  "url": "https://finviz.com/quote.ashx?t=FFAI",
  "extractedAt": "2026-04-21T12:00:00.000Z"
}
````

***

### Pricing

This actor charges **$0.002 USD per stock extracted**. Extracting 100 stocks costs approximately $0.20 USD.

***

### Keywords

finviz stock screener, stock market scraper, top gainers losers, unusual volume stocks, stock screener data, day trading scanner, market movers, NYSE NASDAQ stocks, overbought oversold stocks, finviz scraper

***

### Legal Disclaimer

This actor extracts **publicly available commercial data only** from FinViz (finviz.com), in compliance with Chilean Law 19.628 on the Protection of Private Life (*Ley 19.628 sobre Protección de la Vida Privada*).

This actor only accesses screener URLs explicitly permitted in FinViz's robots.txt file (ta\_topgainers, ta\_toplosers, ta\_newhigh, ta\_newlow, ta\_mostactive, ta\_unusualvolume, ta\_mostvolatile, ta\_overbought, ta\_oversold).

**What this actor does NOT collect:**

- Names or personal data of any individuals
- User accounts, portfolios, or private information
- Any data that could identify or profile a private person

**What this actor collects:**

- Stock tickers, company names, and market data (public commercial data)
- Sector, industry, and country classifications
- Publicly visible price, volume, and percentage changes

The data extracted is identical to what any visitor can freely view on the FinViz website. Users are solely responsible for ensuring their use of this data complies with applicable laws and FinViz's terms of service.

# Actor input Schema

## `screeners` (type: `array`):

Which FinViz screener filters to run. Select one or more.

## `maxResults` (type: `integer`):

Maximum number of stocks to extract per screener.

## `proxyConfiguration` (type: `object`):

Datacenter proxies are free and work for most sites. Switch to Residential if you get blocked.

## Actor input object example

```json
{
  "screeners": [
    "ta_topgainers"
  ],
  "maxResults": 100,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

All scraped stocks stored in the default dataset.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("sheshinmcfly/finviz-stock-screener").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "proxyConfiguration": { "useApifyProxy": True } }

# Run the Actor and wait for it to finish
run = client.actor("sheshinmcfly/finviz-stock-screener").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call sheshinmcfly/finviz-stock-screener --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=sheshinmcfly/finviz-stock-screener",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "FinViz Stock Screener",
        "description": "Extract real-time stock data from FinViz screeners: top gainers, losers, most active, unusual volume, overbought, oversold, new highs and lows. Returns ticker, price, % change, sector, industry, volume, and P/E ratio per stock. No login required.",
        "version": "1.0",
        "x-build-id": "yVgxt45AFvMpWTaZv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/sheshinmcfly~finviz-stock-screener/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-sheshinmcfly-finviz-stock-screener",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/sheshinmcfly~finviz-stock-screener/runs": {
            "post": {
                "operationId": "runs-sync-sheshinmcfly-finviz-stock-screener",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/sheshinmcfly~finviz-stock-screener/run-sync": {
            "post": {
                "operationId": "run-sync-sheshinmcfly-finviz-stock-screener",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "screeners": {
                        "title": "Screeners",
                        "type": "array",
                        "description": "Which FinViz screener filters to run. Select one or more.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "ta_topgainers",
                                "ta_toplosers",
                                "ta_newhigh",
                                "ta_newlow",
                                "ta_mostactive",
                                "ta_unusualvolume",
                                "ta_mostvolatile",
                                "ta_overbought",
                                "ta_oversold"
                            ],
                            "enumTitles": [
                                "Top Gainers",
                                "Top Losers",
                                "New Highs",
                                "New Lows",
                                "Most Active",
                                "Unusual Volume",
                                "Most Volatile",
                                "Overbought (RSI>70)",
                                "Oversold (RSI<30)"
                            ]
                        },
                        "default": [
                            "ta_topgainers"
                        ]
                    },
                    "maxResults": {
                        "title": "Max results per screener",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Maximum number of stocks to extract per screener.",
                        "default": 100
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Datacenter proxies are free and work for most sites. Switch to Residential if you get blocked."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
