计算美股、A股市场宽度
使用 MySQL 存储数据,目前美股和A股各有两张表,具体表接口参加 config/sql/xxx.sql 文件,以A股为例:
zh_stocks_info.sql 生成 zh_stocks_info 表: 股票基础数据
zh_stocks_d.sql 生成 zh_stocks_d 表: 日线周期数据
zh_stocks_sector_sw_d.sql 生成 计算市场宽度依赖的视图
tmp_zh_stocks_sw_sector_d
zh_stocks_sector_sw_d
-
- docker中运行mysql
- docker中运行mysql
docker pull mysql
docker run -e MYSQL_ROOT_PASSWORD=233233 -p 3306:3306 -v /home/pluswu/Data/mysql:/var/lib/mysql -d mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
-
- 创建数据库和表
- 创建数据库和表
mysql -u root -P 3306 -h 0.0.0.0 -p < create_db.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < us_stocks_d.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < us_stocks_info.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < us_stocks_sector_d.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < zh_stocks_d.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < zh_stocks_info.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < zh_stocks_sector_sw_d.sql
mysql -u root -P 3306 -h 0.0.0.0 -D stocks -p < zh_stocks_industries_d.sql
A 股使用 Tushare 获取,欢迎使用 https://tushare.pro/register?reg=296500 注册邀请链接帮我加积分。
pip install tushare
申请之后记得替换 config.conf 中的 token 配置项。
美股使用 yfinance 获取:
pip install yfinance
其他库依赖:
- opendatatools
- requests
- bs4
- pandas
- TA-Lib
遇到什么安装什么即可。。。
-
- 获取 A 股全市场股票基本信息:
python task/zh_get_info.py
-
- 计算 A 股市场宽度图表:
python task/zh_get_daily.py
获取数据时间比较久,请耐心等待,预计 1-2 个小时。
-
- 示例:
注意:美股数据获取最好使用科学上网。
-
- 获取美股全市场股票基本信息:
python task/us_get_info.py
-
- 计算 美股标普500 市场宽度图表:
python task/us_get_daily.py
获取数据时间比较久,请耐心等待,预计 1-2 个小时。
-
- 美股示例在
data/Market-Breadth-US.jpg
- 美股示例在
在计算过程中该程序已经计算了全市场股票的 破线、交叉、拐头 等数据,您可以用 sql 在 mysql 中自行分析。
- 微信:
- 支付宝: