동력 돌파구 EMA 전략

저자:차오장, 날짜: 2024-02-05 14:51:12
태그:

img

전반적인 설명

이 전략은 트렌드를 따르는 전략으로 가격 동력이 변화하고 이동 평균을 깨는 시점에 포지션에 진입하여 주식 가격의 트렌드 움직임을 포착하는 것을 목표로합니다.

전략 논리

이 전략의 핵심 논리는 다음과 같습니다.

오늘의 종료 가격이 어제의 높은 가격보다 높고 어제의 높은 가격이 5 일간의 EMA 라인을 만지지 않았을 때, 긴 거리로 가십시오. 이것은 주가가 상승세를 돌고 있음을 나타내는 돌파 신호입니다.

입력 후, 이전 바 마이너스 100 포인트의 최저로 스톱 손실을 설정합니다. 이윤을 취하는 것은 설정된 위험 보상 비율로 곱한 입시 가격으로 설정됩니다 (예정값은 2). 가격이 계속 상승하면 후속 스톱을 사용하여 더 많은 이윤을 확보 할 수 있습니다.

위의 내용은 이 전략의 기본적인 거래 논리를 다루고 있습니다.

이점 분석

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 큰 수익 잠재력을 가진 주식 가격의 트렌드 움직임을 포착합니다. 특히 상승 또는 하락 추세가 가속화되는 동안 가격 동력을 타는 데 적합합니다.

  2. EMA를 이용해서 불변한 가격 움직임을 필터링합니다.

  3. 탈출 신호는 명확하고 강력해 가짜 탈출을 줄여준다

  4. 좋은 리스크 제어 자본을 보호하기 위해 거래 기준으로 손실을 막습니다.

  5. 간단하고 명확한 전략 논리, 이해하기 쉽고 최적화하기 쉬운

위험 분석

이 전략에는 몇 가지 위험도 있습니다.

  1. 트렌드를 추격하면 주요 시장 전환점을 놓칠 위험이 있습니다. 더 높은 시간 프레임 트렌드를 모니터링하고 전체 포지션 크기를 관리해야합니다.

  2. 브레이크오웃 거래는 가짜 브레이크오웃 위험이 있습니다. 유효한 브레이크오웃을 확인하기 위해 볼륨 분석으로 확인해야합니다.

  3. 부적절한 스톱 로스 배치로 인해 스톱이 너무 넓거나 너무 좁을 수 있습니다. 시장 변동성과 개인 위험 선호도에 따라 조정해야합니다.

  4. 너무 높은 수익 목표를 달성하지 못할 수 있습니다. 가격이 역전되면 수익을 확보하기 위해 후속 중지 사용을 고려해야합니다.

최적화 방향

이 전략이 더 이상 최적화 될 수 있는 몇 가지 방법:

  1. MA 기간, 중지 손실 크기 등과 같은 매개 변수를 최적화하여 다른 주식과 시장 조건에 더 잘 맞게합니다. 단계적 최적화 및 유전 알고리즘은 매개 변수 조합을 테스트 할 수 있습니다.

  2. 볼륨 확인을 추가합니다. 볼륨은 브레이크아웃 신호의 진위를 검증할 수 있습니다. 입력 신호를 필터하는 볼륨 브레이크아웃을 설정할 수 있습니다.

  3. 더 큰 시간 프레임 트렌드를 모니터링합니다. 주요 트렌드에 맞춰 거래를 보장하십시오. 예를 들어 하락 추세에있을 때 단위로 거래하십시오.

  4. 동적 트레일링 스톱을 사용한다. 가격이 목표에 도달하면, 트레일링 스톱은 고정 트레이프 포인트 대신 이익을 잠금하기 위해 움직인다. 이것은 이익을 따르는 트렌드를 극대화한다.

  5. 트레이드 신호를 생성하기 위해 신경 네트워크나 무작위 숲과 같은 기계 학습 알고리즘을 추가하면 전략 안정성과 승률을 크게 향상시킬 수 있습니다.

요약

이 전략은 EMA 필터 및 스톱 로스 방법을 사용하여 가격 동력 변화를 감지하여 트렌드 움직임을 캡처합니다. 간단하지만이 브레이크아웃 시스템은 장점과 개선의 여지가 있습니다. 우리는 매개 변수를 최적화하고 지원 지표를 추가하여 전략을 더 견고하고 효율적으로 만들 수 있습니다.


/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Custom Strategy", overlay=true)

len = input.int(9, minval=1, title="Length")
src = input(close, title="Source")
offset = input.int(0, title="Offset", minval=-500, maxval=500)

ema5 = ta.ema(src, len)

// Condition for Buy Entry
buy_condition = close > high[1] and high[1] < ema5

// Set Target and Stop Loss
risk_reward_ratio = input(2.0, title="Risk-Reward Ratio")
target_price = close + (high[1] - low[1]) * risk_reward_ratio
stop_loss_price = low[1] - 100

// Execute Buy Order
if (buy_condition)
    strategy.entry("Buy", strategy.long)

// Exit conditions
if (strategy.position_size > 0)
    strategy.exit("Take Profit/Stop Loss", from_entry="Buy", profit=target_price, loss=stop_loss_price)

// Plotting
plot(ema5, title="EMA", color=color.blue, offset=offset)
plotshape(series=buy_condition, title="Buy Entry Signal", color=color.green, style=shape.triangleup, size=size.small, location=location.belowbar)


더 많은