Repolode
Dzy-HW-XD

Dzy-HW-XD/a-share-quant-selector

Python quant stock-picking tool for China's A-share market that implements a bowl-rebound strategy, with K-line charts, a Web UI, and DingTalk alerts.

Stars
510
Forks
109
Open issues
3
Last commit
2 months ago

Repolode describes open-source projects and does not give investment advice. Trading and investing can lose money: assess the risk yourself and follow the laws where you live before using this project.

What is it?

A-Share Quant Selector is a Python system for screening stocks on China's A-share market using akshare for market data. It implements a "bowl rebound" strategy that looks for stocks in an uptrend that recently had a high-volume bullish candle and now sit in an oversold KDJ zone, then sorts them into categories such as price sitting between the short-term trend line and the bull-bear line.

The pipeline covers data download, incremental daily updates, strategy execution, and notification. Each selected stock gets a K-line chart with trend lines and volume bars, and results are pushed to a DingTalk group with built-in rate limiting and retry backoff. Optional B1 pattern matching ranks candidates by similarity to ten historical cases across trend structure, volume, price shape and KDJ state. A Flask web interface lets you browse stock data, charts and indicators, and edit strategy parameters online.

The strategy is defined as a class with a clear base interface, so new strategies can be added by subclassing and registering parameters in YAML. The project is for learning and research, and the README states it does not constitute investment advice.

Key features

  • 01Bowl-rebound strategy filtering on uptrend, high-volume bullish candles and oversold KDJ
  • 02Automatic removal of ST, delisting-risk and abnormal stocks
  • 03K-line charts with trend lines and volume sent to DingTalk
  • 04B1 pattern matching ranks candidates by similarity to historical cases
  • 05Flask web UI for browsing stock data, indicators and strategy parameters
  • 06Strategy parameters configurable in YAML, with a base class for adding new strategies

Use cases

  • Screening A-share stocks daily after market close with scheduled runs
  • Studying a technical-analysis strategy with akshare data and pandas indicators
  • Receiving daily candidate lists and charts in a DingTalk group
  • Tuning strategy parameters and reviewing signals through the web interface

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/Dzy-HW-XD/a-share-quant-selector.git
  2. 2

    Install Python dependencies

    pip3 install -r requirements.txt
  3. 3

    Fetch the initial full stock data (six years of history)

    python3 main.py init
  4. 4

    Start the Web interface (default port 5000)

    python3 main.py web

Things to know

  • Targets only China's A-share market and relies on akshare for data.
  • The initial data fetch downloads six years of history, which takes time.
  • The project is for learning and research only and is not investment advice.

Topics

#quant-trading#stock-screener#akshare#a-share#python#technical-analysis#dingtalk

FAQ

What is a-share-quant-selector?
Python quant stock-picking tool for China's A-share market that implements a bowl-rebound strategy, with K-line charts, a Web UI, and DingTalk alerts. A-Share Quant Selector is a Python system for screening stocks on China's A-share market using akshare for market data. It implements a "bowl rebound" strategy that looks for stocks in an uptrend that recently had a high-volume bullish candle and now sit in an oversold KDJ zone, then sorts them into categories such as price sitting between the short-term trend line and the bull-bear line.
Is a-share-quant-selector free to use? What license does it have?
a-share-quant-selector is open source under the MIT license. Check the license terms before using it in commercial products.
Is a-share-quant-selector still maintained?
Updated within 6 months. The last commit to a-share-quant-selector was on Sep 8, 2026.
What can I use a-share-quant-selector for?
Screening A-share stocks daily after market close with scheduled runs Studying a technical-analysis strategy with akshare data and pandas indicators Receiving daily candidate lists and charts in a DingTalk group Tuning strategy parameters and reviewing signals through the web interface
How do I install a-share-quant-selector?
Clone the repository: git clone https://github.com/Dzy-HW-XD/a-share-quant-selector.git Install Python dependencies: pip3 install -r requirements.txt Fetch the initial full stock data (six years of history): python3 main.py init Start the Web interface (default port 5000): python3 main.py web
Where can I get a-share-quant-selector?
The source code and installation instructions are on GitHub: https://github.com/Dzy-HW-XD/a-share-quant-selector

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects