Skip to main content

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

FeatureDescription
Entry ConditionMACD > 0 + AO > 0 + AO crossing from negative to positive (momentum breakout)
Exit ConditionMACD < 0 + AO < 0 + AO crossing from positive to negative (momentum reversal)
ProtectionNo additional protection mechanisms
Timeframe1-hour primary timeframe
DependenciesTA-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:

  1. MACD > 0: Short-term MA above long-term MA — trend is bullish
  2. AO > 0: Awesome Oscillator shows positive momentum
  3. AO.shift() < 0: AO just broke through from negative territory to positive — a momentum breakout signal

3.2 Technical Indicator Calculation

IndicatorCalculationParameters
ADXAverage Directional Indexperiod=14
AOAwesome Oscillatordefault parameters
MACDMoving Average Convergence Divergencedefault 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:

  1. MACD < 0: Short-term MA below long-term MA — trend is bearish
  2. AO < 0: Awesome Oscillator shows negative momentum
  3. AO.shift() > 0: AO just dropped from positive to negative territory — a momentum reversal signal

V. Technical Indicator System

5.1 Core Indicators

CategorySpecific IndicatorPurpose
Trend IndicatorMACD (macd, macdsignal, macdhist)Trend direction
Momentum IndicatorAO (Awesome Oscillator)Momentum change detection
Trend StrengthADXTrend 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

ParameterValueDescription
stoploss-0.2525% hard stop — wide margin
Stop-Loss TypemarketMarket stop for fast execution

6.2 Take-Profit Strategy

ParameterValueDescription
minimal_roi0.1010% profit target
Exit Methodlimit orderRequires price to reach target

VII. Strategy Pros & Cons

✅ Pros

  1. Clear Signals: MACD + AO combination provides unambiguous trend and momentum signals
  2. Dual Confirmation: MACD direction + AO crossover double-confirmation reduces false signals
  3. Simple & Efficient: Code logic is concise, easy to understand and maintain
  4. Classic Combination: Both MACD and AO are battle-tested technical indicators

⚠️ Cons

  1. Lagging Nature: MACD-based indicators inherently lag
  2. Poor Performance in Ranging Markets: Frequent false signals in sideways markets
  3. Large Stop-Loss: -25% stop means potentially heavy single-trade losses
  4. No Extra Protection: Lacks additional trend filtering or market environment判断

VIII. Applicable Scenarios

Market EnvironmentPerformanceDescription
Trending Up⭐⭐⭐⭐⭐Momentum breakout captures the full uptrend
Trending Down⭐⭐⭐⭐⭐Momentum reversal captures the downtrend
Ranging⭐⭐Frequent crossovers increase false signals
Sideways ConsolidationSignals fail when no clear trend exists

IX. Parameter Optimization

9.1 Optimizable Parameters

ParameterCurrent ValueOptimization RangeDescription
timeframe1h15m, 30m, 4hAdjust timeframe for different markets
stoploss-0.25-0.10 ~ -0.30Adjust based on risk tolerance
minimal_roi0.100.05 ~ 0.20Adjust profit target

9.2 Timeframe Selection

TimeframeCharacteristicsBest For
15m/30mFrequent signals, higher noiseShort-term trading
1hBalanced signal vs. stabilityMedium-term trading
4hFewer signals, more stableLong-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:

  1. Dual Indicator Confirmation: MACD judges trend direction; AO captures momentum changes
  2. Simple & Efficient: Clean code logic, easy to implement and optimize
  3. 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