- Adjusted the way of loading strategy initialization data in the backtesting engine (using the backtesting start date to be loaded by natural days)
- Adjust the output method of optimization results (replace strings with dictionaries)
- Remove the direct return logic when the transaction record is empty.
- Filter TargetPosTemplate templates when loading strategy class
- When removing a strategy configuration, delete the strategy's cached data at the same time
- Use the unified timezone defined in vnpy.trader.database to load the data
- Add contract multiplier query function get_size to policies
- Change to use the OffsetConveter provided by the main engine, no longer independently maintained
- Increase the log output during the process of calling the data service to obtain historical data
- Add the max_workers parameter to control the number of optimization processes.
- Add a check on the situation of funds burst (less than or equal to 0) during backtesting.
- Use zoneinfo to replace pytz library
- Adjust the installation script setup.cfg to add Python version restriction.
- Add strategy instance lookup function
- Remove reverse contract support
- Fix the percentage retracement calculation problem in the backtest statistics
- Improve variable and function type declarations
- Sort strategy names in the strategy drop-down box by first letter.
- Replace QtCore.pyqtSignal with PySide's QtCore.
- Move asynchronous playback for loading historical data from the engine to the strategy template
- Change the icon file information of the module to the full path string