이동 평균 풀백 거래 전략


생성 날짜: 2023-12-07 18:09:27 마지막으로 수정됨: 2023-12-07 18:09:27
복사: 0 클릭수: 816
avatar of ChaoZhang ChaoZhang
1
집중하다
1619
수행원

이동 평균 풀백 거래 전략

개요

이동 평균 철회 거래 전략 (영어: Moving Average Pullback Trading Strategy) 은 트렌드 방향으로 거래하는 전략이다. 그것은 장기 및 단기 이동 평균의 관계를 사용하여 전반적인 트렌드 방향을 판단하고, 단기 철회 할 때 낮은 시간에 구매하고, 평점 포지션은 중지 및 중지하는 것을 목표로한다.

전략 원칙

이 전략의 주요 판단 규칙은 다음과 같습니다.

  1. 종결 가격이 장기 이동 평균 위에 있을 때, 현재 다면 상태에서 포지션 개시 조건을 충족하고 있음을 확인합니다.
  2. 단기 이동 평균의 위에서 단기 이동 평균의 아래로 마감 가격이 끌려갈 때 단기 회수 현상이 발생합니다.
  3. 이 시점에 RSI 지표가 30보다 작으면 과매매 상태라고 여겨지며 구매 신호를 형성합니다.
  4. 입수 가격의 5% 이하로 정한 중지 손실과 입수 가격의 10% 이상으로 정한 중지 손실을 가진 다중 입장을 설정합니다

이러한 조합 판단을 통해, 우리는 추세 방향이 예상과 일치하는 전제 조건에서, 단기 조정 기회를 활용하여 포지션을 구축할 수 있습니다.

전략적 이점

이 전략의 가장 큰 장점은 큰 추세에 대한 예상 하에만 다중 거래하는 것으로, 흔들리는 시장의 위험을 효과적으로 피할 수 있다는 것입니다. 동시에, 단기 평균의 재조정을 이용한 재구매 시간을 활용하여 비교적 좋은 가격으로 시장에 진입 할 수 있습니다.

또한, 이 전략은 중지 손실 및 중지 메커니즘을 설정한다. 이것은 판단 오류가 발생하여 역행동이 발생하더라도 손실을 중지하여 제어 할 수 있습니다.

전략적 위험

이 전략은 큰 트렌드 판단과 스톱 설정을 고려하지만, 위험도 있습니다.

  1. 장기적 추세 판단 오류의 위험. 시장이 다목적 상태로 진입한 후 더 많은 포지션을 열고, 실제로 시장이 다목적 상태에서 흔들림이나 공백으로 바뀌었을 때 큰 손실을 초래할 수 있습니다.

  2. 스톱 손실이 쫓겨나는 위험. 특히 중대한 부정적인 사건이 발생했을 때 시장이 점프 하락을 일으킬 수 있으며, 미리 설정 된 스톱 손실 선을 초과하여 손실을 통제 할 수 없습니다.

그리고, 우리는 위험을 줄이기 위해 다음과 같은 몇 가지 방법을 고려할 수 있습니다.

  1. 대시장 분석을 잘하고, 흔들림 영역 사이에 흐름을 잘못 판단하는 것을 피하십시오. 또는 더 긴 주기 이동 평균을 설정하여 큰 흐름을 확인하십시오.

  2. 조건부 상표는 시장이 하락할 때 평지 포지션을 촉발하는 조건부 상표입니다.

전략 최적화

이 전략은 장선 판단과 단선 진입을 고려할 때 다음과 같은 몇 가지 측면에서 더 최적화할 수 있습니다.

  1. 이동 평균의 주기 변수를 최적화하여 최적의 변수 조합을 찾습니다.

  2. 다른 지표 판단을 추가하십시오. 거래량 분석을 추가하거나 RSI 지표에 기반한 다른 과매매 과매매 지표와 결합하십시오.

  3. 실시간으로 스톱 스의 폭을 조정할 수 있습니다. 시장의 변동에 따라 적응 조정할 수 있으며, 큰 변동이 있을 때 스톱 스의 폭을 적절히 완화할 수 있습니다.

  4. 다양한 스코드의 품종 적합성을 테스트한다. 이러한 전략은 지수 제품에게 더 적합할 수 있으며, 개별 주식을 사용할 경우 다른 필터링 규칙을 추가해야 한다.

요약하다

이동 평균 회수 거래 전략은 전체적으로 더成熟한 안정적인 전략이다. 그것은 주로 큰 추세와 단기 회수 기회를 고려하여 높은 것을 따라가지 않는 조건에서 더 나은 진입 시간을 얻는다. 동시에, 손실을 막는 스톱을 설정하여 수익을 잠금하고 위험을 제어한다. 이 전략은 특히 강력한 포괄적 인 분석 능력과 풍부한 거래 경험을 가진 투자자에게 적합하다.

전략 소스 코드
/*backtest
start: 2022-11-30 00:00:00
end: 2023-12-06 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/
// © tsujimoto0403

//@version=5
strategy("simple pull back", overlay=true,default_qty_type=strategy.percent_of_equity,
     default_qty_value=100)

//input value 
malongperiod=input.int(200,"長期移動平均BASE200/period of long term sma",group = "パラメータ")
mashortperiod=input.int(10,"長期移動平均BASE10/period of short term sma",group = "パラメータ")
stoprate=input.int(5,title = "損切の割合%/stoploss percentages",group = "パラメータ")
profit=input.int(20,title = "利食いの割合%/take profit percentages",group = "パラメータ")
startday=input(title="バックテストを始める日/start trade day", defval=timestamp("01 Jan 2000 13:30 +0000"), group="期間")
endday=input(title="バックテスを終わる日/finish date day", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間")


//polt indicators that we use 
malong=ta.sma(close,malongperiod)
mashort=ta.sma(close,mashortperiod)

plot(malong,color=color.aqua,linewidth = 2)
plot(mashort,color=color.yellow,linewidth = 2)

//date range 
datefilter = true

//open conditions
if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30 
    strategy.entry(id="long", direction=strategy.long)
    
//sell conditions 
strategy.exit(id="cut",from_entry="long",stop=(1-0.01*stoprate)*strategy.position_avg_price,limit=(1+0.01*profit)*strategy.position_avg_price)


if close>mashort and close<low[1] and strategy.position_size>0
    strategy.close(id ="long")