{"id":16544920,"url":"https://github.com/devfinwiz/stock_screeners_raw","last_synced_at":"2025-03-21T10:31:38.486Z","repository":{"id":40490729,"uuid":"474288832","full_name":"devfinwiz/Stock_Screeners_Raw","owner":"devfinwiz","description":"This repository enables traders/investors to spot undervalued stocks automatically in the market efficiently to help them maximise their profits.","archived":false,"fork":false,"pushed_at":"2023-09-14T09:23:33.000Z","size":846,"stargazers_count":78,"open_issues_count":0,"forks_count":19,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-01T05:12:36.379Z","etag":null,"topics":["candlestick-patterns-detection","customtkinter","finance-automation","fundamental-analysis","python","stock-charting","stock-market","stock-screener","talib","technical-analysis","tkinter-gui","trading-algorithms","trading-strategies"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devfinwiz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-26T08:37:02.000Z","updated_at":"2025-02-21T19:47:33.000Z","dependencies_parsed_at":"2024-10-28T10:17:37.162Z","dependency_job_id":"795ecc27-5207-4629-89a2-242e017f0a5a","html_url":"https://github.com/devfinwiz/Stock_Screeners_Raw","commit_stats":{"total_commits":69,"total_committers":5,"mean_commits":13.8,"dds":0.4347826086956522,"last_synced_commit":"e99b2ac9950b1bc8e5138c3d63b08a2fc4e35a22"},"previous_names":["devfinwiz/stock_screeners_raw"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devfinwiz%2FStock_Screeners_Raw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devfinwiz%2FStock_Screeners_Raw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devfinwiz%2FStock_Screeners_Raw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devfinwiz%2FStock_Screeners_Raw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devfinwiz","download_url":"https://codeload.github.com/devfinwiz/Stock_Screeners_Raw/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244777896,"owners_count":20508805,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["candlestick-patterns-detection","customtkinter","finance-automation","fundamental-analysis","python","stock-charting","stock-market","stock-screener","talib","technical-analysis","tkinter-gui","trading-algorithms","trading-strategies"],"created_at":"2024-10-11T19:05:09.433Z","updated_at":"2025-03-21T10:31:38.063Z","avatar_url":"https://github.com/devfinwiz.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"https://readme-typing-svg.herokuapp.com?color=greencd32\u0026size=30\u0026width=950\u0026height=70\u0026lines=Stock-Screener-Raw\"/\u003e\n![](https://i.imgur.com/waxVImv.png) \n\n## Parent Repository Details: \n\u003cp align=\"center\"\u003e\n\u003cimg width=\"458\" alt=\"N2\" src=\"https://user-images.githubusercontent.com/78873223/225271710-28960aeb-8bb4-475d-8c4c-af323fe4b222.PNG\"\u003e\n\u003c/p\u003e\n\u003cdiv align=\"center\"\u003e\n      \n[![Repository Link - Fin-Maestro](https://img.shields.io/badge/Repository_Link-Fin--Maestro-2ea44f)](https://github.com/devfinwiz/Fin-Maestro-Web)\n\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.codefactor.io/repository/github/devfinwiz/fin-maestro\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/CodeFactor-A-blue\u0026?style=for-the-badge\u0026color=blue\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Python-3.10.11-blue\u0026?style=for-the-badge\u0026color=blue\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Vue.js-3-blue\u0026?style=for-the-badge\u0026color=blue\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/devfinwiz/Fin-Maestro/blob/master/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/devfinwiz/Fin-Maestro?color=maroon\u0026style=for-the-badge\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/devfinwiz/Fin-Maestro/commits/master\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/last-commit/devfinwiz/Fin-Maestro?color=yellow\u0026style=for-the-badge\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/devfinwiz/Fin-Maestro/graphs/contributors\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/contributors/devfinwiz/Fin-Maestro?color=indigo\u0026style=for-the-badge\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/devfinwiz/Fin-Maestro/issues\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/issues-raw/devfinwiz/Fin-Maestro?color=indigo\u0026style=for-the-badge\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\u003cbr\u003e\n\n![](https://i.imgur.com/waxVImv.png) \n\n![Capture1](https://user-images.githubusercontent.com/78873223/188002666-57db1f7d-d218-4e30-a44b-1c93b9c05d86.PNG)\n![Capture](https://user-images.githubusercontent.com/78873223/188002660-f481b318-d9fa-46b9-b817-eee6d0641315.PNG)\n\n![](https://i.imgur.com/waxVImv.png)\n## This is a child/basic finance repository that currently does the following:\n\n\n1}Data fetching for Stocks listed on NSE India with automatic csv generation for individual ticker.(CSVGenerator.py)\n\n      1.1 -\u003e List of tickers available (Tickers.csv)\n\n      1.2 -\u003e Garbage Collector is prepared to filter out delisted companies from the stock exchange (GarbageCollector.py)\n      \n\n2}CandleStick Pattern Recognition with involvement of multiple technical indicators to build a basic coded trading strategy.  (talibtest.py,PatternRecognition.py)\n      \n      2.1 -\u003e Outputs a csv file with ticker name indicating the specific pattern formed. (BullishEngufing.csv,BearishEngufing.csv,Gravestone.csv)\n\n\n3}Financials Data Extraction at a single click for all the listed tickers using Thread Pool Executors.(FinancialsExtractor.py)\n    \n      3.1 -\u003e List of tickers available (Tickers.csv)\n      \n      3.2 -\u003e Outputs a csv file with all the financial data for individual tickers fetched from Yahoo Finance. (Financials.csv)\n      \n      3.3 -\u003e Garbage collector is prepared to fix the the rows containing insufficient data in the output csv file to avoid interruptions in processing later. (FinancialsGarbageCollector.py)\n        \n             3.3.1 -\u003e Outputs a csv file with complete data after fixing the previous output csv file. (FinancialsBunch.csv)\n             \n\n4} Fundamental Screening of stocks to sort the undervalued list of stocks based on three criterias: \n\n      4.1 -\u003e Picks the list of stocks that are trading n% below their book value where n is variable indicating amount of percentage. (FundamentalScreener.py)\n      \n             4.1.1 -\u003e Outputs a csv file containing the financial data of the filtered stocks. (Filtered_50_percent.csv)\n             \n      4.2 -\u003e Picks the list of stocks that are trading with PriceToSales ratio of below 1.25. (FundamentalScreener3.py)\n      \n             4.2.1 -\u003e Outputs a csv file containing the financial data of the filtered stocks. (MCapPTS.csv)\n             \n      4.3 -\u003e Picks the list of stocks that are trading with EV/EBITDA ratio ranging in 0.1 - 10.9 (evebitda_screening.py)\n      \n             4.3.1 -\u003e Outputs a csv file containing the financial data of the filtered stocks. (EVToEbitda_Output.csv)\n             \n\n5} Chart Plotting Demo for stocks using Cufflinks Library including involvement of technical indicators (Cuffinks Demo.py):\n\n      5.1 -\u003e Outputs a technical chart for specified tickers with specified parameters.\n      \n\n6}Valutation determiner from all the ticker's data available in FinancialsBunch.csv based on following criterias (Valuation.py):\n\n      -\u003e Book Value Per Share\n      -\u003e Annual Sales\n      \n      6.1 -\u003e Outputs a csv file containing the valuations for all the stocks as per their book value, annual sales. (Valuations.csv)\n      \n\n7} Screening of stocks present in Valuations.py to spot the ones trading at a discount (DiscountValuations.py):\n\n      7.1 -\u003e Outputs a csv file containing name of tickers trading at a discount along with amount of discount(%) based on their BookValue (Discount_BookValue.csv)\n      \n      7.2 -\u003e Outputs a csv file containing name of tickers trading at a discount along with amount of discount(%) based on their annual sales (Discount_Sales.csv)\n\n\n8} Provision to mail the necessary output files at a single click is available. (Mailer.py)\n\n\n---\n\n![](https://i.imgur.com/waxVImv.png)\n### Note:\n\n### Driver Script development which enables UI integration for the entire project is currently in progress...\n\n\nBefore executing the scripts, make sure to turn on 'Less Secure App access' option from your gmail ID that will be used to send out the mails. To do so, get going with the following steps:\n\n\u003e 1.Log into the Gmail account that will be used to send the emails.\n\n\u003e 2.Go to Gmail's [Less Secure App Access](https://myaccount.google.com/lesssecureapps?pli=1\u0026rapt=AEjHL4NELkm6zvkeSQxzOL8a2UdhbIUASi6uvDQY573YvLX9rO1G5GHA4Um6YgEmGmZD6_Jc2tsqRDXuMf99mMud0Pslsov5MA)\n\n\u003e 3.Set the Allow less secure apps option to ON.\n\n\n![](https://i.imgur.com/waxVImv.png)\n## Libraries to be installed:\n\n\n\u003e 1. yfinance\n\u003e 2. yahoofinancials\n\u003e 3. numpy\n\u003e 4. more-itertools\n\u003e 5. pandas\n\u003e 6. talib\n\u003e 7. cufflinks\n\n### Installation can be done using the pip command. (Example: pip install pandas)\n\n![](https://i.imgur.com/waxVImv.png)\n## Inbuilt libraries required:\n\n\n\u003e 1. datetime\n\u003e 2. csv\n\u003e 3. os\n\u003e 4. smtplib\n\u003e 5. itertools\n\u003e 6. concurrent.futures\n\u003e 7. math\n\u003e 8. traceback\n\u003e 9. mimetypes\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevfinwiz%2Fstock_screeners_raw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevfinwiz%2Fstock_screeners_raw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevfinwiz%2Fstock_screeners_raw/lists"}