Fox-Roku merger creates a streaming giant — play the deal spread and the ad-tech
Created
Thesis
When a buyout is announced, the target company's stock usually jumps close to the offer price. But deals take months to close, and sometimes they fall through. If you believe regulators will approve this merger without issues, buying Roku now lets you collect the 'deal spread'—the gap between today's price and the final buyout price. Meanwhile, other ad-supported streaming platforms could also catch a bid as investors look for the next potential takeover targets.
Strategy approach
Build a merger arbitrage strategy that enters long ROKU on the daily timeframe. Hold position and capture the spread to the $22B buyout valuation. Exit if the stock drops more than 8% below entry (deal break risk) or if the stock reaches the announced buyout price.
Markets and timeframes
Latest published rule evaluation
Evaluated . This is a dated rule snapshot, not a live price or trade execution confirmation.
ROKU · 1d
3 of 3 published entry conditions marked met.
- RSI (14) below 65 — met
- Price above EMA (21) — met
- MACD (12,26,9) above 0 — met
Entry and exit at a glance
These are the named rules in the shared configuration. Review the full conditions below before using a strategy.
- Entry: RSI/VWAP/EMA/MACD Signal Long (ROKU@1d) (6 conditions)
- Exit: TP: Near Resistance[1] (ROKU@1d) (1 condition)
- Exit: TP: Near Resistance[1] (ROKU@1d) (1 condition)
- Exit: TP: Fib Extension 127.2% (ROKU@1d) (1 condition)
- Exit: SL: Below Support[2] (ROKU@1d) (1 condition)
Shared strategy rules
Rule configuration
{
"data_dependencies": [
{
"symbol": "ROKU",
"timeframe": "1d"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 65
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"indicator": {
"name": "vwap"
},
"type": "indicator"
}
},
{
"left": {
"field": "low",
"type": "price"
},
"operator": "less_than_or_equal",
"right": {
"rank": 1,
"type": "support_level"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "support_level"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 21
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 0
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1",
"name": "RSI/VWAP/EMA/MACD Signal Long (ROKU@1d)",
"priority": 1,
"trade_symbol": "ROKU"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_1",
"name": "TP: Near Resistance[1] (ROKU@1d)",
"priority": 1,
"purpose": "signal"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_2",
"name": "TP: Near Resistance[1] (ROKU@1d)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "ROKU"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"ratio": 1272,
"type": "fibonacci_extension"
}
}
],
"enabled": true,
"id": "exit_3",
"name": "TP: Fib Extension 127.2% (ROKU@1d)",
"priority": 96,
"purpose": "take_profit",
"target_symbol": "ROKU"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_4",
"name": "SL: Below Support[2] (ROKU@1d)",
"priority": 100,
"purpose": "stop_loss",
"target_symbol": "ROKU"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"risk_percent": 2,
"support_stop_rank": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "1d",
"version": 1
}Indicator configuration
{
"indicators": [
{
"name": "ema",
"period": 21
},
{
"name": "rsi",
"period": 14
},
{
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
{
"name": "vwap"
}
]
}Parsed strategy
{
"data_dependencies": [
{
"symbol": "ROKU",
"timeframe": "1d"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 65
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"indicator": {
"name": "vwap"
},
"type": "indicator"
}
},
{
"left": {
"field": "low",
"type": "price"
},
"operator": "less_than_or_equal",
"right": {
"rank": 1,
"type": "support_level"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "support_level"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 21
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 0
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1",
"name": "RSI/VWAP/EMA/MACD Signal Long (ROKU@1d)",
"priority": 1,
"trade_symbol": "ROKU"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_1",
"name": "TP: Near Resistance[1] (ROKU@1d)",
"priority": 1,
"purpose": "signal"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_2",
"name": "TP: Near Resistance[1] (ROKU@1d)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "ROKU"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "ROKU",
"timeframe": "1d"
},
"ratio": 1272,
"type": "fibonacci_extension"
}
}
],
"enabled": true,
"id": "exit_3",
"name": "TP: Fib Extension 127.2% (ROKU@1d)",
"priority": 96,
"purpose": "take_profit",
"target_symbol": "ROKU"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_4",
"name": "SL: Below Support[2] (ROKU@1d)",
"priority": 100,
"purpose": "stop_loss",
"target_symbol": "ROKU"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"risk_percent": 2,
"support_stop_rank": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "1d",
"version": 1
}Strategy instructions
Trading agent generated from recommendation idea 'Fox-Roku merger creates a streaming giant — play the deal spread and the ad-tech ripple effect'. Thesis: When a buyout is announced, the target company's stock usually jumps close to the offer price. But deals take months to close, and sometimes they fall through. If you believe regulators will approve this merger without issues, buying Roku now lets you collect the 'deal spread'—the gap between today's price and the final buyout price. Meanwhile, other ad-supported streaming platforms could also catch a bid as investors look for the next potential takeover targets.
Performance
No trade count, win rate, or realized P&L figures are provided in this public preview. The thesis and shared rules do not establish a performance record.
What this public preview can establish
- The dated rule snapshot above shows the conditions evaluated at that time. It does not prove a current trigger or executed trade.
- Technical strategy fields are shared above. Inspect the actual conditions and check when they were evaluated before relying on them.
- No trade count, win rate, or P&L figure is published in this preview. It cannot establish a performance record.
Explore
How CommonQuant researches and tests strategies · Public paper-trading record and its limits · Discover public strategies