Mooquant is a local-first trading analytics dashboard built with Tauri, React, Vite, FastAPI, QuestDB, and the Moomoo OpenAPI SDK. It is designed as a desktop-style dashboard for monitoring positions, pending orders, historical orders, funds, watchlists, quotes, and charts. The application also includes a historical candle downloader, a bot strategy trader for demo and live modes from the UI and CLI, a strategy tester, and bot execution logs.
The application uses Tauri as the desktop shell and Vite/React as the frontend, but the backend is intentionally kept as a normal FastAPI application. The FastAPI service is not bundled as a Tauri sidecar. During local development and normal use, the backend runs as a separate Python process from src-python, and the frontend connects to it over HTTP and Server-Sent Events.
QuestDB is used for time-series storage and query workloads, including chart candles, bot-related records, historical data, and backtest-related data. The backend uses QuestDB’s PostgreSQL-compatible endpoint for SQL access and QuestDB client configuration for writes. Mooquant also uses QuestDB materialized views to derive multiple timeframe tables for real-time charts from 1-minute and 1-month data subscriptions, reducing subscription quota usage.
Mooquant is under active development. The current repository is suitable for local development, experimentation, and self-hosted desktop usage. It is not packaged as a production trading product, and it should not be treated as financial advice or as a fully audited automated trading system.
See the Setup Guide for local installation, configuration, and development workflow.
See the User Guide for application features, screen workflows, and operational usage.
See Tauri Configuration Notes for desktop-shell configuration details.
See CLI Guide for backend CLI usage and example scripts.
Mooquant is a developer project for local trading analytics and experimentation. It may interact with broker APIs, account data, market data, order data, and strategy logic. Review all code before using it with real credentials or real trading permissions.
Mooquant is currently developed and tested only in my local environment: a Mac Mini with Apple Silicon, with QuestDB installed via Homebrew. Other operating systems, CPU architectures, QuestDB installation methods, packaging layouts, or deployment models may require additional configuration and are not currently tested by this project.
My brokerage is Moomoo Japan, and I only use the trading environment with the SecurityFirm setting set to FUTUJP. The app is highly optimized for Moomoo Japan. Each Moomoo broker has its own account structure, so the app will not work with other Moomoo brokers by default.
Nothing in this repository is financial advice. Trading involves risk, and automated or semi-automated tooling can create unexpected losses if misconfigured or used without supervision.
Mooquant is a personal, solo-developed project maintained for my own specific trading workflows and available development time.
Bug reports and feature requests are welcome through GitHub Issues. I will review them when time allows, but I cannot guarantee a response, timeline, implementation, troubleshooting help, or ongoing support.
Please do not use Issues for general support, setup assistance, brokerage configuration, trading advice, or help debugging your local environment.
I am not accepting external Pull Requests against this upstream repository. You are welcome to fork this repository and modify the code for your own personal needs.
If you find the project useful and would like to support its continued development, sponsorship is appreciated. Sponsorship may help me allocate more time to maintenance, documentation, improvements, and future development, but it does not create an obligation for support, custom features, issue prioritization, or Pull Request review.
MIT. See the LICENSE for more information.
