GNU General Public License v3.0

项目介绍

devfinwiz/Stock_Screeners_Raw 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前获得 86 个 Star、18 次 Fork。

仓库全名
devfinwiz/Stock_Screeners_Raw
开源许可证
GNU General Public License v3.0
Star 数
86
Fork 数
18

README 摘要

Parent Repository Details: This is a child/basic finance repository that currently does the following: 1}Data fetching for Stocks listed on NSE India with automatic csv generation for individual ticker.(CSVGenerator.py) 1.1 -> List of tickers available (Tickers.csv) 1.2 -> Garbage Collector is prepared to filter out delisted companies from the stock exchange (GarbageCollector.py) 2}CandleStick Pattern Recognition…

完整内容见 GitHub 原始 README 或本页 。

常见问题

Stock_Screeners_Raw 用什么语言开发?

主要使用 Python 编写,采用 GNU General Public License v3.0 许可证,目前有 86 个 Star。

Stock_Screeners_Raw 可以免费商用吗?

仓库标注的许可证为 GNU General Public License v3.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 Stock_Screeners_Raw 的源码?

可以直接克隆仓库:git clone https://github.com/devfinwiz/Stock_Screeners_Raw.git,默认分支为 master;安装与运行步骤见仓库 README。

Stock_Screeners_Raw 最近还在维护吗?

仓库最近一次更新为 2023年9月14日,当前没有未关闭的 Issue;Star 数为 86,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

This repository enables traders/investors to spot undervalued stocks automatically in the market efficiently to help them maximise their profits.

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

README

Parent Repository Details:

N2

Repository Link - Fin-Maestro


Capture1 Capture

This is a child/basic finance repository that currently does the following:

1}Data fetching for Stocks listed on NSE India with automatic csv generation for individual ticker.(CSVGenerator.py)

  1.1 -> List of tickers available (Tickers.csv)

  1.2 -> Garbage Collector is prepared to filter out delisted companies from the stock exchange (GarbageCollector.py)

2}CandleStick Pattern Recognition with involvement of multiple technical indicators to build a basic coded trading strategy. (talibtest.py,PatternRecognition.py)

  2.1 -> Outputs a csv file with ticker name indicating the specific pattern formed. (BullishEngufing.csv,BearishEngufing.csv,Gravestone.csv)

3}Financials Data Extraction at a single click for all the listed tickers using Thread Pool Executors.(FinancialsExtractor.py)

  3.1 -> List of tickers available (Tickers.csv)
  
  3.2 -> Outputs a csv file with all the financial data for individual tickers fetched from Yahoo Finance. (Financials.csv)
  
  3.3 -> 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)
    
         3.3.1 -> Outputs a csv file with complete data after fixing the previous output csv file. (FinancialsBunch.csv)

4} Fundamental Screening of stocks to sort the undervalued list of stocks based on three criterias:

  4.1 -> Picks the list of stocks that are trading n% below their book value where n is variable indicating amount of percentage. (FundamentalScreener.py)
  
         4.1.1 -> Outputs a csv file containing the financial data of the filtered stocks. (Filtered_50_percent.csv)
         
  4.2 -> Picks the list of stocks that are trading with PriceToSales ratio of below 1.25. (FundamentalScreener3.py)
  
         4.2.1 -> Outputs a csv file containing the financial data of the filtered stocks. (MCapPTS.csv)
         
  4.3 -> Picks the list of stocks that are trading with EV/EBITDA ratio ranging in 0.1 - 10.9 (evebitda_screening.py)
  
         4.3.1 -> Outputs a csv file containing the financial data of the filtered stocks. (EVToEbitda_Output.csv)

5} Chart Plotting Demo for stocks using Cufflinks Library including involvement of technical indicators (Cuffinks Demo.py):

  5.1 -> Outputs a technical chart for specified tickers with specified parameters.

6}Valutation determiner from all the ticker’s data available in FinancialsBunch.csv based on following criterias (Valuation.py):

  -> Book Value Per Share
  -> Annual Sales
  
  6.1 -> Outputs a csv file containing the valuations for all the stocks as per their book value, annual sales. (Valuations.csv)

7} Screening of stocks present in Valuations.py to spot the ones trading at a discount (DiscountValuations.py):

  7.1 -> Outputs a csv file containing name of tickers trading at a discount along with amount of discount(%) based on their BookValue (Discount_BookValue.csv)
  
  7.2 -> 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)

8} Provision to mail the necessary output files at a single click is available. (Mailer.py)


Note:

Driver Script development which enables UI integration for the entire project is currently in progress…

Before 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:

1.Log into the Gmail account that will be used to send the emails.

2.Go to Gmail’s Less Secure App Access

3.Set the Allow less secure apps option to ON.

Libraries to be installed:

  1. yfinance
  2. yahoofinancials
  3. numpy
  4. more-itertools
  5. pandas
  6. talib
  7. cufflinks

Installation can be done using the pip command. (Example: pip install pandas)

Inbuilt libraries required:

  1. datetime
  2. csv
  3. os
  4. smtplib
  5. itertools
  6. concurrent.futures
  7. math
  8. traceback
  9. mimetypes

评论

暂无评论