이 전략의 이름은 이치모쿠 클라우드 브레이크아웃 및 ADX 인덱스를 기반으로 한 양적 거래 전략이다. 이치모쿠 클라우드 차트를 평균 방향 움직임 지표 (ADX) 와 결합하여 언제 긴 또는 짧은 포지션을 취해야하는지 결정합니다. 구체적으로, 가격이 클라우드 차트의 주요 영역을 통과하고 ADX가 강한 추세를 보이는 경우 포지션을 입력합니다.
이 전략은 Ichimoku Kinko Hyo 지표의
장거리 입력 신호:
짧은 입력 신호:
이 전략은 그래프 패턴 분석과 트렌드 분석 지표를 결합하여 시장 추세와 강점을 효과적으로 결정할 수 있습니다. 주요 장점은 다음과 같습니다.
이 전략에는 몇 가지 위험이 있습니다. 주로 ADX 트렌드 결정의 불안정성에 관한 것입니다. 위험과 해결책은 다음과 같습니다.
이 전략은 다음과 같은 방법으로 더 이상 최적화 될 수 있습니다.
이 전략은 이치모쿠 클라우드 차트와 ADX 트렌드 인덱스를 결합하여 완전한 양적 거래 시스템을 형성합니다. 트렌드를 판단하는 동시에 주요 지원 / 저항 수준을 식별합니다. 시장 기회를 효과적으로 포착 할 수 있습니다. 이 전략은 라이브 거래에서 구현하기가 쉽고 최적화 할 여지가 있습니다. 전반적으로 품질의 양적 전략입니다.
/*backtest start: 2023-01-26 00:00:00 end: 2024-02-01 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Coinrule //@version=5 strategy('Ichimoku Cloud with ADX (By Coinrule)', overlay=true, initial_capital=1000, process_orders_on_close=true, default_qty_type=strategy.percent_of_equity, default_qty_value=30, commission_type=strategy.commission.percent, commission_value=0.1) showDate = input(defval=true, title='Show Date Range') timePeriod = time >= timestamp(syminfo.timezone, 2022, 1, 1, 0, 0) // Stop Loss and Take Profit for Shorting Stop_loss = input(1) / 100 Take_profit = input(5) / 100 longStopPrice = strategy.position_avg_price * (1 - Stop_loss) longTakeProfit = strategy.position_avg_price * (1 + Take_profit) // Inputs ts_bars = input.int(9, minval=1, title='Tenkan-Sen Bars') ks_bars = input.int(26, minval=1, title='Kijun-Sen Bars') ssb_bars = input.int(52, minval=1, title='Senkou-Span B Bars') cs_offset = input.int(26, minval=1, title='Chikou-Span Offset') ss_offset = input.int(26, minval=1, title='Senkou-Span Offset') long_entry = input(true, title='Long Entry') short_entry = input(true, title='Short Entry') middle(len) => math.avg(ta.lowest(len), ta.highest(len)) // Ichimoku Components tenkan = middle(ts_bars) kijun = middle(ks_bars) senkouA = math.avg(tenkan, kijun) senkouB = middle(ssb_bars) // Plot Ichimoku Kinko Hyo plot(tenkan, color=color.new(#0496ff, 0), title='Tenkan-Sen') plot(kijun, color=color.new(#991515, 0), title='Kijun-Sen') plot(close, offset=-cs_offset + 1, color=color.new(#459915, 0), title='Chikou-Span') sa = plot(senkouA, offset=ss_offset - 1, color=color.new(color.green, 0), title='Senkou-Span A') sb = plot(senkouB, offset=ss_offset - 1, color=color.new(color.red, 0), title='Senkou-Span B') fill(sa, sb, color=senkouA > senkouB ? color.green : color.red, title='Cloud color', transp=90) ss_high = math.max(senkouA[ss_offset - 1], senkouB[ss_offset - 1]) ss_low = math.min(senkouA[ss_offset - 1], senkouB[ss_offset - 1]) // ADX [pos_dm, neg_dm, avg_dm] = ta.dmi(14, 14) // Entry/Exit Signals tk_cross_bull = tenkan > kijun tk_cross_bear = tenkan < kijun cs_cross_bull = ta.mom(close, cs_offset - 1) > 0 cs_cross_bear = ta.mom(close, cs_offset - 1) < 0 price_above_kumo = close > ss_high price_below_kumo = close < ss_low bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and avg_dm < 45 and pos_dm > neg_dm bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and avg_dm > 45 and pos_dm < neg_dm strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod) strategy.close('Long', when=bearish and not short_entry) strategy.entry('Short', strategy.short, when=bearish and short_entry and timePeriod) strategy.close('Short', when=bullish and not long_entry)