Market Screener

A free Google Sheets screener for US and India stocks, commodities, and crypto. It runs on Google's servers every morning and emails you the signals.

Download ZIP View on GitHub

What it does

Signals

SignalMeaning
BUY: crossed above 20/50/200DMAPrice moved from below an average to above it since the previous close.
SELL: crossed below 20/50/200DMAPrice moved from above an average to below it.
BUY: golden cross / SELL: death crossThe shorter average crosses the longer one (20/50 or 50/200).
BUY: broke above Darvas box top / SELL: broke below Darvas box bottomThe close moves beyond the edge of the most recent Darvas box.
Oversold / OverboughtRSI(14) below 30 or above 70.
Volume spikeToday's volume is at least 2x the 20-day average.
Trend"Bullish stack" when price > 20 > 50 > 200-day average, "Bearish stack" for the reverse, otherwise "Mixed". Shown on Results, not alerted on.

Get started

1. Download the code

Either download the ZIP and unzip it, or clone the repo:

git clone https://github.com/rahuling/market-screener.git

You only need Code.gs and appsscript.json. The rest of the repo is documentation.

2. Create the Apps Script project

  1. Go to script.google.com and click New project.
  2. Replace the contents of Code.gs with the file from the repo.
  3. Open Project Settings (gear icon), tick Show "appsscript.json" manifest file in editor, then go back to the editor. Replace the contents of appsscript.json with the file from the repo.
  4. Save with Ctrl+S (Cmd+S on a Mac) and rename the project to Market Screener.

3. Run it once

  1. In the function dropdown at the top, choose runScreener and click Run.
  2. Approve the permissions when asked. Google will show an "unverified app" warning because the script is your own. Click Advanced, then continue.
  3. The run creates a spreadsheet called Market Screener in your Drive, with the four watchlist tabs, and emails you a digest.

4. Schedule the daily run

Choose setupDailyTrigger from the dropdown and click Run once. It schedules runScreener every day at 7am.

5. Edit your watchlist

Open the spreadsheet and edit the input tabs:

TabSymbol formatExample
US StocksTickerAAPL
India StocksNSE ticker with .NS (or .BO for BSE)TCS.NS
CommoditiesYahoo Finance futures symbolGC=F gold, SI=F silver, CL=F WTI oil
CryptoCoinGecko id (lowercase name in the coin's URL)bitcoin, avalanche-2

The next run picks up your changes. Nothing else needs to be edited.

Notes