QMT如何获取策略的回测绩效报告数据,并将其导出为Excel进行分析?
发布时间:2026-4-29 14:21阅读:155
QMT 获取策略回测绩效报告数据并导出为 Excel 有以下两种方法:
通过界面操作导出
在 QMT 中完成策略回测后,会出现回测结果展示界面,其中包含收益曲线、交易记录等数据。找到界面中的 “导出回测结果” 按钮,点击后选择 Excel 格式,再指定保存路径,即可将回测绩效报告数据导出。
通过代码实现导出
可在策略代码中获取相关数据并导出。通常在策略的stop(ContextInfo)函数(回测结束时调用)中,使用get_trade_detail_data(account_id, account_type, 'DEAL')获取所有成交记录,还可获取委托(ORDER)、持仓(POSITION)等详细信息。然后结合 Python 的pandas库,将数据整理成 DataFrame 格式,再使用to_excel方法将其保存为 Excel 文件。以下是核心代码示例:
python
import pandas as pd
import os
def stop(ContextInfo):
# 获取成交记录
deal_data = get_trade_detail_data(ContextInfo.account_id, ContextInfo.account_type, 'DEAL')
data_list = []
for deal in deal_data:
# 提取所需属性,如代码、价格、数量、方向等
data = {
'code': deal.m_strInstrumentID,
'price': deal.m_dPrice,
'quantity': deal.m_nVolume,
'direction': deal.m_nSide
}
data_list.append(data)
df = pd.DataFrame(data_list)
# 计算简单统计指标,如总盈亏、交易次数等
df['total_profit'] = df['price'] * df['quantity'] * (1 if df['direction'] == 1 else -1)
trade_count = len(df)
# 报告保存路径
report_path = 'C:/QMT_Reports/'
if not os.path.exists(report_path):
try:
os.makedirs(report_path)
except:
report_path = './'
# 保存为Excel文件
df.to_excel(os.path.join(report_path, 'backtest_report.xlsx'), index=False)
上述代码仅为示例,实际使用时需根据具体策略和需求,调整提取的属性及计算的指标等内容。股票开户找我!无门槛国债逆回购一折 (百万分之一)!ETF佣金万0.5!融资利率5%以下!优惠多多!免费量化!ptrade&QMT!

温馨提示:投资有风险,选择需谨慎。
-
叩富网:18年财商教育,学练问一站式成长
2026-06-08 16:08
-
开通证券账户时涉及的账户、账号、密码都有哪些?
2026-06-08 16:08
-
新手选股总踩坑?国金AI选好股,帮你轻松找潜力股
2026-06-08 16:08


问一问

+微信
分享该文章
