이동 평균 리본 트렌드 전략은 이동 평균에 기반한 트렌드 추후 전략이다. 단일 이동 평균을 사용하여 가격 채널을 구성하고 채널에 대한 가격에 따라 트렌드 방향을 결정하고 그에 따라 거래를합니다. 이 전략은 트렌딩 시장에서 잘 작동하며 장기적인 가격 추세를 파악 할 수 있습니다.
이 전략은 지정된 기간 길이를 가진 간단한 이동 평균을 계산하고 (예정 20 기간) MA 값을 사용하여 가격 채널을 구축합니다. 채널의 상부 및 하부 대역은 각각 MA의 가장 높고 가장 낮은 값입니다. 닫기 가격이 상부 대역 위에 있다면 상승 추세가 결정됩니다. 닫기 가격이 하부 대역 아래에 있다면 하락 추세가 확인됩니다.
트렌드 변화가 감지되면 전략은 트레이드를 배치합니다. 트렌드가 아래에서 위로 변화하면 긴 포지션이 열립니다. 트렌드가 위에서 아래로 변화하면 짧은 포지션이 열립니다. 트렌드가 하락하면 기존의 긴 포지션이 닫히고 트렌드가 상승하면 기존의 짧은 포지션이 닫힐 것입니다.
구체적으로, 거래 논리는 다음과 같습니다.
이 전략은 단일 MA를 사용하여 가격 채널을 구성하고 가격 브레이크로 트렌드 변화를 식별합니다. 간단하고 직관적이며 쉽게 구현되며 트렌드 다음 전략으로 적합합니다.
이동 평균 리본 트렌드 전략은 다음과 같은 장점을 가지고 있습니다.
요약하자면, 전략은 간단한 논리에 기초하고, 가격 채널을 사용하여 트렌드 변화를 식별하고, 장기적인 가격 추세를 효과적으로 따라갈 수 있습니다. 트렌드 다음 전략으로 적합합니다.
이 전략은 또한 몇 가지 위험을 안고 있습니다.
위험은 다음과 같이 해결 될 수 있습니다.
이 전략은 다음과 같은 측면에서 향상될 수 있습니다.
MA 지표를 최적화: 성능을 향상시키기 위해 WMA와 같은 다른 MAs를 테스트하십시오.
필터를 추가합니다: 입문 전에 부피, 변동성 같은 필터를 추가하여 윙사브를 피합니다.
여러 시간 프레임: 더 많은 트렌드를 식별하기 위해 다른 시간 프레임에서 MA를 사용하십시오.
동적 매개 변수: 시장 조건에 따라 MA 기간과 채널 너비를 동적으로 조정할 수 있습니다.
위치 크기: 손실을 제한하기 위해 시장 조건에 따라 포지션 크기를 조정합니다. 크기를 줄이기 위해 수익 목표를 설정할 수 있습니다.
기계 학습: 최적의 매개 변수 조합을 찾기 위해 ML를 사용하십시오.
집합 방법: 다른 추세에 따른 전략과 결합하여 더 견고함을 얻습니다.
요약하자면, 전략은 지표 선택, 필터, 시간 프레임, 동적 매개 변수, 포지션 사이징 등 측면에서 포괄적으로 향상 될 수 있습니다. 이것은 다른 시장 환경에서 전략을 더 견고하고 유연하게 만듭니다.
이동 평균 리본 트렌드 전략은 간단한 트렌드 추적 전략이다. 단일 MA를 사용하여 가격 채널을 구축하고 채널 브레이크아웃을 통해 트렌드 방향을 식별하여 중장기 트렌드를 파악하는 것을 목표로 한다. 전략은 간단한 논리, 몇 가지 매개 변수 및 구현 용이성 등의 장점을 가지고 있다. 그러나 트렌드 식별에 지연하고 휘프사그되는 등의 위험도 있다. 라이브 성능을 향상시키기 위해 MA를 최적화하고 필터, 동적 매개 변수 등을 추가함으로써 추가적인 개선이 가능하다. 전반적으로, 전략은 트렌드 식별을 위해 가격 추적 채널을 사용하는 직관적인 접근 방식을 제공하며 기본적인 트렌드 전략으로 작용한다.
/*backtest start: 2022-10-26 00:00:00 end: 2023-11-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/ // © noro //@version=4 strategy(title = "Noro's Trend Ribbon Strategy", shorttitle = "Trend Ribbon str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1) len = input(20, minval = 5, title = "MA Length") src = input(ohlc4, title = "MA Source") //MA ma = sma(src, len) plot(ma, color = color.black) //Channel h = highest(ma, len) l = lowest(ma, len) ph = plot(h) pl = plot(l) //Trend trend = 0 trend := close > h[1] ? 1 : close < l[1] ? -1 : trend[1] //BG col = trend == 1 ? color.blue : color.red fill(ph, pl, color = col, transp = 50) //Trading if close > h[1] strategy.entry("Long", strategy.long) if close < l[1] strategy.entry("Short", strategy.short)