0bps

Strategy vault / Momentum

Momentum Ichimoku Cloud Trading Strategy

This strategy utilizes the golden cross and dead cross signals formed by the conversion and base lines of the classic Ichimoku Kinko Hyo indicator to determine the market trend direction and discover potential buy…

Author
ChaoZhang
Complexity
Starter · 40 lines
Parameters
4
Backtest bar
1h · intraday
Tested on
BTC/USDT · futures

IMG

Overview

This strategy utilizes the golden cross and dead cross signals formed by the conversion and base lines of the classic Ichimoku Kinko Hyo indicator to determine the market trend direction and discover potential buy and sell opportunities. A buy signal is generated when the conversion line crosses above the base line, while a sell signal is generated when it crosses below. Integrating the Senkou Span B line of the Ichimoku cloud identifies the longer-term trend direction and effectively filters out some undesirable trade signals.

Strategy Logic

The strategy is based on the following main principles:

  1. The conversion line of the Ichimoku indicator represents recent price momentum, while the base line represents the mid-to-long-term price trend. A crossover of the conversion line above the base line indicates stronger near-term momentum versus the longer-term trend, presenting a good opportunity to enter trades. Conversely, a crossover below implies a need to be cautious of closing out trades.

  2. The Senkou Span B line of the Ichimoku cloud is effective at gauging the direction of the longer-term trend. Trade signals are only generated when the Span B direction aligns with the signal, avoiding random trades against the major trend.

  3. Combining the crossover signals and Ichimoku cloud judgment allows capitalizing on strong pullback opportunities in an upward trending market for outsized gains.

  4. If price breaks the Senkou Span A or Senkou Span B after a buy trigger, the mid-to-long-term trend is considered changed, necessitating a stop loss exit.

Advantages

The key advantages of this strategy include:

  1. Flexible Ichimoku parameters allow tracking price changes across different timeframes.

  2. Ichimoku cloud has strong capabilities in determining major trend direction, avoiding random trades.

  3. Crossover system is simple and clear, easy to interpret and automate trades.

  4. Combines two indicators for multi-timeframe assessment without generating false signals.

  5. Simple, aggressive strategy suitable for capitalizing on mid-term pullback opportunities for higher gains.

Risks

The main risks of this strategy are:

  1. Ichimoku parameters are sensitive, improper settings across timeframes lead to bad signals.

  2. Some degree of random trading risk as mid-term signals may deviate from major trend.

  3. Limitations in entry timing with just two indicators.

  4. Chasing momentum trades can lead to capital loss.

  5. Potential for over-optimization across different instruments.

Enhancement Opportunities

The strategy can be enhanced via:

  1. Testing different Ichimoku parameter combinations for optimal settings.

  2. Adding filters like MACD, RSI to improve robustness.

  3. Incorporating stop loss techniques like trend line, trailing stops to control risk.

  4. Optimizing position sizing based on market volatility.

  5. Robustness testing across instruments to prevent overfitting.

  6. Using machine learning for dynamic auto-optimization.

Conclusion

This strategy effectively combines Ichimoku Kinko Hyo and crossover systems for mid-term trend tracking. The approach is simple and clear for practical application. Careful parameter optimization, position sizing and risk control can reduce trading risks. Overall, it demonstrates strong profit potential worth experimenting with and refining further.

Parameters

NameDefaultWhat it controls
v_input_19Conversion Line Periods
v_input_226Base Line Periods
v_input_352Leading Span B Periods
v_input_426Displacement

Source Pine Script

/*backtest
start: 2023-10-16 00:00:00
end: 2023-11-15 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Ichimoku Cloud Strategy", overlay=true)

// Define Ichimoku Cloud components
conversionPeriods = input(9, title="Conversion Line Periods")
basePeriods = input(26, title="Base Line Periods")
leadingSpanBPeriods = input(52, title="Leading Span B Periods")
displacement = input(26, title="Displacement")

// Calculate Ichimoku Cloud components
tenkanSen = ta.sma(close, conversionPeriods)
kijunSen = ta.sma(close, basePeriods)
senkouSpanA = (tenkanSen + kijunSen) / 2
senkouSpanB = ta.sma(close, leadingSpanBPeriods)

// Plot Ichimoku Cloud components
p1 = plot(tenkanSen, color=color.green, linewidth=2, title="Tenkan Sen")
p2 = plot(kijunSen, color=color.red, linewidth=2, title="Kijun Sen")
p3 = plot(senkouSpanA, color=color.blue, linewidth=2, title="Senkou Span A", offset=displacement)
p4 = plot(senkouSpanB, color=color.orange, linewidth=2, title="Senkou Span B", offset=displacement)
fill(p3, p4, color=color.purple, transp=30, title="Cloud")

// Define strategy conditions
enterLong = ta.crossover(tenkanSen, kijunSen) and close > senkouSpanA[displacement] and close > senkouSpanB[displacement]
exitLong = ta.crossunder(tenkanSen, kijunSen) or close < senkouSpanA[displacement] and close < senkouSpanB[displacement]

// Execute strategy
if (enterLong)
    strategy.entry("Long", strategy.long)
if (exitLong)
    strategy.close("Long")

Published by ChaoZhang on the FMZ strategy square · last modified 2023-11-16. Collected in the Quant Trading Vault. Unvalidated research: re-test with your own data and costs before trusting it.

Build this with AgenKit

A spec is not a trading system. Paste this into your coding agent and AgenKit runs a specialist team — architecture, test-first build, risk gates, review — with paper trading on by default.

in Claude Code, Cursor, Codex & 4 more
/agenkit build a production-grade trading bot with a backtest engine, risk controls and paper trading by default from strategies/Momentum-Ichimoku-Cloud-Trading-Strategy.md
  1. npx agenkit install engineering-kit in your project
  2. Paste the command into your agent and approve each phase
  3. Get tests, backtest, risk controls and a paper-trading switch

Understand it first

Before you run this, read the lesson behind the idea and how to backtest it honestly. Specs like this one are the survivors of an unknown number of trials; deflate their results accordingly.

Related specs

esc

Try , , or .

↑↓ move↵ open