feat: add Super Alpha research, management and MCP workflows
Deploy production / deploy (push) Successful in 56s

This commit is contained in:
yuxuanhui
2026-09-13 12:32:16 +08:00
parent 7c8188df9c
commit e256d6fef1
59 changed files with 3766 additions and 125 deletions
+43
View File
@@ -0,0 +1,43 @@
"""MCP adapter using the same SUPER operations and records as the web editor."""
from ..research.assets import Assets
from .evidence import read_selection
from .service import SuperResearch
class SuperResearchAccess:
async def super_plans(self, args):
return await Assets(self.db).list("superalpha_plan", args.q, args.limit, args.offset)
async def super_plan(self, args):
if args.experiment_id:
return await SuperResearch(self.db).experiment(args.experiment_id, args.limit, args.offset)
return await Assets(self.db).get(args.plan_id, args.version, "superalpha_plan")
async def save_super_plan(self, args):
result = await SuperResearch(self.db).save(args)
return {**result, "web_url": f"{self.public_origin}/#superalpha-research?plan_id={result['id']}"}
async def preview_super_selection(self, args):
result = await SuperResearch(self.db).selection_job(args)
self.wake = "jobs"
return result
async def super_selection(self, args):
return await read_selection(self.db, args)
async def build_super_candidates(self, args):
result = await SuperResearch(self.db).build(args)
return {**result, "web_url": f"{self.public_origin}/#superalpha-research?experiment_id={result['id']}",
"submit_with": "submit_backtests", "starts_backtests": False,
"submit_source": {k: result["source"][k] for k in ("research_id", "superalpha_plan_id", "superalpha_plan_version", "selection_snapshot_ids", "reference", "hypothesis")},
"paging": "完整候选可用 get_superalpha_plan 的 experiment_id 读取"}
async def super_alphas(self, args):
args.filters.management_scope = "super"
args.filters.alpha_type = "SUPER"
return await self.business.search_alphas(args.filters)
async def super_alpha(self, args):
result = await SuperResearch(self.db).alpha(args.alpha_id)
return {**result, "web_url": f"{self.public_origin}/#superalphas?alpha_id={args.alpha_id}"}