ISCrossImpulse Strategy Analysis
Strategy Number: #181 (181st of 465 strategies)
Strategy Type: Trend Following / Momentum Crossover
Timeframe: 1 Hour (1h)
I. Strategy Overview
ISCrossImpulse is a quantitative trading strategy based on momentum crossover, combining MACD (Moving Average Convergence Divergence) and AO (Awesome Oscillator) indicators to capture market trend reversals. The "Impulse" in the name hints at its sensitivity to changes in market momentum.
Core Features
| Feature | Description |
|---|---|
| Entry Condition | MACD > 0 + AO > 0 + AO crossing from negative to positive (momentum breakout) |
| Exit Condition | MACD < 0 + AO < 0 + AO crossing from positive to negative (momentum reversal) |
| Protection | No additional protection mechanisms |
| Timeframe | 1-hour primary timeframe |
| Dependencies | TA-Lib, technical (qtpylib) |
II. Strategy Configuration Analysis
2.1 Basic Risk Parameters
# ROI Exit Table
minimal_roi = {
"0": 0.10, # Immediate exit: 10% profit
}
# Stop-Loss Setting
stoploss = -0.25 # -25% hard stop-loss
Design Philosophy:
- Uses a single ROI value (10%) with a wide stop-loss buffer
- Suited for trending markets with ample room for price fluctuation
2.2 Order Type Configuration
order_types = {
"entry": "limit", # Limit order entry
"exit": "limit", # Limit order exit
"stoploss": "market", # Market stop-loss order
"stoploss_on_exchange": False,
}
III. Entry Conditions Details
3.1 Core Entry Logic
# Entry Condition
(
(dataframe['macd'] > 0) & # MACD line above zero
(dataframe['ao'] > 0) & # AO oscillator positive
(dataframe['ao'].shift() < 0) # AO crossing from negative to positive
)
Interpretation:
- MACD > 0: Short-term MA above long-term MA — trend is bullish
- AO > 0: Awesome Oscillator shows positive momentum
- AO.shift() < 0: AO just broke through from negative territory to positive — a momentum breakout signal
3.2 Technical Indicator Calculation
| Indicator | Calculation | Parameters |
|---|---|---|
| ADX | Average Directional Index | period=14 |
| AO | Awesome Oscillator | default parameters |
| MACD | Moving Average Convergence Divergence | default parameters (12, 26, 9) |
IV. Exit Conditions Details
4.1 Core Exit Logic
# Exit Condition
(
(dataframe['macd'] < 0) & # MACD line below zero
(dataframe['ao'] < 0) & # AO oscillator negative
(dataframe['ao'].shift() > 0) # AO crossing from positive to negative
)
Interpretation:
- MACD < 0: Short-term MA below long-term MA — trend is bearish
- AO < 0: Awesome Oscillator shows negative momentum
- AO.shift() > 0: AO just dropped from positive to negative territory — a momentum reversal signal
V. Technical Indicator System
5.1 Core Indicators
| Category | Specific Indicator | Purpose |
|---|---|---|
| Trend Indicator | MACD (macd, macdsignal, macdhist) | Trend direction |
| Momentum Indicator | AO (Awesome Oscillator) | Momentum change detection |
| Trend Strength | ADX | Trend strength confirmation |
5.2 Indicator Relationship
Entry Signal Sequence:
MACD crosses above zero → AO turns positive → AO crossover confirmed
Exit Signal Sequence:
MACD crosses below zero → AO turns negative → AO crossover confirmed
VI. Risk Management
6.1 Stop-Loss Strategy
| Parameter | Value | Description |
|---|---|---|
| stoploss | -0.25 | 25% hard stop — wide margin |
| Stop-Loss Type | market | Market stop for fast execution |
6.2 Take-Profit Strategy
| Parameter | Value | Description |
|---|---|---|
| minimal_roi | 0.10 | 10% profit target |
| Exit Method | limit order | Requires price to reach target |
VII. Strategy Pros & Cons
✅ Pros
- Clear Signals: MACD + AO combination provides unambiguous trend and momentum signals
- Dual Confirmation: MACD direction + AO crossover double-confirmation reduces false signals
- Simple & Efficient: Code logic is concise, easy to understand and maintain
- Classic Combination: Both MACD and AO are battle-tested technical indicators
⚠️ Cons
- Lagging Nature: MACD-based indicators inherently lag
- Poor Performance in Ranging Markets: Frequent false signals in sideways markets
- Large Stop-Loss: -25% stop means potentially heavy single-trade losses
- No Extra Protection: Lacks additional trend filtering or market environment判断
VIII. Applicable Scenarios
| Market Environment | Performance | Description |
|---|---|---|
| Trending Up | ⭐⭐⭐⭐⭐ | Momentum breakout captures the full uptrend |
| Trending Down | ⭐⭐⭐⭐⭐ | Momentum reversal captures the downtrend |
| Ranging | ⭐⭐ | Frequent crossovers increase false signals |
| Sideways Consolidation | ⭐ | Signals fail when no clear trend exists |
IX. Parameter Optimization
9.1 Optimizable Parameters
| Parameter | Current Value | Optimization Range | Description |
|---|---|---|---|
| timeframe | 1h | 15m, 30m, 4h | Adjust timeframe for different markets |
| stoploss | -0.25 | -0.10 ~ -0.30 | Adjust based on risk tolerance |
| minimal_roi | 0.10 | 0.05 ~ 0.20 | Adjust profit target |
9.2 Timeframe Selection
| Timeframe | Characteristics | Best For |
|---|---|---|
| 15m/30m | Frequent signals, higher noise | Short-term trading |
| 1h | Balanced signal vs. stability | Medium-term trading |
| 4h | Fewer signals, more stable | Long-term trend following |
X. Live Trading Notes
10.1 Backtesting vs. Live Discrepancies
This strategy performs well in trending markets, but in:
- Sideways Ranging Periods: Frequent false signals
- Breaking News Events: Momentum indicators may fail
- Low Volatility Periods: Signals spaced far apart
10.2 Combination Suggestions
It is recommended to combine this strategy with market environment filtering:
- Add trend filtering (e.g., EMA200 direction)
- Add volatility filtering (e.g., ATR threshold)
- Consider BTC trend判断 for market correlation strength
XI. Summary
ISCrossImpulse is a classic momentum crossover strategy that combines MACD and Awesome Oscillator — two proven indicators — to capture market trend reversals.
Its core value lies in:
- Dual Indicator Confirmation: MACD judges trend direction; AO captures momentum changes
- Simple & Efficient: Clean code logic, easy to implement and optimize
- Classic Pedigree: Based on years of validated technical analysis combinations
For quantitative traders, this is a worthwhile trend-following template to study. Recommendations:
- Adjust timeframe based on the characteristics of the target trading pair
- Add extra filtering conditions based on market environment
- Pay attention to the strategy's performance in ranging markets and add protection mechanisms when necessary