Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
This commit is contained in:
TIANHE
2026-01-06 01:34:37 +08:00
parent 6754d0cf37
commit 355f5c5ef1
5 changed files with 465 additions and 372 deletions
+82 -34
View File
@@ -1,68 +1,116 @@
# Code of Conduct
QuantDinger is an open, inclusive, and respectful community. We expect all participants to help maintain a harassment-free experience for everyone.
QuantDinger is a technical, builder-first open-source project.
We value clear thinking, respectful collaboration, and long-term credibility.
This Code of Conduct exists to ensure that all contributors and users
can participate in a professional, constructive environment.
---
## 1) Our Pledge
## 1) Our Commitment
We pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
We are committed to providing a harassment-free and respectful experience
for everyone involved in the QuantDinger community, regardless of:
- age, gender identity, or expression
- sexual orientation
- disability or medical condition
- ethnicity, nationality, or religion
- level of experience or background
Participation in this project requires mutual respect and good faith.
---
## 2) Our Standards
## 2) Expected Behavior
Examples of behavior that contributes to a positive environment include:
We expect all participants to:
- Being respectful and kind
- Being open to feedback and different viewpoints
- Focusing on what is best for the community and users
- Showing empathy towards other community members
- Communicate clearly and respectfully
- Focus discussions on ideas, code, and design — not individuals
- Be open to technical critique and alternative viewpoints
- Assume good intent in others unless clearly proven otherwise
- Keep discussions relevant and constructive
Examples of unacceptable behavior include:
- Harassment, intimidation, or discrimination
- Insults or derogatory comments
- Trolling, personal attacks, or sustained disruption
- Publishing others private information without explicit permission
- Sexual language or imagery in non-appropriate contexts
Disagreement is normal.
Personal attacks are not.
---
## 3) Scope
## 3) Unacceptable Behavior
This Code of Conduct applies to all community spaces, including:
The following behaviors are not tolerated:
- Harassment, discrimination, or intimidation of any kind
- Personal attacks, insults, or derogatory comments
- Trolling, bad-faith arguments, or repeated disruption
- Publishing private information without explicit permission
- Sexualized language or imagery in inappropriate contexts
- Persistent off-topic or promotional spam
---
## 4) Scope
This Code of Conduct applies to all official QuantDinger spaces, including:
- GitHub issues, pull requests, discussions, and code reviews
- Any official community channels linked from this repository (e.g., Telegram/Discord)
- Project-related events and communications
- Any community channels linked from this repository
- Project-related communication and collaboration spaces
---
## 4) Reporting
## 5) Reporting Issues
If you experience or witness unacceptable behavior, please report it as soon as possible.
If you experience or witness behavior that violates this Code of Conduct,
please report it through one of the following channels:
Preferred channels (choose one):
1. **GitHub**
Open an issue labeled `conduct`.
Please avoid including sensitive or private information.
1. GitHub: open an issue labeled **conduct** (do not include sensitive private info).
2. Email: contact the maintainers via the email listed in `README.md`.
2. **Email**
Contact the project maintainer via the email listed in `README.md`.
If there is an immediate safety risk, please contact your local emergency services first.
If there is an immediate safety concern, contact your local emergency services.
All reports will be reviewed seriously and confidentially.
---
## 5) Enforcement
## 6) Enforcement
Project maintainers are responsible for clarifying and enforcing our standards of acceptable behavior. They may take any action they deem appropriate, including:
Project maintainers are responsible for enforcing this Code of Conduct.
- Warning
- Temporary ban from community spaces
- Permanent ban from community spaces
- Reverting/rejecting contributions that violate this Code of Conduct
Actions may include, but are not limited to:
- Private warning or clarification
- Temporary restriction from community participation
- Permanent removal from project spaces
- Rejection or reversal of contributions
Enforcement decisions are made to protect the project
and its contributors, not to punish individuals.
---
## 6) Attribution
## 7) Maintainer Discretion
This document is inspired by the Contributor Covenant and common open-source community standards.
Maintainers reserve the right to moderate discussions
and take action in the interest of:
- project integrity
- contributor safety
- long-term community health
Good faith participation is always welcome.
Disruptive behavior is not.
---
## 8) Attribution
This Code of Conduct is informed by widely adopted open-source standards,
including the Contributor Covenant, and adapted for QuantDingers
engineering-focused environment.
+119 -72
View File
@@ -1,42 +1,106 @@
# Contributing
# Contributing to QuantDinger
Thanks for your interest in contributing to **QuantDinger**! This guide explains how to report issues, propose changes, and submit pull requests.
Thanks for your interest in contributing to **QuantDinger**.
> 🌟 **Want to join our DAO community?** Check out [CONTRIBUTORS.md](CONTRIBUTORS.md) to learn about early contributor rewards, including QDT governance token airdrops!
QuantDinger is a **local-first, private AI-driven quantitative trading workspace**.
It is built for people who care about:
- data sovereignty
- local execution
- transparent systems
- engineering over hype
This document explains **how to contribute** and **what contribution means here**.
---
## 1) Quick links
## ⚠️ Please Read First
- **Issues**: use GitHub Issues for bugs and feature requests.
- **Discussions**: use GitHub Discussions for Q&A and ideas.
- **Community**: official channels are linked in `README.md` (Telegram/Discord).
QuantDinger is **not a DAO**.
There is **no token**, **no airdrop**, and **no financial incentive** at this stage.
If you are looking for short-term rewards, promotions, or token speculation,
this project is probably **not a good fit**.
If you are interested in:
- building credible infrastructure
- publishing real work under your name
- shaping an early-stage system with long-term value
you are very welcome here.
---
## 2) Ways to contribute
## 🧭 What Contribution Means
- **Report bugs**: provide steps to reproduce plus logs/screenshots.
- **Request features**: describe the use case, expected behavior, and alternatives.
- **Improve docs**: fix typos, clarify setup, add examples.
- **Submit code**: bug fixes, refactors, and new features.
Contributing to QuantDinger means creating **public, verifiable work**.
Your contributions:
- are attributed publicly on GitHub
- can be referenced in your resume or portfolio
- remain valuable to you beyond this project
This is a **builder-first environment**.
---
## 3) Before you start
## 🧑‍💻 Ways to Contribute
- Please read and follow [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md).
- Keep changes focused and small when possible (easier review and safer merges).
- If you plan a large change, open a discussion/issue first to align on design.
### 1) Core Engineering
- Python strategy engine
- execution logic
- AI / LLM agent workflows
- backtesting and data pipelines
Small, focused improvements are preferred.
---
## 4) Development setup
### 2) Strategy & Research
- example strategies
- research notebooks
- execution experiments
- performance analysis
This repo contains:
This is a good place to demonstrate how you think.
---
### 3) Documentation & Explanation
- tutorials and setup guides
- architecture explanations
- design rationale
Clear explanations matter as much as good code.
---
### 4) Content & Advocacy
- technical blog posts
- demo videos
- system breakdowns
- honest reviews or critiques
You are not “marketing”.
You are explaining something real.
---
## 🔗 Communication Channels
- **Issues**: bug reports and feature requests
- **Discussions**: questions, ideas, and design conversations
- **Community**: official links are listed in `README.md`
If you plan a large change, please open a discussion first.
---
## 🛠️ Development Setup
This repository contains:
- `backend_api_python/`: Flask backend + strategy runtime
- `quantdinger_vue/`: Vue 2 frontend
- `quantdinger_vue/`: Vue frontend
### Backend (Python)
@@ -57,84 +121,67 @@ npm run serve
---
## 5) Branching & PR workflow
## 🌿 Branching & Pull Requests
### Branch naming
Use a clear prefix:
- `fix/xxx` — bug fixes
- `feat/xxx` — new features
- `docs/xxx` — documentation
- `chore/xxx` — maintenance
- `fix/xxx` for bug fixes
- `feat/xxx` for new features
- `docs/xxx` for documentation
- `chore/xxx` for maintenance tasks
### Pull request guidelines
### Pull requests
Please include:
1. Fork the repo and create a new branch from `main`.
2. Make your changes with clear, focused commits.
3. Open a PR with:
- What changed and why
- Screenshots/GIFs for UI changes
- How to test (commands, steps)
- Backward compatibility notes (if any)
- what changed and why
- how to test
- screenshots/GIFs for UI changes (if applicable)
- backward compatibility notes (if any)
Keep PRs focused and reviewable.
---
## 6) Commit messages
## 🧪 Testing & Verification
Recommended format (similar to Conventional Commits):
We do not enforce a single test command yet. Please at least:
- `feat: ...`
- `fix: ...`
- `docs: ...`
- `refactor: ...`
- `chore: ...`
- **Backend**: run the API locally and verify affected endpoints
- **Frontend**: run the dev server and verify affected pages/components
Bug fixes should include a minimal regression test when practical.
---
## 7) Coding guidelines
## 🔐 Security
### General
Please do not open public issues for security vulnerabilities.
- Prefer clarity over cleverness.
- Keep functions small and cohesive.
- Add comments only where necessary (the code should be the primary documentation).
For security reports, contact the maintainer via the email in README.md and include:
### Python
- Prefer explicit error handling and helpful error messages.
- Avoid storing secrets in code or committed files; use `.env`.
### Frontend
- Keep UI changes consistent with existing Ant Design Vue patterns.
- Avoid breaking i18n keys; reuse existing language keys where possible.
- description of the issue
- steps to reproduce
- impact assessment
---
## 8) Tests & verification
## 📜 License
We dont enforce a single test command across the whole monorepo yet. Please at least:
- Backend: run the API locally and verify affected endpoints
- Frontend: run the dev server and verify affected pages/components
If you add a bug fix, please add a minimal regression test when practical.
By contributing, you agree that your contributions will be licensed
under the project's license (see LICENSE).
---
## 9) Security
## 🧠 A Note on the Future
Please **do not** open public issues for security vulnerabilities.
QuantDinger may explore incentive or alignment mechanisms in the future.
Nothing is promised, scheduled, or guaranteed.
For security reports, contact the maintainers via the email in `README.md` and include:
What is guaranteed:
- A description of the issue
- Steps to reproduce / proof of concept
- Impact assessment (what could an attacker do?)
- your work will be visible
- your name will be attached to it
- your contribution will remain yours
---
## 10) License
By contributing, you agree that your contributions will be licensed under this projects license (see `LICENSE`).
Build carefully. Build openly. Build things that last.
+83 -187
View File
@@ -1,242 +1,138 @@
<div align="center">
# Contributing to QuantDinger
# 🌟 Join the QuantDinger DAO Community
QuantDinger is a **local-first, private AI-driven quantitative trading workspace**.
**Building the Future of Decentralized Quantitative Trading Together**
It is designed for people who care about:
- data sovereignty
- local execution
- transparent systems
- engineering over hype
[![Telegram](https://img.shields.io/badge/Telegram-Join%20Us-26A5E4?style=for-the-badge&logo=telegram)](https://t.me/quantdinger)
[![Discord](https://img.shields.io/badge/Discord-Community-5865F2?style=for-the-badge&logo=discord)](https://discord.gg/vwJ8zxFh9Q)
[![GitHub](https://img.shields.io/badge/GitHub-Contribute-181717?style=for-the-badge&logo=github)](https://github.com/brokermr810/QuantDinger)
This project is still early, but it is **real**:
real code, real users, real execution.
</div>
We welcome contributors who want to help build something long-term.
---
## 🎯 Our Vision
## ⚠️ Important Note (Please Read)
**QuantDinger** is more than just a trading platform—it's a **community-driven ecosystem** built on the principles of **decentralized autonomous organization (DAO)** governance. We believe that the best products are built by the people, for the people.
QuantDinger is **not a DAO**.
There is **no token**, **no airdrop**, and **no financial incentive** at this stage.
As we embark on this journey to democratize quantitative trading and AI-powered market analysis, we're looking for passionate individuals who share our vision and want to help shape the future of decentralized finance.
If you are looking for short-term rewards, promotions, or token speculation,
this project is probably **not a good fit**.
If you are interested in:
- building credible infrastructure
- publishing real work under your name
- shaping an early-stage system
then you are very welcome here.
---
## 🚀 Why Join Us?
## 🧭 What Contribution Means Here
### **Early Contributor Rewards**
Contributing to QuantDinger means creating **public, verifiable work**.
As a token of appreciation for early supporters, all contributors who join us during the initial phase will receive **QDT (QuantDinger Token)** governance tokens through an airdrop. These tokens will:
Your contributions:
- are credited publicly
- can be referenced in your resume or portfolio
- remain yours, even outside this project
- ✅ Grant **voting rights** in DAO governance decisions
- ✅ Provide **access to premium features** and early releases
- ✅ Enable **revenue sharing** as the ecosystem grows
- ✅ Serve as a **recognition** of your foundational contribution
**The earlier you join, the greater your impact—and the more meaningful your reward.**
### **Community-Driven Growth**
Unlike traditional projects, QuantDinger is built **by the community, for the community**. Your voice matters. Your contributions shape the product. Together, we're not just building software—we're building a movement.
This is a **builder-first** environment.
---
## 👥 We're Looking For
## 🧑‍💻 Areas You Can Contribute To
We welcome contributors from all backgrounds and skill levels. Every contribution, no matter how small, makes a difference. Here are the roles we're actively recruiting:
### 1. Core Engineering
- Python strategy engine
- execution logic
- AI / LLM agent workflows
- backtesting and data pipelines
### 💻 **Technical Contributors**
#### **Backend Developers**
- Python/Flask expertise
- Experience with trading APIs, data processing, or AI/LLM integration
- Help improve strategy execution engine, data sources, or API endpoints
- **Impact**: Core functionality that powers the entire platform
#### **Frontend Developers**
- Vue.js, React, or modern frontend frameworks
- UI/UX design and implementation
- Help build intuitive interfaces for trading, analysis, and strategy management
- **Impact**: The face of QuantDinger—what users see and interact with
#### **DevOps & Infrastructure**
- Docker, CI/CD, cloud deployment
- Help optimize build processes, deployment pipelines, and infrastructure
- **Impact**: Ensure reliability, scalability, and smooth operations
#### **Quality Assurance & Testing**
- Test automation, bug reporting, user acceptance testing
- Help maintain code quality and ensure a bug-free experience
- **Impact**: User trust and platform stability
You dont need to touch everything.
One focused improvement is enough.
---
### 📚 **Documentation & Content**
### 2. Strategy & Research
- example strategies
- research notebooks
- execution experiments
- performance analysis
#### **Technical Writers**
- API documentation, user guides, tutorials
- Help make QuantDinger accessible to users of all technical levels
- **Impact**: Lower the barrier to entry and improve user experience
#### **Content Creators**
- Video tutorials, blog posts, case studies
- Help educate the community about quantitative trading and QuantDinger features
- **Impact**: Knowledge sharing and community growth
#### **Translators**
- Multi-language support (we currently support 10+ languages)
- Help make QuantDinger accessible to global audiences
- **Impact**: Global reach and inclusivity
If you want to **show how you think**, this is a great place to do it.
---
### 🌐 **Community & Growth**
### 3. Documentation & Explanation
- tutorials
- architecture explanations
- setup guides
- design rationale
#### **Community Managers**
- Engage with users on Telegram, Discord, and other channels
- Organize events, AMAs, and community activities
- Foster a welcoming and helpful community environment
- **Impact**: Build a vibrant, engaged community
#### **Social Media & Marketing**
- Content creation for Twitter/X, LinkedIn, Reddit, and other platforms
- Brand awareness campaigns and growth strategies
- **Impact**: Expand our reach and attract new users
#### **Influencers & Ambassadors**
- Share QuantDinger with your audience
- Create content, tutorials, or reviews
- **Impact**: Trusted voices that drive adoption
Good explanations are as valuable as good code.
---
### 🤝 **Partnerships & Ecosystem**
### 4. Content & Advocacy
- technical blog posts
- demo videos
- system breakdowns
- honest reviews or critiques
#### **Exchange & Broker Partnerships**
- Connect QuantDinger with trading platforms and brokers
- Negotiate API access, rebates, or integration opportunities
- **Impact**: Expand trading capabilities and user benefits
#### **Data Provider Partnerships**
- Integrate new data sources (market data, news feeds, etc.)
- Establish partnerships with financial data providers
- **Impact**: Richer data and better analysis capabilities
#### **Developer Ecosystem**
- Build plugins, integrations, or third-party tools
- Create strategy templates or market analysis tools
- **Impact**: Extend QuantDinger's capabilities beyond core features
You are not “marketing”.
You are **explaining something real**.
---
### 🏛️ **DAO Governance & Strategy**
## 🏷️ Recognition
#### **Governance Contributors**
- Participate in DAO proposals and voting
- Help design governance mechanisms and tokenomics
- Contribute to strategic planning and roadmap decisions
- **Impact**: Shape the future direction of QuantDinger
All meaningful contributions are acknowledged through:
- GitHub attribution
- documentation credits
- official mentions (docs / demos / videos)
#### **Legal & Compliance**
- Navigate regulatory requirements
- Help ensure compliance across different jurisdictions
- **Impact**: Protect the project and enable sustainable growth
#### **Financial & Treasury Management**
- Help manage DAO treasury and token distribution
- Contribute to financial planning and budgeting
- **Impact**: Ensure long-term sustainability
We care about **signal**, not volume.
---
## 🎁 How to Get Started
## 🚀 How to Start
### **Step 1: Join Our Community**
1. Star the repository
2. Read the README and roadmap
3. Open an issue or discussion describing:
- what you want to improve
- why it matters
4. Submit a PR or contribution
- **Telegram**: [Join our Telegram group](https://t.me/quantdinger)
- **Discord**: [Join our Discord server](https://discord.gg/vwJ8zxFh9Q)
- **GitHub**: [Star and watch the repository](https://github.com/brokermr810/QuantDinger)
### **Step 2: Introduce Yourself**
Share your background, interests, and how you'd like to contribute in our community channels. We're excited to meet you!
### **Step 3: Start Contributing**
- **Code**: Check out [CONTRIBUTING.md](CONTRIBUTING.md) for development guidelines
- **Documentation**: Fix typos, improve guides, or add examples
- **Community**: Help answer questions, report bugs, or suggest features
- **Content**: Create tutorials, videos, or articles
### **Step 4: Track Your Contributions**
We maintain a registry of all contributions. Make sure your contributions are visible so we can properly recognize and reward your efforts.
Small, clear contributions > big promises.
---
## 📊 Contribution Recognition
## 🧠 A Note on the Future
All contributions are tracked and recognized. Early contributors will be:
QuantDinger may explore incentive mechanisms in the future.
Nothing is promised, scheduled, or guaranteed.
1. **Listed** in our contributors hall of fame
2. **Awarded** QDT governance tokens based on contribution value
3. **Granted** special roles and permissions in community channels
4. **Invited** to exclusive events and early access programs
What *is* guaranteed:
- your work will be visible
- your name will be attached to it
- your contribution will remain valuable to you
---
## 🤔 Frequently Asked Questions
## 📬 Contact & Discussion
### **Q: Do I need to be an expert to contribute?**
**A:** Not at all! We welcome contributors of all skill levels. Even small contributions like fixing typos, improving documentation, or answering community questions are valuable.
- GitHub Discussions (preferred)
- Issues for technical questions
### **Q: How are QDT tokens distributed?**
**A:** Token distribution is based on the value and impact of your contributions. We use a transparent scoring system that considers code contributions, community engagement, content creation, and other factors.
### **Q: Can I contribute part-time?**
**A:** Absolutely! We understand that everyone has different availability. Contribute as much or as little as you can—every bit helps.
### **Q: What if I'm not technical?**
**A:** There are many non-technical ways to contribute: community management, content creation, translation, marketing, partnerships, and more. Your skills are valuable!
### **Q: How do I track my contributions?**
**A:** We maintain a public registry of contributions. Make sure your GitHub account is linked, and keep track of your community activities.
If you want to contribute seriously, start with an issue.
If the fit is right, the collaboration will grow naturally.
---
## 💬 Get in Touch
Have questions? Want to discuss a specific contribution idea? We'd love to hear from you!
- **Email**: [brokermr810@gmail.com](mailto:brokermr810@gmail.com)
- **Telegram**: [@quantdinger](https://t.me/quantdinger)
- **Discord**: [Join our server](https://discord.gg/vwJ8zxFh9Q)
- **GitHub Discussions**: [Start a discussion](https://github.com/brokermr810/QuantDinger/discussions)
---
## 🌈 Our Commitment
We are committed to:
-**Transparency**: All decisions and processes are open and transparent
-**Fairness**: Contributions are recognized and rewarded fairly
-**Inclusivity**: Everyone is welcome, regardless of background or experience
-**Respect**: We maintain a respectful and supportive community environment
---
<div align="center">
## **Together, We Build the Future**
**QuantDinger is not just a project—it's a movement. Join us and be part of the decentralized trading revolution.**
[⭐ Star us on GitHub](https://github.com/brokermr810/QuantDinger) · [💬 Join Telegram](https://t.me/quantdinger) · [🎮 Join Discord](https://discord.gg/vwJ8zxFh9Q)
---
*"The best time to plant a tree was 20 years ago. The second best time is now."*
**Let's build something amazing together. 🚀**
</div>
**Build carefully. Build openly. Build things that last.**
+79 -65
View File
@@ -15,14 +15,14 @@
<br/>
<h3 align="center">
⚡ Run your own local TradingView + AI quant research lab in 5 minutes.
Local-first quantitative trading infrastructure
</h3>
<p align="center">
<strong>🤖 AI-Native · 🔒 Privacy-First · 🚀 All-in-One Quant Workspace</strong>
<strong>🔒 Privacy-First · 🛠️ Self-Hosted · 📊 Multi-Market</strong>
</p>
<p align="center">
<i>The Next-Gen Local Quant Platform: Multi-Market Data, AI Research, Visual Backtesting, and Automated Trading.</i>
<i>Run your own trading infrastructure: data, analysis, backtesting, and execution.</i>
</p>
<p align="center">
@@ -49,32 +49,34 @@
---
<div align="center">
### 🌟 **Join the QuantDinger DAO Community - Early Contributors Get QDT Tokens!**
[![Join Contributors](https://img.shields.io/badge/🌟_Join_Contributors-Get_QDT_Tokens-FF6B6B?style=for-the-badge&logo=github&logoColor=white)](CONTRIBUTORS.md)
[![DAO Community](https://img.shields.io/badge/DAO_Community-Build_Together-4ECDC4?style=for-the-badge&logo=handshake&logoColor=white)](CONTRIBUTORS.md)
**We're building a decentralized, community-driven trading platform. Early contributors receive QDT governance tokens!**
[📖 Learn More](CONTRIBUTORS.md) · [💬 Join Telegram](https://t.me/quantdinger) · [🎮 Join Discord](https://discord.gg/vwJ8zxFh9Q)
</div>
---
## 📖 Introduction
**QuantDinger** is a **Local-First** quantitative trading workspace designed for traders, researchers, and geeks.
### What is QuantDinger?
Unlike expensive SaaS platforms, QuantDinger returns **data ownership** to you. It features a built-in **LLM-based Multi-Agent Research Team** that autonomously gathers financial intelligence from the web, combines it with local market data, generates professional analysis reports, and seamlessly integrates with your strategy development, backtesting, and live trading workflows.
QuantDinger is a **local-first, privacy-first quantitative trading infrastructure**. It runs entirely on your machine, giving you full control over your strategies, trading data, and API keys.
### Why Local-First?
Unlike SaaS platforms that lock your data and strategies in the cloud, QuantDinger runs locally. Your strategies, trading logs, API keys, and analysis results stay on your machine. No vendor lock-in, no subscription fees, no data exfiltration.
### Who is this for?
QuantDinger is built for traders, researchers, and engineers who:
- Value data sovereignty and privacy
- Want transparent, auditable trading infrastructure
- Prefer engineering over marketing
- Need a complete workflow: data, analysis, backtesting, and execution
### Core Features
QuantDinger includes a built-in **LLM-based multi-agent research system** that gathers financial intelligence from the web, combines it with local market data, and generates analysis reports. This integrates with strategy development, backtesting, and live trading workflows.
### Core Value
- **🛡️ Privacy First**: All strategies, trading logs, and API keys are stored locally in your SQLite database.
- **🧠 AI Empowered**: Not just code completion, but a real AI Research Analyst (powered by OpenRouter/LLM).
- **⚡ Multi-Market**: Native support for **Crypto**, **US Stocks**, **CN/HK Stocks**, **Forex**, and **Futures**.
- **🔌 Out-of-the-Box**: One-click deployment via Docker. No complex environment setup required.
- **Privacy First**: All strategies, trading logs, and API keys are stored locally in SQLite
- **AI-Powered Analysis**: LLM-based research agents (OpenRouter/LLM) for market analysis
- **Multi-Market Support**: Cryptocurrency, US stocks, CN/HK stocks, forex, and futures
- **Docker Deployment**: One-command setup with Docker Compose
---
@@ -134,18 +136,22 @@ Unlike expensive SaaS platforms, QuantDinger returns **data ownership** to you.
## ✨ Key Features
### 1. Universal Data Engine
Stop worrying about data APIs. QuantDinger features a powerful Data Source Factory pattern:
- **Crypto**: **Direct API connection** for trading (10+ exchanges) combined with **CCXT** for market data (100+ sources).
- **Stocks**: Integrates Yahoo Finance, Finnhub, Tiingo (US), and AkShare (CN/HK).
- **Futures/Forex**: Supports OANDA and major futures data sources.
- **Proxy Support**: Built-in proxy configuration for restricted network environments.
QuantDinger provides a unified data interface across multiple markets:
- **Cryptocurrency**: Direct API connections for trading (10+ exchanges) and CCXT integration for market data (100+ sources)
- **Stocks**: Yahoo Finance, Finnhub, Tiingo (US stocks), and AkShare (CN/HK stocks)
- **Futures/Forex**: OANDA and major futures data sources
- **Proxy Support**: Built-in proxy configuration for restricted network environments
### 2. AI Multi-Agent Research
Your tireless team of analysts:
- **Coordinator Agent**: Decomposes tasks and manages workflows.
- **Research Agent**: Performs full-web searches (Google/Bing) for macro news.
- **Crypto/Stock Agent**: Specializes in technical and capital flow analysis for specific markets.
- **Report Generation**: Automatically produces structured Daily/Weekly research reports.
The system includes a multi-agent workflow for market analysis:
- **Coordinator Agent**: Task decomposition and workflow management
- **Research Agent**: Web search (Google/Bing) for macro news and events
- **Market-Specific Agents**: Technical and capital flow analysis for crypto and stocks
- **Report Generation**: Structured daily/weekly research reports
### 2.1 🧠 Memory-Augmented Agents (Local RAG + Reflection Loop)
QuantDingers agents dont start from scratch every time. The backend includes a **local memory store** and an optional **reflection/verification loop**:
@@ -238,37 +244,35 @@ score = w_{sim}\cdot sim + w_{recency}\cdot recency + w_{returns}\cdot returns\_
Config lives in `.env` (see `backend_api_python/env.example`): `ENABLE_AGENT_MEMORY`, `AGENT_MEMORY_TOP_K`, `AGENT_MEMORY_ENABLE_VECTOR`, `AGENT_MEMORY_HALF_LIFE_DAYS`, and `ENABLE_REFLECTION_WORKER`.
### 3. Robust Strategy Runtime
- **Thread-Based Executor**: Independent thread pool management for strategy execution.
- **Auto-Restore**: Automatically resumes running strategies after system restarts.
- **Pending Order Worker**: Reliable background queue ensures precise signal execution and prevents slippage.
### 3. Strategy Runtime
### 4. Modern Tech Stack
- **Backend**: Python (Flask) + SQLite + Redis (Optional) — Simple, powerful, extensible.
- **Frontend**: Vue 2 + Ant Design Vue + KlineCharts/ECharts — Responsive and interactive.
- **Deployment**: Docker Compose orchestration.
- **Thread-Based Executor**: Independent thread pool for strategy execution
- **Auto-Restore**: Resumes running strategies after system restarts
- **Order Queue**: Background worker for order execution
### 4. Tech Stack
- **Backend**: Python (Flask) + SQLite + Redis (optional)
- **Frontend**: Vue 2 + Ant Design Vue + KlineCharts/ECharts
- **Deployment**: Docker Compose
---
## 🏦 Supported Exchanges & Rebates
## 🔌 Supported Exchanges
QuantDinger supports **direct connection** to major cryptocurrency exchanges for low-latency execution, while using **CCXT** for broad market data coverage.
QuantDinger supports direct API connections to major cryptocurrency exchanges for execution, and uses CCXT for broad market data coverage.
> 💡 **Exclusive Benefits**: Create accounts through our partner links below to enjoy **reduced trading fees** and **exclusive bonuses**. It helps support the project at no extra cost to you!
### Direct API Support
| Exchange | Features | Sign Up Bonus |
|:--------:|:---------|:-------------:|
| <img src="https://img.shields.io/badge/Binance-F0B90B?style=for-the-badge&logo=binance&logoColor=white" height="35"/> | 🥇 **World's Largest**<br/>Spot, Futures, Margin | <a href="https://www.bmwweb.ac/referral/earn-together/refer2earn-usdc/claim?hl=zh-CN&ref=GRO_28502_9OSOJ"><img src="https://img.shields.io/badge/💰_Save_20%25_Fees-FF4D4F?style=for-the-badge" height="38" style="border-radius:10px; box-shadow:0 8px 18px rgba(255,77,79,.35);"/></a> |
| <img src="https://img.shields.io/badge/OKX-000000?style=for-the-badge&logo=okx&logoColor=white" height="35"/> | 🚀 **Web3 & Derivatives**<br/>Spot, Perpetual, Options | <a href="https://www.bjwebptyiou.com/join/14449926"><img src="https://img.shields.io/badge/🎁_Get_Mystery_Box-722ED1?style=for-the-badge" height="38" style="border-radius:10px; box-shadow:0 8px 18px rgba(114,46,209,.35);"/></a> |
| <img src="https://img.shields.io/badge/Bitget-00C7B1?style=for-the-badge&logoColor=white" height="35"/> | 👥 **Social Trading**<br/>Copy Trading, Futures | <a href="https://share.glassgs.com/u/H8XZGS71"><img src="https://img.shields.io/badge/🔥_Claim_Bonus-FA8C16?style=for-the-badge" height="38" style="border-radius:10px; box-shadow:0 8px 18px rgba(250,140,22,.35);"/></a> |
| Exchange | Markets |
|:--------:|:---------|
| Binance | Spot, Futures, Margin |
| OKX | Spot, Perpetual, Options |
| Bitget | Spot, Futures, Copy Trading |
<br>
**Also Supported (Direct/CCXT):**
| <img src="https://img.shields.io/badge/Bybit-F7931A?style=for-the-badge&logoColor=white"/> | <img src="https://img.shields.io/badge/Gate.io-17E6A1?style=for-the-badge&logoColor=white"/> | <img src="https://img.shields.io/badge/Kraken-5741D9?style=for-the-badge&logo=kraken&logoColor=white"/> | <img src="https://img.shields.io/badge/KuCoin-24AE8F?style=for-the-badge&logoColor=white"/> | <img src="https://img.shields.io/badge/HTX-1A73E8?style=for-the-badge&logoColor=white"/> |
|:---:|:---:|:---:|:---:|:---:|
### Also Supported via CCXT
Bybit, Gate.io, Kraken, KuCoin, HTX, and 100+ other exchanges for market data.
---
@@ -619,21 +623,21 @@ Licensed under the **Apache License 2.0**. See `LICENSE`.
## 🤝 Community & Support
Join our global community for strategy sharing and technical support:
- **🌟 Want to Contribute?**: [Join as a Contributor](CONTRIBUTORS.md) - Early contributors receive QDT governance tokens!
- **Telegram (Group)**: [Join QuantDinger Telegram Group](https://t.me/quantdinger)
- **Contributing**: [Contributing Guide](CONTRIBUTING.md) · [Contributors](CONTRIBUTORS.md)
- **Telegram**: [QuantDinger Group](https://t.me/quantdinger)
- **Discord**: [Join Server](https://discord.gg/vwJ8zxFh9Q)
- **📺 Video Demo**: [Watch Project Introduction Video](https://youtu.be/HPTVpqL7knM)
- **📺 Video Demo**: [Project Introduction](https://youtu.be/HPTVpqL7knM)
- **YouTube**: [@quantdinger](https://youtube.com/@quantdinger)
- **Email**: [brokermr810@gmail.com](mailto:brokermr810@gmail.com)
- **GitHub Issues**: [Report bugs / Request features](https://github.com/brokermr810/QuantDinger/issues)
---
## ☕ Support the Project
## 💰 Project Sustainability
If QuantDinger helps you profit, consider buying the developers a coffee. Your support keeps the project alive!
QuantDinger is open-source and free to use. If you find it useful, here are ways to support ongoing development:
### Direct Donations
**ERC-20 / BEP-20 / Polygon / Arbitrum**
```
@@ -642,11 +646,21 @@ If QuantDinger helps you profit, consider buying the developers a coffee. Your s
<img src="https://img.shields.io/badge/USDT-Accepted-26A17B?style=flat-square&logo=tether" alt="USDT">
<img src="https://img.shields.io/badge/ETH-Accepted-3C3C3D?style=flat-square&logo=ethereum" alt="ETH">
### Exchange Referral Links
If you're signing up for supported exchanges, using the links below provides referral benefits that help support the project. These are optional and do not affect your trading fees or account functionality.
| Exchange | Referral Link |
|:--------:|:-------------|
| Binance | [Sign up with referral](https://www.bmwweb.ac/referral/earn-together/refer2earn-usdc/claim?hl=zh-CN&ref=GRO_28502_9OSOJ) |
| OKX | [Sign up with referral](https://www.bjwebptyiou.com/join/14449926) |
| Bitget | [Sign up with referral](https://share.glassgs.com/u/H8XZGS71) |
---
### Commercial Services
### Professional Services
We offer professional services to help you get the most out of QuantDinger:
Professional services are available:
| Service | Description |
|---------|-------------|
+102 -14
View File
@@ -1,21 +1,109 @@
# Security Policy
## Supported Versions
QuantDinger is a **local-first, self-hosted quantitative trading system**.
Use this section to tell people about which versions of your project are
currently being supported with security updates.
Security is a core design principle of the project, but it is important to
understand the **responsibility boundaries** that come with self-hosted software.
| Version | Supported |
| ------- | ------------------ |
| 5.1.x | :white_check_mark: |
| 5.0.x | :x: |
| 4.0.x | :white_check_mark: |
| < 4.0 | :x: |
This document explains what we support, how to report vulnerabilities,
and what to expect from the process.
## Reporting a Vulnerability
---
Use this section to tell people how to report a vulnerability.
## 🔒 Supported Versions
Tell them where to go, how often they can expect to get an update on a
reported vulnerability, what to expect if the vulnerability is accepted or
declined, etc.
QuantDinger is under active development.
At this stage:
- The **`main` branch** is the only supported version for security updates.
- Older commits, forks, or modified deployments are **not actively supported**.
Users are strongly encouraged to stay up to date with the latest release
or commit when running QuantDinger in production environments.
---
## 🧠 Security Model & Scope
QuantDinger is designed to run **entirely under the users control**.
### In Scope
We consider the following areas in scope for security review:
- Source code vulnerabilities in this repository
- Authentication and authorization logic within QuantDinger
- Handling of API keys, secrets, and credentials by the application
- Strategy execution logic and isolation boundaries
- Default configuration security issues
### Out of Scope
The following are outside the scope of this security policy:
- Misconfigured user environments (OS, Docker, firewall, cloud host)
- Compromised user machines or infrastructure
- Third-party services, exchanges, or APIs
- Modified or unofficial builds of QuantDinger
---
## 📣 Reporting a Vulnerability
If you believe you have found a security vulnerability in QuantDinger,
we appreciate responsible disclosure.
### How to Report
Please **do not open a public GitHub issue** for security vulnerabilities.
Instead, report privately via email:
- **Email**: see the contact address listed in `README.md`
- **Subject**: `[Security] Brief description of the issue`
Please include:
- a clear description of the vulnerability
- steps to reproduce (if applicable)
- potential impact
- any suggested mitigations (optional)
---
## ⏱️ Response Expectations
We aim to:
- acknowledge reports within **72 hours**
- provide a preliminary assessment within **7 days**
Timelines may vary depending on the complexity and severity of the issue.
If a report is accepted, we will coordinate a fix and, when appropriate,
a responsible public disclosure.
---
## 🤝 Responsible Disclosure
We ask security researchers to:
- avoid exploiting vulnerabilities beyond proof of concept
- allow reasonable time for remediation before public disclosure
- act in good faith and with respect for users
We are happy to acknowledge responsible disclosures
in release notes or documentation, if desired.
---
## ⚠️ Disclaimer
QuantDinger is provided **as-is**, without warranty.
As a self-hosted system, users are responsible for:
- securing their own environments
- protecting API keys and credentials
- complying with applicable laws and regulations
---
Security is not a feature — it is a shared responsibility.
Thank you for helping keep QuantDinger safe.