智能助手
Starfish 智能助手可在因子、策略和分析等方面为用户带来方便。本节将介绍智能助手的部署及相关使用示例。
部署
根据部署所述完成 Starfish 部署后,执行以下命令进入 /server/web/starfish 目录:
cd /home/dolphindb/server/web/starfish/starfish_ai_backend
chmod +x starfish_ai_backend
启动智能助手,其中 IP 和端口请根据实际进行调整:
nohup ./starfish_ai_backend --host 192.168.100.77 --port 8669 > server.log 2>&1 &
开启对话
点击因子平台上方工具栏中的 “AI 助手” ,开启会话窗口,用户在此进行对话交互。


配置
创建配置
点击聊天框左上角,展开列表后选择“管理设置”,即可进入配置管理页面。
创建新配置
点击“新建设置”按钮,进入配置编辑页面。填写相关参数后,点击右下角的“保存”按钮即可保存。每个用户均可保存自己的配置。

配置参数说明:
字段 | 含义 |
---|---|
AI Endpoint | AI 服务的接口地址,如
http://api.openai.com/v1/chat/completions |
AI Backend URL | 部署在本地用于转发 AI 请求的后端地址,默认值为
http://localhost:3789 |
API Key | 访问 AI 接口所需的鉴权令牌 |
Model Name | 使用的 AI 模型名称 |
Temperature | 控制生成内容随机性的参数:
|
系统配置与私有配置:
- Admin 用户权限:
Admin 用户可选择将配置类型设为“系统配置”,供所有用户使用。系统配置只能由 Admin 用户创建,且可创建多个。
- 私有配置:
普通用户可创建属于自己的“私有配置”,并可将任意配置设为默认。默认配置将在聊天启动时自动激活。
注意,因子平台 Agent 支持以流式传输的,且 chunk 符合以下格式的 API:
interface ChatCompletionChunk {
id: string;
choices: Array<{
delta: {
content?: string | null;
// 推理时,推理内容必须在该字段内
reasoning_content?: string | null;
// 部分平台会在 reasoning 字段内,比如 OpenRouter
reasoning?: string | null
function_call?: {
arguments?: string;
name?: string;
};
refusal?: string | null;
role?: 'system' | 'user' | 'assistant';
};
finish_reason: 'stop' | 'length' | 'tool_calls' | 'content_filter' | 'function_call' | null;
index: number;
}>;
model: string;
usage?: {
completion_tokens: number;
prompt_tokens: number;
total_tokens: number;
} | null;
}
选择配置
点击聊天框左上角,即可展开可用模型列表。当前激活的配置在左侧显示绿色圆点,点击其他配置可快速切换。
因子生成
因子开发
输入因子描述:
点击对话框右上角的下拉菜单,切换为因子模式。然后在对话栏中输入因子的自然语言描述。例如:
“我要用DolphinDB计算world quant因子中的alpha41,怎么算?公式按照这个:(((high * low)^0.5) - vwap)。”
生成因子函数代码:
发送后,等待 AI 思考完成,将返回包含因子函数代码的完整回答。该代码即为因子脚本。

首次筛选与试运行:
浏览返回的因子函数,选取符合要求的因子,点击下一步。

执行试运行,即执行函数定义。

创建因子模块:
试运行成功后,点击“基于该脚本创建因子”,即可创建新的因子模块,模块将包含已选的因子函数。

模块编辑与计算评价设置:
系统自动跳转至因子模块编辑页,同时在对话框中展示可选的计算与评价模板。

运行与结果查看:
设置完成后点击“执行”,系统将启动因子的计算与评价任务。右上角弹窗可查看任务状态,点击“查看”即可查看运行详情与因子评价,内容包括因子表现、计算数据和可视化结果。
进阶用法
你可以:
- 一次性生成多个因子;
- 或者在已有因子基础上提出新指令,例如:“请基于这个因子,衍生出 4 个其他的因子。”
AI 将返回 4 个新因子函数,可对其进行多选、筛选与进一步使用。
策略生成
输入策略描述:
点击对话框右上角的下拉菜单,切换为策略模式。然后在对话框中描述你的策略内容。需包含品种类型和行情频率。目前支持的品种包括:股票、期货、期权、通用、数字货币、上交所债券、cfets x_Bond 行情债券、融资融券;行情频率支持:日频、分钟频、快照频。
示例输入:“用 DolphinDB 创建一个策略,基于股票快照行情数据,实现当委托买量大于委托卖量的 2 倍时买入 200 股,当委托卖量大于委托买量的 2 倍时卖出 200 股,不需要考虑复杂的持仓情况,也不需要订阅任何指标”
生成策略代码:
发送描述后,AI 开始生成策略代码。输出内容通常包含:
- 策略类型
- 行情类型
- 回调函数代码

确认策略逻辑:
确认返回的策略代码逻辑无误后,点击“创建策略”,系统会根据品种和行情频率创建对应的策略,并且将自动跳转至策略的编辑页面,并更新代码内容。
策略试运行与回测:
策略创建后,将出现预设选择与“运行”按钮。点击“运行”后,系统将进入回测运行页面,任务完成后可查看回测报告,包含交易详情、绩效表现及可视化结果。

数据分析
点击对话框右上角的下拉菜单,切换为分析模式。然后在对话栏中输入因子的自然语言描述。例如:
“基于 1 分钟行情数据,计算每只股票每分钟成交量的标准差。”
系统将会寻找所有的库表信息,返回对应的数据脚本,并且尝试执行:
- 若执行成功,返回结果;
- 若执行失败,系统会收集错误信息,并提交给大模型修正,直至脚本无误。