Commit Graph
23 Commits
Author SHA1 Message Date
TIANHE 88e19267eb release: finalize v5.0.1 backend 2026-07-18 14:59:18 +08:00
TIANHE a87ee6192f feat: harden backend contracts observability and delivery 2026-07-13 15:42:50 +08:00
TIANHE 90e60ffdea feat: split backend runtimes and add durable task workers 2026-07-13 03:47:59 +08:00
TIANHE e7e5064189 feat: prepare v5.0.1 beta backend 2026-07-13 02:44:50 +08:00
Dinger d6988cf108 v4.0.3
Signed-off-by: Dinger <quantdinger@gmail.com>
2026-06-28 17:28:58 +08:00
TIANHE 8b8429b7b8 v4.0.2
Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
2026-06-22 02:38:39 +08:00
TIANHE 234224a776 v4.0.1
Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
2026-06-19 02:49:33 +08:00
RheagalFire a3a70802eb feat: add LiteLLM as unified LLM provider 2026-06-02 23:14:37 +05:30
Dinger a1a51e9afc v3.0.22
Signed-off-by: Dinger <quantdinger@gmail.com>
2026-05-31 23:39:35 +08:00
DingerandCursor 2dd9fa0179 chore(deps): bump flask-cors 5.0.1 -> 6.0.0
Picks up three 2024 CVE fixes (CVE-2024-6839, CVE-2024-6844, CVE-2024-6866)
around path-regex specificity ordering, URL decoding, and case-insensitive
host/scheme matching. The one breaking change in 6.0.0 — path specificity
ordering when CORS is configured with `resources={"/path/.*": {...}}` — does
not affect us: app/__init__.py only passes a flat `origins=[...]` list to
`CORS()`, with no `resources=` mapping, no path regex, and no
`@cross_origin` decorators anywhere in the codebase.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-16 12:58:03 +08:00
VicJayandClaude Opus 4.7 160cc6c00f feat(broker): add Alpaca Markets adapter for US stocks, ETFs, and crypto
Mirrors the existing ibkr_trading/ module structure for consistency.
Alpaca complements IBKR for users who prefer:
- Zero commission on stocks/ETFs/crypto
- Stateless REST auth (no TWS/Gateway process to run)
- Unified client for stocks AND crypto
- Built-in paper trading at paper-api.alpaca.markets

What's included:
- backend_api_python/app/services/alpaca_trading/
  - __init__.py, client.py, symbols.py, README.md
  - AlpacaClient mirrors IBKRClient surface (connect, place_market_order,
    place_limit_order, cancel_order, get_account_summary, get_positions,
    get_open_orders, get_quote, get_connection_status)
  - Uses alpaca-py SDK (added to requirements.txt)
- backend_api_python/app/routes/alpaca.py
  - Endpoints mirror routes/ibkr.py: /status, /connect, /disconnect,
    /account, /positions, /orders, /order (POST + DELETE), /quote/<symbol>
- backend_api_python/app/routes/__init__.py
  - Registers alpaca_bp at /api/alpaca
- backend_api_python/env.example
  - ALPACA_API_KEY, ALPACA_SECRET_KEY, ALPACA_PAPER vars added

Tested locally against Alpaca paper account: round-trip BUY/SELL 1 SPY
filled in 5 seconds, $0.04 slippage cost, no commission.

Known gaps (planned for follow-up PRs):
- No bracket / stop / stop-limit order types yet
- No historical bar fetching helpers
- No WebSocket streaming
- No options trading

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 14:42:46 -07:00
dinger caaf294867 chore(security): 升级 Python 依赖并启用 Dependabot
- Flask 3.1.3、Werkzeug>=3.1.6、flask-cors 5.0.1(修复已知 GHSA)
- PyJWT>=2.12、cryptography>=43、requests>=2.32
- 新增 .github/dependabot.yml 每周检查 backend_api_python pip 依赖

Made-with: Cursor
2026-04-25 03:05:55 +08:00
dinger 5c3b4f6149 chore(deps): drop unused pymysql and SQLAlchemy (PostgreSQL-only stack)
Made-with: Cursor
2026-04-24 11:35:18 +08:00
Dinger f5c9a9b3b6 v3.0.1
Signed-off-by: Dinger <quantdinger@gmail.com>
2026-04-09 22:38:47 +08:00
Dinger 8563e4ea53 v3.0.1
Signed-off-by: Dinger <quantdinger@gmail.com>
2026-04-07 22:47:07 +08:00
Dinger 7626328c9c feat(backend): encrypt exchange credentials, remove IS_DEMO_MODE
- Fernet encrypt qd_exchange_credentials via SECRET_KEY (cryptography)

- Remove global read-only demo middleware; drop is_demo from auth payloads

- Egress whitelist: /api/credentials/egress-ip returns ipv4 + ipv6 (ipify)

- Exchange factory: demo/testnet URLs and OKX simulated-trading header

- Bitget spot connection test; misc route/service fixes

Made-with: Cursor
2026-03-24 19:10:18 +08:00
TIANHE ffdd2ffbae V2.2.1: Membership & Billing, USDT TRC20 payment, VIP free indicators, AI Trading Radar, simplified strategy creation, system settings simplification, bug fixes and UI improvements 2026-02-27 01:57:04 +08:00
TIANHE af8e46011e sss
Signed-off-by: TsssIANHE <TIANHE@GMAIL.COM>
2026-02-05 00:28:08 +08:00
TIANHE 61a5e5e6aa feat: Multi-user system with PostgreSQL - WIP temporary save 2026-01-14 05:29:55 +08:00
TIANHE 7053aefc33 Supports MT5 and forex trading.
Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
2026-01-13 04:10:05 +08:00
TIANHE e095f9be7e Supports MT5 and forex trading.
Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
2026-01-13 04:01:42 +08:00
TIANHE 7527d73f25 Supports Interactive Brokers, US and Hong Kong stocks.
Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
2026-01-13 02:35:48 +08:00
TIANHE f43312a858 creat
Signed-off-by: TIANHE <TIANHE@GMAIL.COM>
2025-12-29 03:06:49 +08:00