이멘텀 브레이크 이동 평균 거래 전략

저자:차오장, 날짜: 2023-11-01 17:13:40
태그:

img

전반적인 설명

이 전략은 이동 평균, MACD 지표 및 촛불 패턴을 결합하여 낮은 변동성 주식에 대한 거래 신호를 생성합니다. 특정 조건이 충족되면 경고하기 위해 구매 또는 판매 신호를 인쇄 할 수 있습니다. 어떤 차트를 보는지 식별하는 데 도움이되는 시간 절약 장치로 사용합니다. 귀하의 필요에 맞게 입력 및 설정을 조정할 수 있습니다. 두 또는 세 개의 주문을 허용하는 것을 제안합니다.

전략 논리

이 전략은 주로 무역 신호 판단을 위해 세 가지 지표를 사용합니다.

  1. 이동 평균: 세 개의 이동 평균을 계산합니다. 빠른, 느린 및 기본 라인. 빠른 라인이 느린 라인을 넘을 때 구매 신호를 생성합니다.

  2. MACD 지표: MACD 히스토그램과 신호선을 계산하고, MACD 히스토그램이 0을 넘으면 구매 신호를 생성합니다.

  3. 촛불 패턴: 단일 촛불 내에서 비율 상승을 계산하고, 증가율이 특정 비율을 초과하면 구매 신호를 생성하여 시장 제작자가 마크업으로 판단합니다.

판매 신호의 경우, 전략은 스톱 로스 레벨을 설정하고 수익을 취합니다. 가격이 스톱 로스 레벨과 수익을 취하면 판매 신호를 생성합니다.

장점

  1. 상호 검증을 위해 세 가지 다른 유형의 기술 지표를 결합하고 잘못된 신호를 피합니다.

  2. 낮은 변동성 주식에 적합한 좋은 유동성. 이동 평균은 중장기 트렌드를 식별, MACD는 단기 추진력을 포착, 촛불은 시장 제작자의 행동을 식별.

  3. 손해를 멈추고 이익을 취하는 조건을 설정하여 이익을 고정하고 손실을 늘리는 것을 방지합니다.

  4. 단순하고 명확한 논리, 쉽게 구현할 수 있습니다. 직관적인 조정 가능한 매개 변수, 다양한 시장 조건에 유연한 적응.

  5. 지표 매개 변수는 최적화되고 안정성과 수익성을 위해 테스트됩니다.

위험성

  1. 트렌드를 따르는 전략으로서, 범위와 관련된 불안정한 시장에서 효과적이지 않으며, 빈번한 작은 이익 / 손실을 초래할 수 있습니다.

  2. 촛불 패턴은 주관적이고 시장 제작자의 행동을 정확하게 판단하기 어렵고, 일부 잘못된 신호를 생성할 수 있습니다.

  3. 스톱 손실과 수익을 취하는 것은 서로 다른 주식에 따라 조정되어야합니다. 너무 작으면 손실을 조기에 중단 할 수 있고 너무 크면 이익을 제한 할 수 있습니다.

  4. 전략은 비교적 복잡하며 동시에 여러 지표를 고려해야하며 거래자의 높은 기술적 기술을 필요로합니다. 매개 변수는 지속적인 추적 및 최적화가 필요합니다.

개선 방향

  1. 시장 조건 판단을 추가하고, 명백한 트렌드 단계에서 트렌드를 따르고, 통합 기간 동안 거래를 피하십시오. ATR 등을 추가하여 도움을 줄 수 있습니다.

  2. 이동 평균 매개 변수를 최적화하고 주식 특성에 맞는 기간을 조정합니다. 다른 이동 평균 유형을 실험하십시오.

  3. 마켓 메이커들의 행동을 모델링하는 기계 학습을 도입하고 잘못된 신호를 줄입니다.

  4. 고정된 설정 대신 동적인 스톱 로스 및 수익 전략을 개발하십시오.

  5. 잘못된 신호를 줄이기 위해 매우 주관적 인 지표를 제거하여 전략을 단순화하십시오. 더 안정적인 결과를 얻기 위해 동일한 유형의 지표를 평균하는 것도 고려 할 수 있습니다.

결론

이 전략은 이동 평균, MACD 및 시장 제작자 행동 판단을 비교적 완전한 저 위험 주식 거래 전략으로 통합합니다. 특정 장점이 있지만 개선 할 수있는 몇 가지 측면도 있습니다. 복잡하지만 기술 요구 사항은 거래자에게 너무 까다롭지 않습니다. 지속적인 최적화 및 테스트로이 전략은 매우 실용적인 양적 거래 도구가 될 수 있습니다. 낮은 변동성 주식의 단기 중장기 거래에 대한 참조 솔루션을 제공합니다.


/*backtest
start: 2022-10-25 00:00:00
end: 2023-10-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Simple Stock Strategy", overlay=true)

//Simple Trading Strategy for Stocks//
// by @ShanghaiCrypto //

////SMA////
fastLength = input(12)
slowLength = input(26)
baseLength = input(100)
price = close

mafast = sma(price, fastLength)
maslow = sma(price, slowLength)
mabase = sma(price, baseLength)

///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

////PUMP////
OneCandleIncrease = input(6, title='Gain %')
pump = OneCandleIncrease/100

////Profit Capture and Stop Loss//////
stop = input(2.0, title='Stop Loss %', type=float)/100
profit = input(6.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)

////Entries/////
if crossover(mafast, maslow)
    strategy.entry("Cross", strategy.long, comment="BUY")

if (crossover(delta, 0))
    strategy.entry("MACD", strategy.long, comment="BUY")
    
if close > (open + open*pump)
    strategy.entry("Pump", strategy.long, comment="BUY")

/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)

////Plots////
plot(mafast, color=green)
plot(maslow, color=red)
plot(mabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)

더 많은