Middle East strikes send oil prices surging — grab energy stocks before the spik
Created
Thesis
Fresh military strikes are threatening an already fragile ceasefire in the Middle East, putting global oil supplies at risk. When geopolitical conflicts threaten to disrupt the world's oil supply, the price of crude naturally spikes as fear of shortages sets in. Energy stocks and oil funds tend to climb rapidly alongside the price of crude oil, offering a direct way to trade this escalating crisis.
Strategy approach
Build a rule-based strategy that enters long USO on the 4-hour (H4) timeframe when the price breaks above its upper Bollinger Band (20, 2) and the MACD line crosses above the signal line. Hold for up to 10 days, using a 4% trailing stop to protect gains.
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: BB/MACD Crossover Long (USO@4h) (3 conditions)
- Entry: BB/MACD Crossover Long (XLE@4h) (3 conditions)
- Exit: Position Exit Rule (USO@4h) (1 condition)
- Exit: Position Exit Rule (XLE@4h) (1 condition)
- Exit: TP: Near Resistance[2] (USO@4h) (1 condition)
- Exit: TP: Near Resistance[2] (XLE@4h) (1 condition)
- Exit: SL: Below Support[2] (USO@4h) (1 condition)
- Exit: SL: Below Support[2] (XLE@4h) (1 condition)
Shared strategy rules
Rule configuration
{
"data_dependencies": [
{
"symbol": "USO",
"timeframe": "4h"
},
{
"symbol": "XLE",
"timeframe": "4h"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "upper",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_uso",
"name": "BB/MACD Crossover Long (USO@4h)",
"priority": 1,
"trade_symbol": "USO"
},
{
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "upper",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_xle",
"name": "BB/MACD Crossover Long (XLE@4h)",
"priority": 2,
"trade_symbol": "XLE"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "middle",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_uso",
"name": "Position Exit Rule (USO@4h)",
"priority": 1,
"purpose": "signal",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "middle",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_xle",
"name": "Position Exit Rule (XLE@4h)",
"priority": 2,
"purpose": "signal",
"target_symbol": "XLE"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"rank": 2,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_2_uso",
"name": "TP: Near Resistance[2] (USO@4h)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"rank": 2,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_2_xle",
"name": "TP: Near Resistance[2] (XLE@4h)",
"priority": 98,
"purpose": "take_profit",
"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_3_uso",
"name": "SL: Below Support[2] (USO@4h)",
"priority": 100,
"purpose": "stop_loss",
"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_3_xle",
"name": "SL: Below Support[2] (XLE@4h)",
"priority": 101,
"purpose": "stop_loss",
"target_symbol": "XLE"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"risk_percent": 2,
"support_stop_rank": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "4h",
"version": 1
}Indicator configuration
{
"indicators": [
{
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
{
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
{
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
{
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
}
]
}Parsed strategy
{
"data_dependencies": [
{
"symbol": "USO",
"timeframe": "4h"
},
{
"symbol": "XLE",
"timeframe": "4h"
}
],
"entry_rules": [
{
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "upper",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_uso",
"name": "BB/MACD Crossover Long (USO@4h)",
"priority": 1,
"trade_symbol": "USO"
},
{
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "upper",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
},
{
"left": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "line",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
},
"operator": "crossed_above",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "signal",
"indicator": {
"fast": 12,
"name": "macd",
"signal": 9,
"slow": 26
},
"type": "indicator"
}
},
{
"left": {
"field": "close",
"type": "price"
},
"operator": "crossed_above",
"right": {
"rank": 1,
"type": "resistance_level"
}
}
],
"direction": "long",
"enabled": true,
"id": "entry_1_xle",
"name": "BB/MACD Crossover Long (XLE@4h)",
"priority": 2,
"trade_symbol": "XLE"
}
],
"exit_rules": [
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "USO",
"timeframe": "4h"
},
"field": "middle",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_uso",
"name": "Position Exit Rule (USO@4h)",
"priority": 1,
"purpose": "signal",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "less_than",
"right": {
"chart_ref": {
"symbol": "XLE",
"timeframe": "4h"
},
"field": "middle",
"indicator": {
"name": "bollinger_bands",
"period": 20,
"std_dev": 2
},
"type": "indicator"
}
}
],
"enabled": true,
"id": "exit_1_xle",
"name": "Position Exit Rule (XLE@4h)",
"priority": 2,
"purpose": "signal",
"target_symbol": "XLE"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"rank": 2,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_2_uso",
"name": "TP: Near Resistance[2] (USO@4h)",
"priority": 97,
"purpose": "take_profit",
"target_symbol": "USO"
},
{
"applies_to": "both",
"conditions": [
{
"left": {
"field": "close",
"type": "price"
},
"operator": "greater_than_or_equal",
"right": {
"rank": 2,
"type": "resistance_level"
}
}
],
"enabled": true,
"id": "exit_2_xle",
"name": "TP: Near Resistance[2] (XLE@4h)",
"priority": 98,
"purpose": "take_profit",
"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_3_uso",
"name": "SL: Below Support[2] (USO@4h)",
"priority": 100,
"purpose": "stop_loss",
"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_3_xle",
"name": "SL: Below Support[2] (XLE@4h)",
"priority": 101,
"purpose": "stop_loss",
"target_symbol": "XLE"
}
],
"position_sizing": {
"max_position_percent": 25,
"method": {
"risk_percent": 2,
"support_stop_rank": 2,
"type": "fixed_risk"
},
"min_position_value": 100
},
"trigger_timeframe": "4h",
"version": 1
}Strategy instructions
Trading agent generated from recommendation idea 'Middle East strikes send oil prices surging — grab energy stocks before the spike'. Thesis: Fresh military strikes are threatening an already fragile ceasefire in the Middle East, putting global oil supplies at risk. When geopolitical conflicts threaten to disrupt the world's oil supply, the price of crude naturally spikes as fear of shortages sets in. Energy stocks and oil funds tend to climb rapidly alongside the price of crude oil, offering a direct way to trade this escalating crisis.
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