Skip to content

About

Project: Stock Screening Tool

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

42 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Stock Screening Tool 🚀

All credits go to Screener.in for creating the original tool.

A web-based stock screening application that allows users to filter and analyze stocks based on various financial parameters, inspired by Screener.in. Built with React frontend and Go backend.

Video Demo

stock.screening.tool.mp4

🧪 Testing

📌 Features

  • Advanced Stock Filtering: Query-like interface for filtering stocks
  • Multiple Financial Parameters: Filter stocks based on 9 key financial metrics:
    • Market Capitalization
    • P/E Ratio
    • ROE (Return on Equity)
    • Debt-to-Equity Ratio
    • Dividend Yield
    • Revenue Growth
    • EPS Growth
    • Current Ratio
    • Gross Margin
  • Interactive Data Table:
    • Sortable columns
    • Pagination (10 stocks per page)
  • Screener.in-Inspired UI: Clean and intuitive user interface

🛠️ Tech Stack

Frontend

  • React

Backend

  • Go
  • Framework: Gin

🚀 Getting Started

Prerequisites

  • Docker
  • Docker Compose

That's all! No need to install Node.js, Go, or any other dependencies locally. Docker will handle everything for you.

Installation

  1. Clone the repository
git clone https://github.com/Souvik-Cyclic/Stock-Screening-Tool
cd Stock-Screening-Tool
  1. Start the application using Docker Compose
docker-compose up --build

The application will be available at http://localhost:3000

To stop the application:

docker-compose down

🎯 Usage Examples

Sample Query 1

Market capitalization > 100 AND
Price to earning < 10 AND
Return on capital employed > 10%

Sample Query 2

Debt to Equity > 1 AND
Dividend Yield > 1% AND
Revenue Growth > 1%

Sample Query 3

EPS Growth > 2% AND
Current Ratio > 2 AND
Gross Margin > 2%

Financial Parameters:

  • Market Capitalization
  • Price to earning
  • Return on capital employed (%)
  • Debt to Equity
  • Dividend Yield (%)
  • Revenue Growth (%)
  • EPS Growth (%)
  • Current Ratio
  • Gross Margin (%)

📁 Project Structure

stock-screening-tool/
├── client/
│   ├── src/
│   │   ├── assets/
│   │   ├── components/
│   │   ├── pages/
│   │   └── styles/
│   ├── App.js
│   ├── App.css
│   ├── Dockerfile
│   ├── docker-compose.yml
│   └── package.json
├── server/
│   ├── go.mod
│   ├── go.sum
│   └── main.go
│   ├── stocks.json
│   ├── Dockerfile
│   ├── docker-compose.yml
└── README.md

🔍 API Endpoints

The API runs on http://localhost:8080.

GET /

Returns the health status of the API.

{"message":"Backend is alive"}

POST /filter

Accepts screening criteria and returns filtered stocks

{
	"query":    "Market capitalization > 100 AND
                Price to earning < 10 AND
                Return on capital employed > 10%" 
}

🙏 Acknowledgments

📧 Contact

Souvik Kumar

Mail

GitHub

Linkedin

Project Link: https://github.com/Souvik-Cyclic/Stock-Screening-Tool

About

Project: Stock Screening Tool

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages