2. 如何運行策略優化

2.1. 入口與常用 kwargs

使用 qt.run(op, mode=2, …) 運行策略優化。常用參數包括 opti_methodopti_sample_countopti_output_count 等。

2.2. 優化算法完整列表(羅列並簡短解釋)

以下爲 opti_method 常見可選值及適用場景,與 qteasy 2.0 API 一致爲準。

算法名

含義

適用場景

grid

網格搜索

參數少、離散空間,窮舉或粗網格。

montecarlo

蒙特卡洛隨機採樣

參數較多時隨機抽樣評估。

GA

遺傳算法

中高維、連續/離散混合。

SA

模擬退火

中維、易陷入局部最優時。

PSO

粒子羣優化

連續空間、多峯。

bayesian

貝葉斯優化

樣本昂貴、需少步數尋優。

2.3. 優化運行參數完整列表(羅列並簡短解釋)

參數名

類型/可選值

含義

opti_method

str

優化算法:grid、montecarlo、GA、SA、PSO、bayesian 等。

opti_sample_count

int

採樣/迭代次數(如蒙特卡洛樣本數、遺傳代數等)。

opti_output_count

int

保留的最優結果數量(Top-K)。

目標函數相關

如優化目標爲夏普、回撤等,以配置或 API 爲準。

約束相關

若有約束(如最大回撤上限),以配置爲準。

回測區間、asset_pool 等與 mode=1 相同的參數在 mode=2 時同樣生效。

2.4. 參數空間

策略的 Parameterpar_range 定義優化時的搜索空間;框架按 opti_method 在該空間內採樣或搜索。

2.5. 最小可運行示例

import qteasy as qt

op = qt.Operator(strategies='dma', signal_type='PT', run_freq='d')
# dma 策略带 short_period、long_period 等可调参数
qt.configure(asset_pool='000001.SZ', invest_start='2020-01-01', invest_end='2023-12-31')
result = qt.run(op, mode=2, opti_method='grid', opti_sample_count=100, opti_output_count=10)

2.6. 配置要點

  • 回測區間、資產池:與 mode=1 一致,決定每次參數評估的回測環境。

  • 目標函數:決定“更優”的定義(如夏普最大化、回撤最小化),影響排序與最終選取。