← 返回博客列表 Two Sigma OA 全流程面经:CodeSignal + 编码 + 数据分析三类题型实录
Two Sigma

Two Sigma OA 全流程面经:CodeSignal + 编码 + 数据分析三类题型实录

2026-05-30

Two Sigma 是市面上 OA 体感最"硬核"的量化公司之一。它不像 Citadel 那样把题目拆成多关组合,而是常常把 算法、数据分析、概率推理、行为评估 全部塞进一两关 OA 里,要求候选人在 70-90 分钟内同时展示多种能力。这篇文章把站内已有的 Two Sigma Quant Engineer CodeSignalTwo Sigma OA IPO/Sewer 真题分析 做了串联,给一份完整的 OA 流程面经。

Two Sigma OA 流程概览

整体流程:3-4 周

W0  申请投递(career site / 内推 / Hireright)
W1  发送 OA 邀请(72-96h 窗口)
W2  通过 → Phone screen(45min,技术 + 项目)
W3  Onsite 五轮(编码 + 数据分析 + 概率 + 行为 + 项目)
W4  team match → offer 决议

W1 阶段的 72-96 小时是关键窗口。Two Sigma 不会在邮件里告诉你具体题型分布,候选人通常在打开链接后才发现是「90 分钟混合卷」还是「60 分钟纯算法」。建议拿到邀请第一时间预留一个完整的 2 小时空档,确保不被打断。

三大题型分类

类型一:纯算法题(Quant Engineer / SWE 线)

参考站内 Two Sigma Quant Engineer CodeSignal 攻略,70 分钟 4 题,Q1-Q4 难度递增。Two Sigma 的 CodeSignal 与 HRT 不同:

维度 Two Sigma HRT
时长 70 min 70 min
Q1 难度 Easy(暖手) Easy(暖手)
Q2 难度 Medium-Hard Medium
Q3 难度 Hard(图 / DP) Medium-Hard(数论)
Q4 难度 Hard+(综合) Hard(综合)
Cutoff ~80 ~78

Two Sigma 的 Q2 比 HRT 略难,候选人最容易在 Q2 就开始失分。

类型二:编码 + 数据分析混合题

IPO Share Allocation + Sewer Drainage 是这个类型的代表。题目不是单纯的 LC 算法题,而是结合了:

下面给一段典型的"IPO 分配"骨架代码:

import heapq

def ipo_allocate(orders: list[tuple[int, float]],
                 supply: int) -> dict[int, int]:
    """
    orders: [(client_id, weight), ...]
    supply: 可分配的总股数
    依规则按 weight 加权 + 整数切分 + tie-break by client_id
    """
    total_weight = sum(w for _, w in orders)
    raw = [(cid, supply * w / total_weight) for cid, w in orders]
    
    base = {cid: int(amount) for cid, amount in raw}
    leftover = supply - sum(base.values())
    
    # 按小数部分降序,tie 时按 client_id 升序,分配剩余股
    fractions = sorted(
        ((amount - int(amount), cid) for cid, amount in raw),
        key=lambda x: (-x[0], x[1])
    )
    for _, cid in fractions[:leftover]:
        base[cid] += 1
    return base

这类题不难想,但容易写错 tie-break。Two Sigma reviewer 会针对小数部分的处理与排序稳定性扣分。

类型三:数据分析题(Quant Researcher / Modeling 线)

只有 QR / Modeling / Data Science 线会拿到这一类。题面通常给一份 CSV 或 SQL 数据,要求:

# Two Sigma QR 风格 - rolling 因子计算
import pandas as pd

def momentum_factor(df: pd.DataFrame, window: int = 20) -> pd.Series:
    """
    20 日 momentum factor: (P_t - P_{t-window}) / P_{t-window}
    return: 因子序列,与 df.index 对齐
    """
    return df["close"].pct_change(window)

QR 线候选人可以使用 pandas / numpy / sklearn,但禁止使用 pre-built 量化库(如 zipline)。

不同岗位线的 OA 路径

岗位线 OA 形式 时长 题型
Quant Engineer CodeSignal GCA 70 min 4 道算法题
Software Engineer CodeSignal GCA 70 min 4 道算法题
Quant Researcher 数据分析题 90 min 1-2 道数据 + 1 道概率
Modeling 数据分析 + 算法 120 min 混合
Data Science SQL + Python 数据分析 90 min SQL + pandas 题
Trading Intern 概率题 + 编码题 60 min 8-10 道概率 + 1 道编码

OA 真题节奏:90 分钟混合卷的时间分配

00:00 - 00:10  快速读完所有题目 → 估算难度
00:10 - 00:25  Q1(算法暖手)→ 100% AC
00:25 - 00:50  Q2(数据分析 / 业务建模)→ 80%+ AC
00:50 - 01:20  Q3(综合 hard)→ 50%+ AC
01:20 - 01:30  回头 review + 边界补全

90 分钟混合卷比纯算法题更难时间分配,因为不同题型的"产出/时间"曲线不同。建议在 Q2 / Q3 切换时强制设一个时间锚点,避免在某一题陷得太深。

备考路径推荐

阶段 重点 推荐资源
0-1 周 LeetCode 基础 + CodeSignal 暖手 LeetCode top 75
1-2 周 CodeSignal arcade 完整通关 CodeSignal Arcade
2-3 周 Two Sigma 历年真题 + 数据分析 1point3acres 面经 + Kaggle
3-4 周 概率 + 数学速算 Heard on the Street + 50 nuts
4 周后 Mock + 计时 自己定时 90 min 混合卷

与 HRT / Citadel 的横向对比

维度 Two Sigma HRT Citadel
算法侧重 综合 + 业务建模 数论 + 速度 模拟 + 数据结构
数据分析 QR 线必有 Quant 线偶尔
概率题 Trading 线必有 Algo 线必有 Quant 线必有
OA 时长 70-120 min 70 min + 60 min 70 min
通过率 估约 15% 估约 20% 估约 18%

如果你同时收到三家的 OA 邀请,建议优先做 Two Sigma —— 题型最杂、覆盖最全,做完之后再做其他两家会显得简单。

FAQ

Q1: Two Sigma 的 CodeSignal cutoff 是多少? A: SWE / Quant Engineer 线大约 80 分。低于 75 几乎不进 phone screen。QR 线评分维度不同,需要另议。

Q2: 数据分析题用什么语言? A: Python(pandas / numpy / sklearn)默认。R / Julia 也可以选,但不推荐 —— reviewer 主要看 Python 代码。

Q3: OA 中可以查文档吗? A: 可以。Two Sigma 不限制查 stdlib 文档。但不能查 LeetCode 题解或外部代码 —— 提交后会做相似度检测。

Q4: 收到 OA 邀请后多久必须完成? A: 72-96 小时。如果实在赶不上可以邮件 recruiter 申请延期,一般会给一次 24-48 小时延期机会。

Q5: Two Sigma 给应届生 offer 的 base 大概多少? A: SWE / Quant Engineer 线 NG base 约 $200K,外加 sign-on / 股权。具体以 offer letter 为准。

写在最后

Two Sigma 的 OA 是「全维度考核」—— 算法 + 数据 + 概率 + 工程 + 业务建模缺一不可。如果你正在准备 Two Sigma 的 OA,可以微信 Coding0201 联系,发岗位线 + 邀请邮件截图,先做岗位线判定,再决定备考路径。


需要面试真题? 立刻联系微信 Coding0201获取真题


联系方式