듀얼 모멘텀 전략


생성 날짜: 2023-10-09 15:03:30 마지막으로 수정됨: 2023-10-09 15:03:30
복사: 0 클릭수: 790
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

개요

이중동량전략은 주가가 연속적으로 상승하거나 하락하는 K선 형태를 식별하여 저가와 높은 판매의 목적을 달성한다. 그것은 간단한 지표 판단을 사용하여 구현하기 쉽고 중간 단선 거래에 적합하다.

전략 원칙

이 전략은 크게 두 가지 지표에 기반을 두고 있습니다.K선 수그리고아래로 내려가는 K선

  • 클로즈가 LongEnterAfter의 K선을 넘어서면 더 많이 하고, 클로즈가 LongExitAfter의 K선을 넘어서면 더 많이 하락한다.
  • Close가 ShortEnterAfter의 K선을 넘으면 공백; Close가 ShortExitAfter의 K선을 넘으면 공백.

위의 변수는 LongEnterAfter, LongExitAfter, ShortEnterAfter 및 ShortExitAfter를 조정하여 특정 거래 규칙을 결정할 수 있습니다.

이 전략은 주식 가격 동력의 변화를 포착하고, 매일 종결 가격의 하락 상황을 지속적으로 모니터링하여 진출 시기를 판단한다. 지표 매개 변수 설정의 K선 형태가 나타나면, 그에 따른 매매 또는 매매 평점 작업을 수행한다.

종합적으로, 이중동량전략의 핵심은 주가 가격의 단기 하락 경향을 식별하여 거래 방향과 시간을 결정하는 것이다. 그것은 간단하고 직접적이며, 매개 변수를 설정하여 전략의 적극성을 조정할 수 있다.

우위 분석

이중 동력 전략은 다음과 같은 장점이 있습니다.

  • 이 아이디어는 간단하고, 직설적이며, 이해하기 쉽고, 실행하기 쉽습니다.
  • 설정 가능한 매개 변수, 전략의 적극성을 조정할 수 있다.
  • 주식 가격의 단기적 추세에 집중하는 것은 주식 동력을 파악하는 데 도움이 됩니다.
  • 스톱로즈와 결합하면 위험을 효과적으로 조절할 수 있다.
  • 주식 가격 변동에 민감한 주식, 특히 중소 시가총액 주식에 적용한다.

일반적으로, 이중 동량 전략은 주식 가격 변화에 더 민감한 투자자에게 적합하며, 높은 동작 주파수를 추구한다. 그것은 개별 주식의 단기 운행을 포착하여 초과 수익을 얻을 수 있다. 매개 변수를 조정하여 전략의 주파수와 위험을 제어 할 수 있다.

위험 분석

이중 동력 전략에는 다음과 같은 위험도 있습니다.

  • 너무 많은 변수 설정에 의존하면, 다른 변수가 거래 빈도와 수익의 큰 차이를 초래할 수 있다.
  • 단기적인 주가 추세에만 집중하면, 장시간의 기회를 놓칠 수 있다.
  • 거래 빈도가 높으면 거래 비용이 증가하고 점진 위험이 증가합니다.
  • 부적절한 상쇄 설정으로 인해 감당할 수 없는 손실이 발생할 수 있습니다.
  • 가격 변동이나 장기 정리된 주식에는 적용되지 않는다.
  • 거래량 변화에 주의해야 합니다.

위험을 통제하기 위해 다음과 같은 조치를 고려할 수 있습니다.

  • 변수를 조정하여 거래 빈도를 낮추고, 거래 지점을 자주 전환하는 과도한 최적화 위험을 제어하십시오.
  • 포지션 주기를 적절히 연장하고, 중·장선 추세에 주의를 기울여야 한다.
  • 스톱로스를 설정하고 단독 손실을 엄격히 통제하십시오.
  • 지속적인 돌파구를 가진 주식을 선택하고, 흔들리는 주식을 피하십시오.
  • 거래량을 늘리는 것이 중요하며, 거래량이 줄어들 때 중매의 위험을 피하는 것이 중요합니다.

최적화 방향

이 전략은 다음과 같은 점들을 고려하여 최적화할 수 있습니다.

  • 트렌드를 판단하는 지표를 추가하고, 트렌드 종료시 잘못된 거래를 피한다. MACD, KDJ 등의 지표를 도입하여 큰 트렌드를 판단할 수 있다.

  • 거래량 판단을 높이고, 거래량이 떨어질 때 매장하는 것을 피한다.

  • 이동 스톱을 설정하여 수익을 잠그고 ATR을 최소 N배로 스톱을 추적할 수 있습니다.

  • 피드백 파라미터 조합을 추가하여 최적의 파라미터를 찾아 안정성을 높인다.

  • 알고리즘 거래 모듈을 추가하여 더 지능적인 주문 관리를 구현합니다.

  • 더 효과적인 거래 신호를 찾아내기 위해 기계 학습 기술을 사용한다.

전반적으로, 주요 최적화 방향은 전략의 안정성을 높이고, 위험을 통제하고, 더 효과적인 알파를 발굴하는 것입니다. 동시에, 알고리즘 거래 능력을 강화하는 것도 중요합니다.

요약하다

이중동량전략은 간단한 연속 상승 하락 K선 판단을 통해 주식 선택시 거래를 실현한다. 그것은 구현하기 쉽고, 변수 제어의 적극성을 조정할 수 있다. 주로 단기 수익을 추구하는 투자자에게 적합하며, 특히 중소형 시가총액 주식에는 적합하다. 동시에, 변수 오버 최적화, 스톱 로즈 설정, 거래량 변화와 같은 위험에 주의할 필요가 있다.

전략 소스 코드
/*backtest
start: 2022-10-02 00:00:00
end: 2023-10-08 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// strategy(title="simple momentum", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// ====================================
// STUDY AND STRATEGY

// Inputs
LongEnterAfter = input(title="enter long after X rising blocks",  defval=2)
LongExitAfter = input(title="exit long after X falling blocks",  defval=1)
ShortEnterAfter = input(title="enter short after X falling blocks",  defval=2)
ShortExitAfter = input(title="exit short after X rising blocks",  defval=1)

// Criteria
Valid = change(time)
LongEnter = Valid and rising(close, LongEnterAfter)
LongExit = Valid and falling(close, LongExitAfter)
ShortEnter = Valid and falling(close, ShortEnterAfter)
ShortExit = Valid and rising(close, ShortExitAfter)

// ====================================
// STRATEGY

TradeSinceYear = input(title="trade since year",  defval=2017)
TradeSinceMonth = input(title="trade since month",  defval=1)

if year > TradeSinceYear or (year == TradeSinceYear and month >= TradeSinceMonth)
    strategy.entry("long", strategy.long, when = LongEnter)
    strategy.close("long", when = LongExit)

    strategy.entry("short", strategy.short, when = ShortEnter)
    strategy.close("short", when = ShortExit)