最近刚做完 Millennium Quant Intern OA ,体验感还是蛮特别的。整体来说,这套 OA 不像常规大厂那样就是单纯的算法题,而是通过 AmplifyME 平台模拟了真实交易场景,把编程和量化逻辑结合起来,感觉更像是实训项目。接下来分享一下真题,供相关的同学参考练习~
测试流程
收到时间:投完没多久就收到了 OA,邮件说明要在 14 天内完成,一旦点开就是 24 小时限时。
形式:总共 4 道大题,每题下面还有一些子任务,整体是循序渐进的风格。前面比较基础,后面逐渐加上 risk management、hedging 和 arbitrage,难度和复杂度都在递增。
平台环境:使用 AmplifyME,自带 AmplifyQuantTrading 包,很多数据和交易对象都封装好了。我们只需要在给定的函数/类里写逻辑,不用自己从零搭架子。
Millennium Quant Intern OA 真题回顾
Challenge 1: Price Making
In this challenge, your task is to build a simple, automated market maker. Using object-oriented programming, you will create a class that can provide a two-sided price quote (a bid and an offer) for any given asset. Your model will need to calculate quotes that are 1.5% away from the current market price.
What is Market Making?
When a large client (like a hedge fund) wants to trade, they ask a Market Maker for a price. The client tells you what they want to trade (e.g., a tech stock) and how many. They don’t tell you if they want to buy or sell. Because of this, you must provide a price for both scenarios:
- Bid Price: The price the client can sell at.
- Offer Price: The price the client can buy at.
Calculation Rules
- Bid Price = Reference Price × (1 – 0.015)
- Offer Price = Reference Price × (1 + 0.015)
For Example
If a client requests a quote for an asset with a reference price of $120, your market maker would provide:
- Bid: $118.20
- Offer: $121.80
Challenge 2: Price Skewing & Risk Management
In this challenge, you’ll build on the foundation of Challenge 1 by adding a new layer of real-world complexity: price skewing. In practice, a market maker doesn’t always quote prices symmetrically around a reference price. Instead, they adjust their quotes to manage the risk of their current inventory.
The Logic of Skewing
- If you are long an asset (own too much), you want to encourage clients to buy from you → shift prices down.
- If you are short an asset (owe it), you want to encourage clients to sell to you → shift prices up.
For Example
If the reference price for a stock is $120:
- When Long (you want to sell): your quote might be Bid $114 – Offer $120, shifted downward.
- When Short (you want to buy): your quote might be Bid $118 – Offer $124, shifted upward.
Challenge 3: Optimized ETF Hedging
Now you will extend the previous challenge to perform a more sophisticated, beta-adjusted hedge. Instead of a simple 1-for-1 hedge, you will use beta values to calculate the precise amount of ETF needed to offset your risk in each stock.
The Beta-Adjusted Hedge
Formula: Hedge Amount = Equity Risk Amount × Beta
Example
If you hold a $800,000 long position in a stock with a Beta of 0.72, your optimized hedge is to sell $576,000 of the ETF.
New Tools for Hedging
- ExchangeTrade object
- ticker: String (e.g., ‘TECHETF’)
- trade_volume: Integer
- ref_price: Float
- action: String (‘Buy’ or ‘Sell’)
- date: Integer
- Exchange.execute(trade) → submit hedge trade.
- Log ETF Position → keep track of hedge exposure.
Challenge 4: Arbitrage Trading
The final challenge introduces arbitrage trading: exploiting temporary price differences between an ETF and its underlying stocks.
Core Idea
Compare the traded price of the ETF (Real ETF) with a “fair value” calculated from its 5 component stocks (Synthetic ETF).
Trading Logic
- If Real ETF > Synthetic ETF → Sell ETF, Buy components.
- If Real ETF < Synthetic ETF → Buy ETF, Sell components.
Tools: HedgeFund Object
.balance: account balance..current_positions: current holdings..commission_percentage: trading fee.hf.execute_order(ticker, volume, action, date): submit a trade order.
Programhelp 专业助攻服务
我们团队长期专注于 OA代写、笔试代写、Hackerrank包过 等服务,保证所有测试用例 100% 通过,如未通过不收费。无论是 HackerRank、牛客网还是 Codesignal,我们都能通过远程无痕操作,确保过程安全流畅。
除了笔试,我们还提供 面试辅助、VO助攻,由北美资深 CS 专家人工实时给出思路和提示,远胜 AI 自动化答题,帮助你在关键问题上快速突破。
针对有需要的同学,我们也能提供 代面试服务:通过转接摄像头与变声技术实现真实互动,团队成员与你默契配合,确保过程自然无痕,帮助你直达 Offer。
更重要的是,我们提供 全套护航服务 —— 从 OA 到面试,再到签约谈判,全程陪伴,直到你顺利入职理想大厂。采用 “预付少量定金 + 成功上岸再付尾款” 的模式,真正让你无后顾之忧。