Oil prices tumble as peace deal floods the market — short energy while supply re
Created
Thesis
The end of the U.S.-Iran conflict immediately removes the 'fear premium' that was keeping oil prices artificially high. Now that ships can freely move through the Strait of Hormuz again, a flood of new oil supply is hitting a global market that was already producing too much. This dynamic of massive oversupply and renewed shipping access points to continued weakness in oil prices over the coming weeks and months, making energy stocks and oil funds highly vulnerable to further price drops.
Strategy approach
Build a trend-following short strategy on USO and XLE using the Daily timeframe. Enter short when the 50-day SMA crosses below the 200-day SMA (death cross), and momentum (MACD) is negative. Exit the trade if the price closes above the 50-day SMA for three consecutive days.
Markets and timeframes
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: SMA/MACD Crossover Long (USO@1d) (3 conditions)
- Entry: SMA/MACD Crossover Long (XLE@1d) (3 conditions)
- Exit: Position Exit Rule (USO@1d) (1 condition)
- Exit: Position Exit Rule (XLE@1d) (1 condition)
- Exit: SL: Below Support[2] (USO@1d) (1 condition)
- Exit: SL: Below Support[2] (XLE@1d) (1 condition)
- Exit: TP: Near Resistance[1] (USO@1d) (1 condition)
- Exit: TP: Near Resistance[1] (XLE@1d) (1 condition)
Shared strategy rules
Rule configuration
{
"data_dependencies": [
{
"symbol": "USO",
"timeframe": "1d"
},
{
"symbol": "XLE",
"timeframe": "1d"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
},
"operator": "crossed_below",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 200
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"field": "histogram",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 0
}
},
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_uso",
"name": "SMA/MACD Crossover Long (USO@1d)",
"priority": 1,
"trade_symbol": "USO"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
},
"operator": "crossed_below",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 200
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"field": "histogram",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 0
}
},
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_xle",
"name": "SMA/MACD Crossover Long (XLE@1d)",
"priority": 2,
"trade_symbol": "XLE"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_uso",
"name": "Position Exit Rule (USO@1d)",
"priority": 1,
"purpose": "signal",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_xle",
"name": "Position Exit Rule (XLE@1d)",
"priority": 2,
"purpose": "signal",
"target_symbol": "XLE"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_2_uso",
"name": "SL: Below Support[2] (USO@1d)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_2_xle",
"name": "SL: Below Support[2] (XLE@1d)",
"priority": 98,
"purpose": "take_profit",
"target_symbol": "XLE"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_3_uso",
"name": "TP: Near Resistance[1] (USO@1d)",
"priority": 100,
"purpose": "stop_loss",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_3_xle",
"name": "TP: Near Resistance[1] (XLE@1d)",
"priority": 101,
"purpose": "stop_loss",
"target_symbol": "XLE"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"resistance_stop_rank": 1,
"risk_percent": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "1d",
"version": 1
}Indicator configuration
{
"indicators": [
{
"name": "sma",
"period": 50
},
{
"name": "sma",
"period": 200
},
{
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
{
"name": "sma",
"period": 50
},
{
"name": "sma",
"period": 200
},
{
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
}
]
}Parsed strategy
{
"data_dependencies": [
{
"symbol": "USO",
"timeframe": "1d"
},
{
"symbol": "XLE",
"timeframe": "1d"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
},
"operator": "crossed_below",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 200
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"field": "histogram",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 0
}
},
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_uso",
"name": "SMA/MACD Crossover Long (USO@1d)",
"priority": 1,
"trade_symbol": "USO"
},
{
"conditions": [
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
},
"operator": "crossed_below",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 200
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"field": "histogram",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"type": "constant",
"value": 0
}
},
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_xle",
"name": "SMA/MACD Crossover Long (XLE@1d)",
"priority": 2,
"trade_symbol": "XLE"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_uso",
"name": "Position Exit Rule (USO@1d)",
"priority": 1,
"purpose": "signal",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "1d"
},
"indicator": {
"name": "sma",
"period": 50
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_xle",
"name": "Position Exit Rule (XLE@1d)",
"priority": 2,
"purpose": "signal",
"target_symbol": "XLE"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_2_uso",
"name": "SL: Below Support[2] (USO@1d)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"rank": 2,
"type": "support_level"
}
}
],
"enabled": true,
"id": "exit_2_xle",
"name": "SL: Below Support[2] (XLE@1d)",
"priority": 98,
"purpose": "take_profit",
"target_symbol": "XLE"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_3_uso",
"name": "TP: Near Resistance[1] (USO@1d)",
"priority": 100,
"purpose": "stop_loss",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_3_xle",
"name": "TP: Near Resistance[1] (XLE@1d)",
"priority": 101,
"purpose": "stop_loss",
"target_symbol": "XLE"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"resistance_stop_rank": 1,
"risk_percent": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "1d",
"version": 1
}Strategy instructions
Trading agent generated from recommendation idea 'Oil prices tumble as peace deal floods the market — short energy while supply remains high'. Thesis: The end of the U.S.-Iran conflict immediately removes the 'fear premium' that was keeping oil prices artificially high. Now that ships can freely move through the Strait of Hormuz again, a flood of new oil supply is hitting a global market that was already producing too much. This dynamic of massive oversupply and renewed shipping access points to continued weakness in oil prices over the coming weeks and months, making energy stocks and oil funds highly vulnerable to further price drops.
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 thesis and strategy approach describe a market view. They do not show whether an entry or exit condition is currently met.
- 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