Development roadmap
The goal of developing qteasy is to provide a simple, efficient, and fully localized quantitative trading toolkit for quantitative trading practitioners.
Following roadmap lists the planned features of qteasy, some of which are still being developed and improved, and we will continue to update in future versions.
Financial data
✅ Provide standard data tables, get data from data providers, clean and store in local data sources:
✅ Get basic data of listed companies, financial statements data
✅ Get daily price data and adjustment factors for stocks, indexes, and funds
✅ Get minute price data for stocks, indexes, and funds
✅ Get real-time price data for stocks, indexes, and funds
✅ Get financial indicator data for stocks, indexes, and funds
✅ Get macroeconomic data
✅ Get futures price data
✅ Get option price data
⬜ Get foreign exchange data
✅ Retrieve price data for Hong Kong stocks and U.S. stocks
⬜ Get cryptocurrency data
✅ Supports multiple data storage formats, such as
csv,hdf5,mysql, etc.
✅ Support
csvformat✅ Support
hdf5format✅ Support
featherformat✅ Support
mysqldatabase
✅ Fetch data from multiple different data providers, unify the format, and then store it in a local data source
✅ Get historical data and real-time data from tushare
✅ Get historical data and real-time data from Eastmoney
⬜ Get data from
akshare⬜ Get data from
baostock⬜ Get data from
joinquant
✅ Get data from local data source, return in the form of
DataFrameorHistoryPanel✅ HistoryPanel-based multi-chart-type visualization (candlesticks, volume, MACD, line charts, etc.), supporting multi-asset comparison and both static/interactive modes
⬜ Output financial data stored locally as financial statements
⬜ Output macroeconomic data stored locally as macroeconomic charts
⬜ Allow users to define data types, add to data source, and get data according to custom data acquisition method
⬜ Provide data statistical analysis functions, such as mean, standard deviation, correlation coefficient, covariance, etc., integrated into the
HistoryPanelclass
Trading strategy
✅ Provide multiple built-in trading strategies, call by strategy ID
✅ All trading strategies are parameterized calls, users control the behavior of the strategy through parameters; allow users to define adjustable parameters when defining trading strategies, and affect the running performance of the strategy through adjustable parameters
✅ Users can subscribe to multiple historical data in a strategy, but the frequency and time period of all data must be the same
✅ Users can subscribe to multiple types of historical data within a single strategy, and historical data is allowed to have different time periods and time frequencies
✅ Provide the base class of the trading strategy, users can inherit the base class, implement their own trading strategy, and the implemented trading strategy can be directly used for backtesting, real-time operation, and parameter optimization
✅ Provide backtesting function of trading strategy, users can test their trading strategy through backtesting function, get backtesting report, and view backtesting results in chart form
✅ Provide multiple backtesting indicators, such as annualized return, maximum drawdown, Sharpe ratio, information ratio, winning rate, profit and loss ratio, etc.
✅ Provide trading strategy optimization parameter tuning function, users can automatically find the optimal parameter combination through this function, and view the optimization results in chart form
✅ Provides multiple strategy optimization algorithms, such as grid search, genetic algorithms, simulated annealing, and machine learning algorithms
✅ Grid search
✅ Monte Carlo search algorithm
Genetic algorithm search
Simulated annealing search
Particle swarm optimization search
Bayesian optimization search
⬜ Allow users to reference special data types when defining strategies:
⬜ Time, minute, date, week, month, quarter, year, etc.
✅ Historical transaction data, including transaction volume, transaction amount, etc.
✅ Current position data, including position size, position cost, etc.
⬜ Allow users to add custom data types when defining strategies
Live trading
✅ Provide simulated live trading function, run trading strategy using real-time data, simulate exchange processing of trading instructions, generate simulated trading results, record trading results and simulate tracking of trading strategy performance, track trading strategy capital curve, stock change and income situation
✅ Provide multiple parameter options for simulated exchanges, allow users to customize parameters of exchanges, set different transaction fees, slippage, transaction time, etc.
✅ Allow users to create different trading accounts, customize initial capital and other parameters, and switch different trading accounts for different simulated trading at any time
✅ Provide complete trading instruction recording function, record trading instructions, trading results, funds, stock changes, and income in log files
✅ Generate system_log file during live operation, record the trading process in system_log
✅ Generate trade_log file during live operation, record trading instructions, trading results, funds, stock changes, and income in trade_log
✅ Provides a trading-parameter configuration file to save trading parameters; when restarting trading, you can directly load the configuration file to read the trading parameters
✅ Provides functions to clear and reset trade log files and configuration files, allowing users to clear trade logs and restart trading
✅ Provide command line CLI tool, allowing users to enter trading instructions, view trading results, capital curve, stock changes, and income
✅ CLI tool provides dashboard mode, displaying all current trading status and real-time trading results
✅ CLI tool provides trading instruction input mode, allowing users to enter trading instructions, or view and modify key configuration information
✅ Provide command line graphical tool TUI, allowing users to view trading instructions, trading results, capital curve, stock changes, and income
✅ TUI tool provides a visual graphical interface, displaying all current trading status and real-time trading results
✅ TUI tool provides a visual command input interface, allowing users to enter trading instructions, or view and modify key configuration information
⬜ Provide real-time trading interface, actually connect to the exchange, automatically convey trading instructions to the exchange, get trading results, record trading results, and actually track the trading strategy performance, track the capital curve, stock changes, and income of the trading strategy
⬜ Provide multiple real-time trading interfaces, such as securities exchanges, futures exchanges, cryptocurrency exchanges, etc.
✅ Provide graphical user interface for simulated trading or live trading
⬜ Send notifications by email/WeChat, etc. after generating trading signals