이 전략은 이치모쿠 클라우드 및 스톱 오더를 사용하여 개발된 트렌드 다음 전략입니다. 이치모쿠 클라우드의 변환 선, 기본 선 및 지연 스판을 활용하여 트렌드 방향을 결정하고 스톱 손실을 위해 클라우드 밴드의 상단 및 하단 가장자리에 스톱 오더를 설정합니다.
이 전략은 다음과 같은 원칙에 기초합니다.
전환선은 최근 평균 가격 변화를 반영한 지난 9일 동안의 최고와 최저 가격의 평균입니다.
기본선은 지난 26일 동안의 최고와 최저 가격의 평균이며, 중장기 평균 가격 변화를 반영합니다.
지연 기간은 지난 52일 동안 가장 높은 가격과 가장 낮은 가격의 평균이며, 장기 평균 가격 변화를 반영합니다.
변환 및 기본선의 평균은 선도 스프랜 1을 형성하고, 뒤떨어진 스프랜은 선도 스프랜 2를 형성한다. 두 선도 스프랜 사이의 영역은 구름 밴드를 형성한다. 구름 밴드의 상단과 하단 가장자리는 트렌드 방향을 나타낸다.
가격이 클라우드 범위를 넘어서면, 롱으로 가세요. 가격이 클라우드 범위를 넘어서면, 롱으로 가세요.
트렌드를 따라 클라우드 밴드의 상단과 하단 가장자리에 Stop Loss 명령을 설정합니다.
구체적으로, 전략은 세 Ichimoku 라인을 정의하고, 선두 스펜 1과 2를 얻기 위해 평균을 계산하고, 그 다음 상부 또는 하부 클라우드 밴드 경계를 통과하는 가격에 따라 트렌드 방향을 결정합니다. 긴 또는 짧은 포지션을 취한 후, 클라우드 밴드 가격을 기반으로 스톱 로스를 설정하여 트렌드를 따라 스톱 로스를 설정합니다.
이 전략의 장점은 다음과 같습니다.
이치모쿠 클라우드는 시장 소음을 필터링하여 여러 시간 프레임에서 가격 정보를 통합하여 트렌드 방향을 안정적으로 결정합니다.
스톱 로스 배치는 합리적입니다. 클라우드 밴드 가장자리를 사용하면 적절한 스톱 로스 범위와 좋은 트렌드 추적이 가능합니다.
이치모쿠 클라우드는 잡음을 필터하고 손해를 막아 위험을 조절합니다.
유연한 매개 변수 조정: 시장 적응을 위해 전환, 기본 및 지연 스펜 기간을 조정할 수 있습니다.
명확하고 이해하기 쉬운 논리입니다. 트렌드를 따라 접근하면 쉽게 이해할 수 있습니다.
이 전략의 위험은 다음과 같습니다.
스톱 로스 브레이크 리스크: 변동적인 가격 움직임은 스톱 로스를 유발하고 수익성 있는 포지션을 종료 할 수 있습니다.
다양한 시장에서 휘프사, 빈번한 스톱 로스 트리거가 오버 트레이딩으로 이어집니다.
매개 변수 위험: 변환, 기본 및 지연 스프렌의 부적절한 설정으로 인해 중지 손실 범위가 너무 넓거나 좁을 수 있습니다.
선물에서 미끄러지는 비용. 빈번한 주문은 수익에 영향을 미치는 과도한 미끄러지는 비용으로 이어질 수 있습니다.
알고리즘 거래 위험, 다운타임, 네트워크 문제, 버그는 거래 실행에 영향을 줄 수 있습니다.
이러한 위험을 해결하기 위해 매개 변수 최적화, 중지 손실 알고리즘, 서버 안정성 향상, 적절한 위험 관리 및 철저한 전략 테스트가 수행되어야합니다.
이 전략은 다음과 같은 측면에서 최적화 될 수 있습니다.
최적 값을 찾기 위해 다른 기간 조합을 테스트하여 매개 변수 설정을 최적화합니다.
트레일링 스톱, 변동성 스톱 등으로 스톱 로스 알고리즘을 개선하여 스톱 로스 트리거를 줄이십시오.
MACD, KDJ 같은 추가 지표를 포함해서 의사결정을 개선할 수 있습니다.
손실을 제한하기 위해 자동 손실 폐쇄 기능을 추가합니다.
정지 손실 출구 후 재입구 메커니즘을 구현합니다.
동적 위치 사이즈링을 통해 자금 관리를 최적화합니다.
전체적으로, 전략은 명확한 논리를 가지고 있으며, 트렌드 방향에 Ichimoku 클라우드와 스톱 로스 트레일링에 클라우드 밴드를 사용하여 위험을 효과적으로 제어하고 실용적인 유용성을 가지고 있습니다. 그러나 위험은 존재하므로 매개 변수, 스톱 로스 알고리즘이 최적화되어야하며 안정적인 라이브 거래 이익을 위해 적절한 위험 통제가 구현되어야합니다. 트렌드 다음 원칙에 기반한 스톱 로스 전략을 설계하는 좋은 예입니다.
/*backtest start: 2022-10-27 00:00:00 end: 2023-11-02 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title = "Noro's Ichimoku Stop Strategy", shorttitle = "Ichimoku Stop Strategy", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") conversionPeriods = input(9, minval = 1, title = "Conversion Periods") basePeriods = input(26, minval = 1, title = "Base Periods") laggingSpan2Periods = input(52, minval = 1, title = "Lagging Span") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //Ichimoku donchian(len) => avg(lowest(len), highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = avg(conversionLine, baseLine) leadLine2 = donchian(laggingSpan2Periods) //Cloud p1 = plot(leadLine1, offset = basePeriods, color=color.green, title="Lead 1", transp = 100) p2 = plot(leadLine2, offset = basePeriods, color=color.red, title="Lead 2", transp = 100) fill(p1, p2) //Signals max = max(leadLine1[basePeriods], leadLine2[basePeriods]) min = min(leadLine1[basePeriods], leadLine2[basePeriods]) up = low > max dn = high < min if max > 0 strategy.entry("Long", strategy.long, needlong ? na : 0, stop = max) strategy.entry("Short", strategy.short, needshort ? na : 0, stop = min)