该内容主要介绍了 GitHub 上 asafravid/sss 项目的相关信息,涵盖项目功能、文件结构、运行所需库和字体、操作步骤、指数维护方法、免责声明、贡献方式以及许可证等内容,以下是详细总结:
项目概述
- 功能:这是一个股票扫描和筛选器,基于基本面财务属性的核心方程,再经过多维扫描排名过程。支持自定义投资组合以及以色列、美国、瑞典和瑞士的股票市场,还可扩展到其他股票市场。
- 使用的库:利用非 API 基于的
yfinance
和基于 API 的yahooquery
。
项目文件和文件夹
- 文件夹:
.github
:包含与 Patreon 相关的链接。Indices
:存放 TASE 等指数的扫描指数文件。Results
:存储更新后的扫描结果,如 2024 年 1 月 TASE 的更新结果,感谢 davidatBGU 的贡献。
- 文件:
- 代码文件:如
CSVGenerator.py
用于生成 CSV 文件,Financials_Extractor.py
可获取股票关键财务数据并存储为 CSV,PatternRecognition.py
涉及模式识别等。 - 配置文件:像
sss_config.py
用于更新 2024 年 1 月 TASE 扫描相关配置。 - 其他文件:有
.gitignore
、CODE_OF_CONDUCT.md
、LICENSE
等。
- 代码文件:如
项目设置
- 所需库:
- 强制使用的 Python 库:包括
yfinance
、fpdf
、pandas
等。 - 推荐使用的 Python 库:如
forex-python
、CurrencyConverter
等,用于部分维护备份内部独立外汇表。
- 强制使用的 Python 库:包括
- 字体:需使用 DejaVu Sans Condensed 字体,可从指定网站下载。
- 安装步骤:
- 安装 Python 3.6 或更高版本。
- 推荐安装 Pycharm 社区版(可选)。
- 下载或克隆项目源代码。
- 使用
pip[3]
安装相关库。
运行步骤
- 首次运行时,将
multi_dim_scan_mode
设为False
,并可将reference_run_<mode>
设为None
或结果中最新的相关目录。 - 在
sss_config.py
中设置所需的扫描模式(custom
/tase
/nsr
/all
),然后运行sss_run.py
。 - 会在
Results/<mode>/
目录下创建新的结果目录。 - 将结果路径输入到
multi_dim_scan_mode = True
(多维扫描),会在同一目录创建 PDF 和 CSV 结果文件。 - 支持从崩溃点继续运行,以提高效率。
指数维护
- 可自动或手动下载各指数的最新成分股数据并放入指定目录,如 TASE 指数成分股可通过
sss_indices.py
在扫描时自动下载(当research_mode = False
),其他如 NASDAQ100、Russel1000 等指数成分股需手动下载并按要求放置。还可通过覆盖文件内容或在代码中添加自定义指数来创建自己的指数/股票组。
免责声明
扫描结果绝非投资建议,仅作为研究和分析的基础。同时,可通过与特定网站对比来理解yfinance
参数的单位。
贡献与联系
鼓励为项目做出贡献,如添加其他国家的股票市场、提供过去建议和当前结果以证明模型有效、增强多维扫描等。如有任何问题/问题/建议,可通过 asaf.rvd@gmail.com 联系。
许可证
该项目遵循 GNU 通用公共许可证第 3 版或任何更高版本。