GetString 모멘텀 돌파구 전략

저자:차오장, 날짜: 2023-11-22 15:31:26
태그:

img

전반적인 설명

이 전략은 이동 평균, CCI 지표, PSAR 지표 및 ADX 트렌드 인덱스를 결합하여 전형적인 돌파구 전략을 구현합니다. 명확한 상승 신호가있을 때 길고 명확한 하락 신호가있을 때 짧습니다. 중장기 및 단기 거래에 매우 적합합니다.

원칙

전략의 입시 조건은 다음과 같은 측면을 포함합니다.

  1. 이동 평균: 5일 선이 10일 선을 통과하고, 10일 선이 20일 선을 통과하고, 20일 선이 40일 선을 통과하는 것을 요구하며, 이는 대부분의 잘못된 돌파구를 효과적으로 필터링할 수 있습니다.

  2. CCI 표시기: 긴 신호로 -100 이하, 짧은 신호로 100 이상 CCI 표시기를 요구합니다.

  3. PSAR 지표: PSAR 지표의 방향이 가격에 의해 결정된 트렌드 방향과 일치하도록 요구합니다.

  4. ADX 지표: ADX가 20보다 높으면 시장이 트렌드 상태에 있음을 나타냅니다. 이는 획기적인 시스템을 사용하는 데 적합합니다.

동시에, 출구 조건은 또한 여러 지표를 고려합니다:

  1. 이동 평균: 입상 조건의 반대입니다. 예를 들어, 5일 라인이 10일 라인을 깨는 것은 포지션 폐쇄 신호입니다.

  2. CCI와 PSAR 지표는 입상 조건에 반대되는 의미를 가지고 있습니다. 예를 들어, 100 이상의 CCI는 긴 포지션을 닫는 신호입니다.

그래서 이 전략의 출입은 엄격하지만 출입은 느슨합니다. 상대적으로 높은 수익률을 얻을 수 있습니다.

장점

이 전형적인 다중 지표 결합 돌파구 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 엄격한 입시 조건은 필터링을 위한 여러 지표를 채택하여 잘못된 발견의 위험을 줄일 수 있습니다.

  2. 지표 매개 변수는 시장에 잘 적응할 수 있도록 최적화되었습니다.

  3. 트렌드 판단 지표는 쇼크 시장에 갇히지 않기 위해 채택됩니다.

  4. 이동 평균은 중장기 및 단기 동향을 안정적으로 결정하기 위해 사용됩니다.

  5. CCI 지표는 단기적인 과반 구매와 과반 판매 현상을 포착할 수 있습니다.

  6. PSAR 지표는 시장 동향의 방향을 결정하는 강력한 능력을 가지고 있습니다.

위험성

이 전략은 또한 다음과 같은 위험을 가지고 있습니다.

  1. 극단적인 시장에서는 여러 지표 조합의 효과가 약화 될 수 있으며 위험을 완전히 필터링 할 수 없습니다.

  2. 트렌드가 큰 경우, 중장기 및 단기 지표를 사용하여 타이밍을 결정하는 것은 실패 할 수 있으며 트렌드를 완전히 파악 할 수 없습니다.

  3. CCI와 같은 지역 지표의 잘못된 매개 변수 설정은 기회를 놓칠 수 있습니다.

  4. PSAR 지표의 효과는 트렌드 전환점에 약합니다.

대책:

  1. 적당하게 입국 조건을 완화하고 더 적은 위험을 위해 더 많은 비용을 지불하십시오.

  2. 60일 또는 더 긴 이동 평균과 같은 장기 지표에 대한 판단을 높일 수 있습니다.

  3. CCI와 같은 매개 변수를 동적으로 최적화합니다.

  4. 볼링거 밴드 같은 추세를 판단하기 위해 더 많은 지표를 결합하십시오.

최적화 방향

이 전략은 또한 다음과 같은 최적화 방향을 가지고 있습니다.

  1. 실시간 매개 변수 최적화를 실현하고 적응력을 향상시키기 위해 기계 학습 알고리즘을 증가시킵니다.

  2. 모델 조합 기술을 늘리고 안정성을 높이기 위해 더 많은 상관관계가 없는 전략을 결합합니다.

  3. 단일 스톱 손실을 효과적으로 제어하기 위해 스톱 손실 전략과 같은 위험 관리 메커니즘을 도입하십시오.

  4. 트렌드 판단 모듈을 높여서 쇼크 시장에 들어가는 것을 피합니다.

  5. 다양한 시장 환경에서 최적의 지표가 선도적인 역할을 할 수 있도록 지표 가중을 최적화합니다.

결론

일반적으로, 이 전략은 전형적이고 고전적인 다중 지표 돌파구 전략이다. 이 전략의 장점은 엄격한 입시 조건, 느슨한 출구 조건이며, 또한 트렌드 판단 모듈을 포함하고 있다. 그러나 또한 몇 가지 위험이 있다. 보다 복잡한 시장 환경에 적응하기 위해 지속적인 최적화가 필요하다. 모델 조합과 매개 변수 최적화는 개발 방향이다.


/*backtest
start: 2023-11-14 00:00:00
end: 2023-11-21 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Bukan Kaleng Kaleng Li", shorttitle="BKKL", overlay=true)

psarDot = sar(0.01, 0.01, 0.2)
up = change(high)
down = -change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
trur = rma(tr, 14)
plus = fixnan(100 * rma(plusDM, 14) / trur)
minus = fixnan(100 * rma(minusDM, 14) / trur)
sum = plus + minus
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), 14)

longConditionSMA4020 = sma(close, 40) > sma(close, 20)
longConditionSMA2010 = sma(close, 20) > sma(close, 10)
longConditionSMA105 = sma(close, 10) > sma(close, 5)
longConditionSMA = longConditionSMA4020 and longConditionSMA2010 and longConditionSMA105
longConditionCCI = cci(close, 20) < -100
longConditionPSAR = psarDot > close
longConditionDMI = plus < 10
adxCondition = adx > 20

longCondition = longConditionSMA and longConditionCCI and longConditionPSAR and longConditionDMI
if (longCondition and adxCondition)
    strategy.order("Long Signal", true)

shortConditionSMA4020 = sma(close, 40) < sma(close, 20)
shortConditionSMA2010 = sma(close, 20) < sma(close, 10)
shortConditionSMA105 = sma(close, 10) < sma(close, 5)
shortConditionSMA = shortConditionSMA4020 and shortConditionSMA2010 and shortConditionSMA105
shortConditionCCI = cci(close, 20) > 100
shortConditionPSAR = psarDot < close
shortConditionDMI = minus < 10

shortCondition = shortConditionSMA and shortConditionCCI and shortConditionPSAR and shortConditionDMI
if (shortCondition and adxCondition)
    strategy.order("Short Signal", false)


더 많은