이 전략은 주로 K 라인의 가격 스윙 범위와 트렌드 판단을 사용하여 거래 기회를 찾습니다. 가격이 이전 K 라인의 높은 지점이나 낮은 지점을 뚫을 때 거래 신호를 보낼 것입니다. 트렌드가 올라갈 때 가격이 높은 지점을 뚫을 때 길게; 트렌드가 내려갈 때 가격이 낮은 지점을 뚫을 때 짧게.
이 전략은 주로 두 가지 요점을 기반으로 합니다.
트렌드 방향을 판단하기 위한 클링거 오시레이터. 지표가 0보다 크면 상승 추세를 나타내고 0보다 작으면 하락 추세를 나타냅니다.
가격은 이전 K 라인의 가장 높은 가격 또는 가장 낮은 가격을 통과합니다. 가장 높은 가격을 통과 할 때 상승 추세에서 길게 이동하고 가장 낮은 가격을 통과 할 때 하락 추세에서 짧게 이동합니다.
특히 전략의 입시 논리는 다음과 같습니다.
긴 항목:
짧은 항목:
시장에 진입한 후, 스톱 로스 또는 노프스 가격은 진입 가격의 특정 비율에 따라 설정됩니다.
이 전략의 주요 장점은 다음과 같습니다.
트렌드가 바뀔 때 기회를 잡을 수 있습니다. 수익 가능성을 높일 수 있습니다.
트렌드 방향을 결정하기 위해 클링거 오시레이터를 사용하십시오. 오시레이션 시장에서 방향없이 거래를 피하십시오.
이동평균을 결합해서 거짓 파장을 필터링합니다.
통제할 수 있는 위험, 합리적인 스톱 로스, 그리고 수익을 취하라.
이 전략의 주요 위험은 다음과 같습니다.
변동 시장에서는 더 많은 스톱 로스가 있을 수 있습니다.
부적절한 이동 평균 매개 변수 설정은 판단에 오류를 일으킬 수 있습니다.
실패한 탈출은 후퇴 손실로 이어질 수 있습니다.
트렌드가 역전되면 손실이 커질 수 있습니다.
빈번한 거래, 높은 수수료
위험은 잘못된 판단을 줄이기 위해 더 적합한 이동 평균 기간을 찾기 위해 매개 변수를 최적화하여 제어 할 수 있습니다. 단일 손실을 제어하기 위해 합리적인 스톱 로스 거리를 설정하십시오. 명백한 추세를 가진 품종을 거래하십시오. 적절한 거래 빈도를 줄입니다.
이 전략은 다음과 같은 측면에서 최적화 될 수 있습니다.
이동 평균 매개 변수를 최적화하여 더 부드러운 매개 변수를 찾아 소음을 줄이십시오.
추세를 결정하기 위해 다른 지표를 테스트하고 더 신뢰할 수있는 결정 지표를 찾습니다.
스톱 로스를 최적화하고 수익 전략을 수립하여 시장 통계적 특성에 더 적합하도록 합니다.
트렌드 필터링을 강화하여 오스실레이션 시장에서 잘못된 파장을 피하십시오.
거래 시간 및 품종을 선택하기 위해 거래 시간 및 품종 필터링을 추가합니다.
다른 시간 사이클에 대한 연구 매개 변수 설정
일반적으로 이것은 비교적 간단하고 실용적인 브레이크아웃 전략이다. 이 전략의 장점은 통제 가능한 위험과 지표를 사용하여 방향 없는 거래를 피하는 것이다. 그러나 오스실레이션 시장에서 잘못된 브레이크아웃을 방지하고 적시에 스톱 로스를 주의해야 한다. 매개 변수 최적화와 지표 신뢰성을 향상시킴으로써 전략 성공률을 더욱 향상시킨다. 이 전략은 명백한 트렌드가 있는 시장에 적합하다. 더 강한 오스실레이션과 함께 종류와 시간 주기에 사용되면 결과는 손상될 수 있다.
/*backtest start: 2022-10-20 00:00:00 end: 2023-10-26 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/ // © exlux99 //@version=4 strategy("Advanced OutSide Forex strategy", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, calc_on_every_tick = true, commission_type = strategy.commission.percent, commission_value = 0.0) sv = change(hlc3) >= 0 ? volume : -volume kvo = ema(sv, 34) - ema(sv, 55) sig = ema(kvo, 13) length = input(title="Length", type=input.integer, defval=27) src = input(close, title="Source") lsma = hma(src, length) if (high > high[1] and low < low[1]) if (close > open and kvo>0 and lsma<close) strategy.entry("long", strategy.long, comment="long") if (high < high[1] and low > low[1]) if (close < open and kvo<0 and lsma>close) strategy.entry("short", strategy.short, comment="short") tplong=input(0.006, step=0.001, title="Take profit % for long") sllong=input(0.012, step=0.001, title="Stop loss % for long") tpshort=input(0.0075, step=0.001, title="Take profit % for short") slshort=input(0.015, step=0.001, title="Stop loss % for short") strategy.exit("short_tp/sl", "long", profit=close * tplong / syminfo.mintick, loss=close * sllong / syminfo.mintick, comment='LONG EXIT', alert_message = 'closeshort') strategy.exit("short_tp/sl", "short", profit=close * tpshort / syminfo.mintick, loss=close * slshort / syminfo.mintick, comment='SHORT EXIT', alert_message = 'closeshort')