股票回测连接仿真交易
1.1 二级标题
- 工作流;
- 回测代码;
1.2 交易
- 回测交易;
################### 代码含义 ####################
详细解释各个部分:
主要功能
这是一个用于输入和校验Python策略代码的工作流节点,具备代码检查功能。
核心组件详解
1. 输入模型 CodeInputModel
@ui(code={...})
class CodeInputModel(BaseModel):
code: str = Field(default="", title="代码")
- 使用Pydantic定义输入数据结构
@ui装饰器定义了前端UI表现:多行文本输入框- 包含代码校验逻辑:
- 语法检查:检查Python代码语法错误
- 安全检查:检查危险代码(如os.system、文件操作等)
- 发现错误时抛出
NodeExecutionException异常
2. 输出模型 CodeOutputModel
class CodeOutputModel(BaseModel):
code: str = Field(default="", title="代码")
- 简单的输出模型,直接传递代码
3. 工作节点 CodeControl
@work_node(name="Python代码输入", group="01-基础工具", ...)
class CodeControl(BaseWorkNode):
- 继承自
BaseWorkNode,是工作流中的一个节点 input_model():返回输入模型output_model():返回输出模型run():执行逻辑,简单地将输入的代码原样输出
4. 节点描述信息
set_short_description():简短描述(显示为卡片样式)set_long_description():详细文档,包含:- 功能介绍
- 工作流示例图片
- 输出对应关系(可连接的属性)
- 注意事项
使用场景
这个节点主要用于量化策略开发流程中:
- 因子编写:输入因子计算代码
- 策略编写:输入交易策略代码
- 与其他节点连接:如连接到回测节点进行策略回测
安全机制
- 自动检查语法错误
- 防止危险操作(确保代码安全执行)
- 错误信息会包含具体位置(行号)