Skip to main content

A-share low-frequency quantitative trading framework covering research, backtesting, and execution

Project description

DeltaFQ

ไธญๆ–‡ | English

Version Platform Python Build License

Python Open-source Quantitative Framework: Covering the full "Research, Backtest, Trade" lifecycle, building an industrial-grade closed-loop quantitative workflow from scratch to production.

Strategy Signals Backtest Overview

๐ŸŽ“ Official Tutorials

iMOOC - AI Quantitative System Course

Official Course: Deeply deconstructing the framework's architecture from 0 to 1, covering live trading logic and industrial-grade quantitative development. An essential course for mastering DeltaFQ.

๐Ÿ“ฆ Installation

pip install deltafq

For previous version source code, visit: https://pypi.org/project/deltafq/#history

โœจ Key Features

  • ๐Ÿ“ฅ Multi-source Data - Global multi-market historical/real-time data, ready to use
  • ๐Ÿง  Rapid Development - Signal-driven architecture, fast implementation with strategy templates
  • ๐Ÿ“‰ Professional Backtesting - High-performance matching engine, deep performance metrics and analysis
  • โšก Event-driven - Second-level market data distribution, millisecond-level Tick signal processing
  • ๐Ÿค– Live Gateway - Pluggable adapters, seamless switching between simulation and live trading

โšก Quick Start

import deltafq as dfq

# 1. Define strategy logic
class MyStrategy(dfq.strategy.BaseStrategy):
    def generate_signals(self, data):
        bands = dfq.indicators.TechnicalIndicators().boll(data["Close"])
        return dfq.strategy.SignalGenerator().boll_signals(data["Close"], bands)

# 2. Minimal backtest & results
engine = dfq.backtest.BacktestEngine()
engine.set_parameters("GOOGL", "2025-07-26", "2026-01-26")
engine.load_data()
engine.add_strategy(MyStrategy(name="BOLL"))
engine.run_backtest()
engine.show_report()
engine.show_chart(use_plotly=False)

๐Ÿš€ Application Example

DeltaFStation is an open-source quantitative trading cloud platform based on deltafq, integrating data services, strategy management, and trading access with paper and live support. Project: https://github.com/Delta-F/deltafstation/

DeltaFStation Architecture DeltaFStation Backtest Engine

๐Ÿ”Œ Interface Integration

  • [Data] yfinance โœ… - US, A-shares, HK, Crypto, Indices
  • [Data] eastmoney โœ… - OTC Funds (Index, QDII, Stock, Bond, Mixed)
  • [Data] miniQMT โœ… - A-share market data integration (see live trading section in the course)
  • [Trade] PaperTrade โœ… - Local simulation, tick-driven order matching, position and order management
  • [Trade] miniQMT Trade โœ… - A-share live trading (see live trading section in the course)

Minimal miniQMT live trade setup

from deltafq.live import LiveEngine

engine = LiveEngine(symbol="000001.SZ", signal_interval="1m")
engine.set_data_gateway("miniqmt", interval=3.0, mode="poll")
engine.set_trade_gateway(
    "miniqmt",
    userdata_mini_path=r"D:\BrokerQMT\userdata_mini",
    account_id="1234567890",
)

See details:

  • documents/LiveEngine.md
  • documents/MiniQmtTrade.md
  • documents/MiniQmtLiveEngine.md

๐Ÿ—๏ธ Project Architecture

deltafq/
โ”œโ”€โ”€ core/                          # Base classes, config, logging
โ”‚   โ”œโ”€โ”€ base.py
โ”‚   โ”œโ”€โ”€ config.py
โ”‚   โ””โ”€โ”€ logger.py
โ”œโ”€โ”€ data/                          # Fetch, clean, store, source mapping
โ”‚   โ”œโ”€โ”€ fetcher.py
โ”‚   โ”œโ”€โ”€ cleaner.py
โ”‚   โ”œโ”€โ”€ storage.py
โ”‚   โ”œโ”€โ”€ source_map.py
โ”‚   โ””โ”€โ”€ miniqmt_xtdata.py          # miniQMT / xtquant historical bars
โ”œโ”€โ”€ indicators/                    # Technical & fundamental factors
โ”‚   โ”œโ”€โ”€ technical.py
โ”‚   โ”œโ”€โ”€ fundamental.py
โ”‚   โ””โ”€โ”€ talib_indicators.py
โ”œโ”€โ”€ strategy/                      # Strategy base & signal generation
โ”‚   โ”œโ”€โ”€ base.py
โ”‚   โ””โ”€โ”€ signals.py
โ”œโ”€โ”€ backtest/                      # Backtest engine, metrics, reporting
โ”‚   โ”œโ”€โ”€ engine.py
โ”‚   โ”œโ”€โ”€ metrics.py
โ”‚   โ””โ”€โ”€ performance.py
โ”œโ”€โ”€ live/                          # Event engine, gateways, LiveEngine
โ”‚   โ”œโ”€โ”€ event_engine.py
โ”‚   โ”œโ”€โ”€ gateways.py                # DataGateway / TradeGateway abstractions
โ”‚   โ”œโ”€โ”€ gateway_registry.py        # Gateway factory & registry
โ”‚   โ”œโ”€โ”€ engine.py                  # LiveEngine orchestration
โ”‚   โ””โ”€โ”€ models.py                  # TickData, OrderRequest, โ€ฆ
โ”œโ”€โ”€ adapters/                      # Pluggable data / trade adapters
โ”‚   โ”œโ”€โ”€ data/                      # Data gateways (yfinance, miniQMT, โ€ฆ)
โ”‚   โ”‚   โ”œโ”€โ”€ yfinance_gateway.py
โ”‚   โ”‚   โ””โ”€โ”€ miniqmt_gateway.py
โ”‚   โ””โ”€โ”€ trade/                     # Trade gateways (Paper, miniQMT, โ€ฆ)
โ”‚       โ”œโ”€โ”€ paper_gateway.py
โ”‚       โ”œโ”€โ”€ miniqmt_client.py      # xttrader client wrapper
โ”‚       โ””โ”€โ”€ miniqmt_gateway.py     # Limit orders / cancel for LiveEngine
โ”œโ”€โ”€ trader/                        # Matching, orders, positions
โ”‚   โ”œโ”€โ”€ engine.py
โ”‚   โ”œโ”€โ”€ order_manager.py
โ”‚   โ””โ”€โ”€ position_manager.py
โ””โ”€โ”€ charts/                        # Signal, price & performance charts
    โ”œโ”€โ”€ signals.py
    โ”œโ”€โ”€ price.py
    โ””โ”€โ”€ performance.py
Project Architecture Workflow

๐Ÿค Contributing

  • Feedback: Bug reports and contributions are welcome via Issue or Pull Requests.
  • WeChat Official Account: Follow DeltaFQๅผ€ๆบ้‡ๅŒ– for updates, strategies, and quantitative resources.

WeChat Official Account

๐Ÿ“„ License

MIT License. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deltafq-1.0.0.tar.gz (55.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

deltafq-1.0.0-py3-none-any.whl (65.3 kB view details)

Uploaded Python 3

File details

Details for the file deltafq-1.0.0.tar.gz.

File metadata

  • Download URL: deltafq-1.0.0.tar.gz
  • Upload date:
  • Size: 55.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for deltafq-1.0.0.tar.gz
Algorithm Hash digest
SHA256 eb76f99f351c6820efdc769fef9c6d78edaf476357df32c684049f0b010e89cb
MD5 5230595b1fb4c7eb0a18f5e805b0c85d
BLAKE2b-256 7eb813d48b56c3fe2ba27380aae9595ea2c52db639dfb1744f04b4b23f5736a0

See more details on using hashes here.

File details

Details for the file deltafq-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: deltafq-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 65.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for deltafq-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd41730cbf04f9ed5fc08bacd14e8b4a918bb103ef63b51870ec862ba66a4211
MD5 046fbfeb7528e2cde6fd2ec942c9a91e
BLAKE2b-256 261988981884d8cc8117565ddb2dd3270e1c58e79f230ca4d829af34492f9c09

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page