ASML Swing Strategy
Created
Thesis
TSMC smashing profit expectations by 77% directly shows that demand for AI chips is surging. ASML raising its 2026 outlook reinforces this, as they supply the advanced equipment TSMC needs to build those chips. When both the equipment makers and the chip manufacturers are crushing expectations at the same time, it confirms a multi-year technology upgrade cycle that should push these stocks higher. ## Story development — 2026-07-18 04:15 UTC **TSMC's $100B U.S. expansion confirms AI chip demand — long Nvidia on the dip** Nvidia is expanding into new AI networking markets just as its main chip foundry, TSMC, commits to a massive $100 billion spending increase. This means the physical infrastructure for the AI boom is being locked in for years. ## Story development — 2026-07-18 21:12 UTC **TSMC doubles down on US chip factories as AI demand floods in — ride the semiconductor boom** The world's biggest chip maker just committed another $100 billion to its US factories because American tech companies are ordering more chips than it can supply. At the same time, analysts are showing that AI has made chip stocks the most important sector in the entire market.
Strategy approach
Build a rule-based swing strategy that enters long ASML and TSM on D1 when both stocks close green for the session following an earnings beat. Require a 10-day minimum hold and exit on a 7% trailing stop.
Markets and timeframes
Latest published rule evaluation
Evaluated . This is a dated rule snapshot, not a live price or trade execution confirmation.
ASML · 1d
4 of 8 published entry conditions marked met.
- Price below EMA (50) — met
- RSI (14) below 50 — met
- Stochastic (14) crossed above Stochastic (14) — near
- ADX (14) above 20 — far
- Price below EMA (50) — met
- RSI (14) below 50 — met
- Stochastic (14) crossed above Stochastic (14) — near
- ADX (14) above 20 — far
TSM · 1d
0 of 8 published entry conditions marked met.
- Price below EMA (50) — near
- RSI (14) below 50 — far
- Stochastic (14) crossed above Stochastic (14) — near
- ADX (14) above 20 — far
- Price below EMA (50) — near
- RSI (14) below 50 — far
- Stochastic (14) crossed above Stochastic (14) — near
- ADX (14) above 20 — far
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: EMA/RSI/STOCHASTIC/ADX Crossover Long (ASML@1d) (4 conditions)
- Entry: EMA/RSI/STOCHASTIC/ADX Crossover Long (TSM@1d) (4 conditions)
- Entry: EMA/RSI/STOCHASTIC/ADX Crossover Long (ASML@1d) (4 conditions)
- Entry: EMA/RSI/STOCHASTIC/ADX Crossover Long (TSM@1d) (4 conditions)
- Entry: Long Entry Signal (ASML@1d) (2 conditions)
- Entry: Long Entry Signal (TSM@1d) (2 conditions)
- Exit: Position Exit Rule (2 conditions)
- Exit: TP: Fib Extension 127.2% (ASML@1d) (1 condition)
- Exit: TP: Fib Extension 127.2% (TSM@1d) (1 condition)
- Exit: SL: Below Support[2] (ASML@1d) (1 condition)
- Exit: SL: Below Support[2] (TSM@1d) (1 condition)
- Exit: Stop Loss at 2.3% (1 condition)
- Exit: Take Profit at 4.6% (1 condition)
Shared strategy rules
Rule configuration
{
"data_dependencies": [
{
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
{
"symbol": "STOCK:TSM",
"timeframe": "1d"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_asml",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (ASML@1d)",
"priority": 1,
"trade_symbol": "STOCK:ASML"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_tsm",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (TSM@1d)",
"priority": 2,
"trade_symbol": "STOCK:TSM"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_2_asml",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (ASML@1d)",
"priority": 2,
"trade_symbol": "STOCK:ASML"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_2_tsm",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (TSM@1d)",
"priority": 3,
"trade_symbol": "STOCK:TSM"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "low",
"type": "price"
},
"operator": "less_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_3_asml",
"name": "Long Entry Signal (ASML@1d)",
"priority": 2,
"trade_symbol": "STOCK:ASML"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "low",
"type": "price"
},
"operator": "less_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_3_tsm",
"name": "Long Entry Signal (TSM@1d)",
"priority": 3,
"trade_symbol": "STOCK:TSM"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "holding_period_bars",
"type": "position"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 10
}
},
{
"left": {
"field": "holding_period_bars",
"type": "position"
},
"operator": "greater_than_or_equal",
"right": {
"type": "constant",
"value": 60
}
}
],
"enabled": true,
"id": "exit_1",
"name": "Position Exit Rule",
"priority": 1,
"purpose": "signal"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"ratio": 1272,
"type": "fibonacci_extension"
}
}
],
"enabled": true,
"id": "exit_2_asml",
"name": "TP: Fib Extension 127.2% (ASML@1d)",
"priority": 96,
"purpose": "take_profit",
"target_symbol": "STOCK:ASML"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"ratio": 1272,
"type": "fibonacci_extension"
}
}
],
"enabled": true,
"id": "exit_2_tsm",
"name": "TP: Fib Extension 127.2% (TSM@1d)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "STOCK:TSM"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_3_asml",
"name": "SL: Below Support[2] (ASML@1d)",
"priority": 100,
"purpose": "stop_loss",
"target_symbol": "STOCK:ASML"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_3_tsm",
"name": "SL: Below Support[2] (TSM@1d)",
"priority": 101,
"purpose": "stop_loss",
"target_symbol": "STOCK:TSM"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "unrealized_pnl_percent",
"type": "position"
},
"operator": "less_than_or_equal",
"right": {
"type": "constant",
"value": -2.298541666666667
}
}
],
"enabled": true,
"id": "exit_4",
"name": "Stop Loss at 2.3%",
"priority": 100,
"purpose": "stop_loss"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "unrealized_pnl_percent",
"type": "position"
},
"operator": "greater_than_or_equal",
"right": {
"type": "constant",
"value": 4.597083333333334
}
}
],
"enabled": true,
"id": "exit_5",
"name": "Take Profit at 4.6%",
"priority": 100,
"purpose": "take_profit"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"risk_percent": 2.298541666666667,
"support_stop_rank": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "1d",
"version": 1
}Indicator configuration
{
"indicators": [
{
"name": "ema",
"period": 50
},
{
"name": "rsi",
"period": 14
},
{
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
{
"name": "adx",
"period": 14
},
{
"name": "ema",
"period": 50
},
{
"name": "rsi",
"period": 14
},
{
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
{
"name": "adx",
"period": 14
}
]
}Parsed strategy
{
"data_dependencies": [
{
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
{
"symbol": "STOCK:TSM",
"timeframe": "1d"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_asml",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (ASML@1d)",
"priority": 1,
"trade_symbol": "STOCK:ASML"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_tsm",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (TSM@1d)",
"priority": 2,
"trade_symbol": "STOCK:TSM"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_2_asml",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (ASML@1d)",
"priority": 2,
"trade_symbol": "STOCK:ASML"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "ema",
"period": 50
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"name": "rsi",
"period": 14
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 50
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "d",
"indicator": {
"d_period": 3,
"k_period": 14,
"name": "stochastic",
"slowing": 3
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "adx",
"indicator": {
"name": "adx",
"period": 14
},
"type": "indicator"
},
"operator": "greater_than",
"right": {
"type": "constant",
"value": 20
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_2_tsm",
"name": "EMA/RSI/STOCHASTIC/ADX Crossover Long (TSM@1d)",
"priority": 3,
"trade_symbol": "STOCK:TSM"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "low",
"type": "price"
},
"operator": "less_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_3_asml",
"name": "Long Entry Signal (ASML@1d)",
"priority": 2,
"trade_symbol": "STOCK:ASML"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "low",
"type": "price"
},
"operator": "less_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
},
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"ratio": 382,
"type": "fibonacci_retracement"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_3_tsm",
"name": "Long Entry Signal (TSM@1d)",
"priority": 3,
"trade_symbol": "STOCK:TSM"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "holding_period_bars",
"type": "position"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 10
}
},
{
"left": {
"field": "holding_period_bars",
"type": "position"
},
"operator": "greater_than_or_equal",
"right": {
"type": "constant",
"value": 60
}
}
],
"enabled": true,
"id": "exit_1",
"name": "Position Exit Rule",
"priority": 1,
"purpose": "signal"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"ratio": 1272,
"type": "fibonacci_extension"
}
}
],
"enabled": true,
"id": "exit_2_asml",
"name": "TP: Fib Extension 127.2% (ASML@1d)",
"priority": 96,
"purpose": "take_profit",
"target_symbol": "STOCK:ASML"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"ratio": 1272,
"type": "fibonacci_extension"
}
}
],
"enabled": true,
"id": "exit_2_tsm",
"name": "TP: Fib Extension 127.2% (TSM@1d)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "STOCK:TSM"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:ASML",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_3_asml",
"name": "SL: Below Support[2] (ASML@1d)",
"priority": 100,
"purpose": "stop_loss",
"target_symbol": "STOCK:ASML"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "STOCK:TSM",
"timeframe": "1d"
},
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_3_tsm",
"name": "SL: Below Support[2] (TSM@1d)",
"priority": 101,
"purpose": "stop_loss",
"target_symbol": "STOCK:TSM"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "unrealized_pnl_percent",
"type": "position"
},
"operator": "less_than_or_equal",
"right": {
"type": "constant",
"value": -2.298541666666667
}
}
],
"enabled": true,
"id": "exit_4",
"name": "Stop Loss at 2.3%",
"priority": 100,
"purpose": "stop_loss"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "unrealized_pnl_percent",
"type": "position"
},
"operator": "greater_than_or_equal",
"right": {
"type": "constant",
"value": 4.597083333333334
}
}
],
"enabled": true,
"id": "exit_5",
"name": "Take Profit at 4.6%",
"priority": 100,
"purpose": "take_profit"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"risk_percent": 2.298541666666667,
"support_stop_rank": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "1d",
"version": 1
}Strategy instructions
Trading agent generated from recommendation idea 'AI chip demand is back — long the semiconductor gear makers riding the wave'. Thesis: TSMC smashing profit expectations by 77% directly shows that demand for AI chips is surging. ASML raising its 2026 outlook reinforces this, as they supply the advanced equipment TSMC needs to build those chips. When both the equipment makers and the chip manufacturers are crushing expectations at the same time, it confirms a multi-year technology upgrade cycle that should push these stocks higher. ## Story development — 2026-07-18 04:15 UTC **TSMC's $100B U.S. expansion confirms AI chip demand — long Nvidia on the dip** Nvidia is expanding into new AI networking markets just as its main chip foundry, TSMC, commits to a massive $100 billion spending increase. This means the physical infrastructure for the AI boom is being locked in for years. ## Story development — 2026-07-18 21:12 UTC **TSMC doubles down on US chip factories as AI demand floods in — ride the semiconductor boom** The world's biggest chip maker just committed another $100 billion to its US factories because American tech companies are ordering more chips than it can supply. At the same time, analysts are showing that AI has made chip stocks the most important sector in the entire market.
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