동력 역전 거래 전략

저자:차오장, 날짜: 2024-01-18 11:26:40
태그:

img

전반적인 설명

이것은 매우 간단한 단기 거래 전략으로 주로 인덱스 선물 매일 거래에 적합합니다. 인덱스가 장기 상승 트렌드 채널에 있고 단기 반전 신호가있을 때만 길게됩니다.

원칙

이 전략은 주로 유동 평균과 RSI 지표를 사용하여 트렌드와 과잉 구매/ 과잉 판매 조건을 결정합니다. 구체적인 거래 신호는: 지표 종료 가격은 장기 200 일 이동 평균에서 반등하고 장기 트렌드 판단으로 그 위에 남아 있습니다. 종료 가격은 단기 조정 신호로 10 일 이동 평균 아래로 깨집니다. RSI3는 과잉 판매 신호로 30 미만입니다. 위의 세 가지 조건이 충족되면 단기 반전의 확률이 상대적으로 크다고 믿어집니다. 따라서 길게 가십시오.

포지션 취득 후 출구는 스톱 로스, 수익 취득 및 단기 트렌드 판단에 기반합니다. 종료 가격이 10 일 MA 이상으로 떨어지면 단기 조정이 끝났다고 판단하면 적극적으로 수익을 취하십시오. 종료 가격이 새로운 최저치를 달성하면 손실로 종료하십시오. 종료 가격이 10% 상승하면 수익을 취하십시오.

이점 분석

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

  1. 간단한 논리, 이해하기 쉽고 실행하기 쉽고 초보자도 사용할 수 있습니다.
  2. 지수의 장기 상승 추세를 최대한 활용하여 추세에 반하는 거래를 피합니다.
  3. 수익 확률을 높이기 위해 RSI 지표를 사용하여 단기 전환점을 결정합니다.
  4. 리스크를 통제하기 위해 스톱 로스 (Stop Loss) 와 수익 취득 (Take Profit) 메커니즘이 있습니다.
  5. 데이터 요구가 낮고, 매일 데이터만 있으면 충분하며, 비용도 없이 구현할 수 있습니다.

위험 분석

이 전략은 또한 몇 가지 위험을 안고 있습니다.

  1. 하위 시장의 지속적인 하락은 손실로 이어질 것입니다.
  2. 실패한 반전은 상당한 손실을 초래할 수 있습니다.
  3. 부적절한 매개 변수 설정은 또한 잘못된 이동 평균 기간과 같은 결과에 영향을 줄 수 있습니다.
  4. 거래 빈도는 낮을 수 있고 모든 조정을 포착할 수 없습니다.
  5. 제한된 수익 상승, 시장 지수 수익률보다 높지 않습니다.

위의 위험에 대응하여, 사이클 매개 변수를 최적화하고, 스톱-러스 비율을 조정하고, 다른 지표 판단 등을 추가하는 방법과 같은 방법을 사용하여 전략을 개선할 수 있습니다.

최적화 방향

이 전략은 다음과 같은 측면에서 최적화 될 수 있습니다.

  1. 판단의 정확성을 높이기 위해 MACD와 KD와 같은 장기 및 단기 동향의 다인자 판단을 증가시킵니다.
  2. 거래량 분석을 추가합니다. 예를 들어 거래량이 급증했을 때 긴 거래가 가능하죠.
  3. 가장 좋은 매개 변수를 찾기 위해 워크 포워드 분석과 다른 방법을 통해 매개 변수 설정을 최적화합니다.
  4. 리버스 레벨을 결정하기 위해 피보나치 리트레이싱 레벨, 지원 및 저항 레벨과 같은 더 많은 리버스 요소를 결합하십시오.
  5. 더 높은 수익을 얻기 위해 포지션 및 스톱-러스 비율을 조정하는 것과 같은 이익 비율 최적화를 종합적으로 고려하십시오.

요약

요약하자면, 이것은 매우 간단하고 실용적인 단기 거래 전략이다. 이는 장기적인 상승 추세와 단기적 인지 환기를 결합하여 위험을 통제하면서 과도한 수익을 얻을 수 있습니다. 지속적인 최적화 및 매개 변수 조정으로 더 나은 결과를 얻을 수 있습니다.


/*backtest
start: 2023-01-11 00:00:00
end: 2024-01-17 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")
        




더 많은