params && setParams({ ...casePreset(range), name: params.name, description: params.description })}>
载入高股息案例默认参数
保存为策略
}
>
{params ? (
<>
0} onClick={run}>
{running ? "后台运行中…" : "运行回测"}
n={params.topN} → x={params.holdX} · m={params.mMonths} / y={params.yMonths} ·{" "}
{adjustLabel(params.priceAdjustment)} · {params.start} ~ {params.end}
{blocking.length ? (
有 {blocking.length} 处参数需要修正
) : (
参数校验通过
)}
>
) : (
)}
{running ? (
{["data_loading", "selection", "backtesting", "analysis"].map((st) => {
const order = ["queued", "data_loading", "selection", "backtesting", "analysis", "done"];
const cur = order.indexOf(stage);
const mine = order.indexOf(st);
const cls = mine < cur ? "stage is-done" : mine === cur ? "stage is-active" : "stage";
return (
{mine < cur ? "✓" : mine === cur ? "●" : "○"} {STAGE_LABEL[st] ?? st}
);
})}
作业 {jobId || "排队中…"} · 已用{" "}
{Math.round(elapsed / 1000)}s(全市场 8 年区间约 3~5 分钟,可离开本页,结果会归档)
) : null}