황소와 곰의 힘 이동 평균 거래 전략

저자:차오장, 날짜: 2023-12-20 16:30:02
태그:

img

전반적인 설명

이 전략은 시장에서 구매 및 판매 압력을 측정하기 위해 황소와 곰의 힘 이동 평균의 이론을 기반으로 알렉산더 엘더 박사가 개발했습니다. 이 전략은 일반적으로 트리플 스크린 거래 시스템과 함께 사용되지만 단독으로도 사용할 수 있습니다. 엘더 박사는 시장의 합의를 반영하기 위해 13 일 지수 이동 평균 (EMA) 을 사용합니다. 황소 힘은 구매자가 가격의 합의를 초월하는 능력을 반영합니다. 곰의 힘은 판매자가 가격의 평균 합의를 초월하는 능력을 반영합니다.

올 파워는 13일 EMA를 하루의 최고치에서 니다. 베어 파워는 13일 EMA를 하루의 최저치에서 니다.

전략 논리

이 전략은 알렉산더 엘더 박사의 황소와 곰의 힘 이론을 기반으로 한다. 황소와 곰의 힘 지표를 계산함으로써 시장 추세와 힘을 판단한다. 구체적으로, 황소 힘 지표는 가장 높은 가격에서 13일 EMA를 빼내면서 계산되는 구매자의 힘을 반영한다. 곰의 힘 지표는 가장 낮은 가격에서 13일 EMA를 빼내면서 계산되는 판매자의 힘을 반영한다. 황소 힘이 특정 문턱으로 떨어지면 짧은 신호가 생성된다. 곰의 힘이 특정 문턱으로 상승하면 긴 신호가 생성된다. 따라서 우리는 시장 추세를 판단하고 구매력과 판매력의 상대적 힘을 비교하여 시장을 이길 수 있다.

코드에서, 우리는 고위, 하위 및 13 일 EMA를 사용하여 황소 및 곰 힘 지표를 계산합니다. 지표가 활성화 될 때 대응하는 긴 또는 짧은 포지션이 열릴 수 있도록 트리거 문턱을 설정하십시오. 동시에, 포지션을 관리하기 위해 스톱 로스를 설정하고 수익 논리를 취하십시오. 전반적으로,이 전략은 거래의 시장 트렌드의 강도를 결정하기 위해 구매자와 판매자의 상대적 힘을 비교합니다.

이점 분석

이 전략의 장점은 다음과 같습니다.

  1. 구매력 및 판매력을 사용하여 시장 동향을 판단하고 역 테스트하는 데 효과적입니다.
  2. 쉽게 판단 할 수있는 명확한 구매 및 판매 신호
  3. 위험 통제를 위한 신뢰할 수 있는 스톱 로스 메커니즘
  4. 트리플 스크린 거래 시스템과 결합하면 더 잘 작동합니다

위험 분석

이 전략의 일부 위험은 다음과 같습니다.

  1. 다른 시장에 대한 조정이 필요한 주관적 매개 변수 설정
  2. 황소와 곰의 힘 지표는 잘못된 신호를 생성 할 수 있습니다.
  3. 잘못된 스톱 로스 투입이 손실을 증가시킬 수 있습니다.
  4. 성과는 거래 도구와 시간 틀에 따라 달라집니다.

대책:

  1. 다른 시장에 대한 매개 변수를 최적화
  2. 다른 표시기를 사용하여 필터를 추가합니다
  3. 위험을 엄격하게 제어하기 위해 스톱 로스 논리를 최적화하십시오.
  4. 적절한 거래 도구와 시간 프레임을 선택

최적화 방향

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

  1. 다른 시간 프레임에 대한 이동 평균 매개 변수를 최적화
  2. MACD와 같은 다른 지표를 필터 신호에 추가합니다.
  3. 트레일 스톱 손실과 같은 스톱 손실 및 수익 논리를 최적화하십시오.
  4. 기계 학습을 사용하여 자동으로 매개 변수를 최적화합니다.
  5. 구매/판매 신호를 예측하기 위해 딥러닝을 포함

요약하자면, 이 전략은 매개 변수, 신호, 위험 통제 등과 같은 측면에서 최적화 할 수있는 많은 공간이 있습니다.

결론

이 전략은 구매/판매 힘 이론에 기초하여 엘더 박사가 개발한 황소 및 곰 힘 지표를 사용하여 시장 추세와 힘을 판단합니다. 신호 규칙은 비교적 간단하고 명확합니다. 이점에는 파워를 통해 추세를 판단하고 스톱 로스를 통해 위험을 제어하는 것이 포함됩니다. 또한 주관적 매개 변수 및 잘못된 신호와 같은 위험이 있습니다. 매개 변수 최적화, 신호 필터 추가 및 엄격한 스톱 로스를 통해 안정성과 수익성을 향상시킬 수 있습니다. 이 전략은 공격적인 양적 거래자에게 적합합니다.


/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-19 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 5
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 06/10/2022
// Developed by Dr Alexander Elder, the Elder-ray indicator measures buying 
// and selling pressure in the market. The Elder-ray is often used as part 
// of the Triple Screen trading system but may also be used on its own.
// Dr Elder uses a 13-day exponential moving average (EMA) to indicate the 
// market consensus of value. Bull Power measures the ability of buyers to 
// drive prices above the consensus of value. Bear Power reflects the ability 
// of sellers to drive prices below the average consensus of value.
// Bull Power is calculated by subtracting the 13-day EMA from the day's High. 
// Bear power subtracts the 13-day EMA from the day's Low.
// WARNING:
// - For purpose educate only
// - This script to change bars colors. 
////////////////////////////////////////////////////////////
strategy(title="Elder Ray (Bull Power) TP and SL", shorttitle = "Bull Power", overlay = true)
Profit = input.float(7, title='Take Profit %', minval=0.01)
Stop = input.float(7, title='Stop Loss %', minval=0.01)
Length = input.int(14, minval=1)
Trigger = input.float(-200)
reverse = input.bool(true, title="Trade reverse")
xPrice = close
xMA = ta.ema(xPrice,Length)
var DayHigh = high
DayHigh := dayofmonth != dayofmonth[1]? high: math.max(high, nz(DayHigh[1]))
nRes = DayHigh - xMA
pos = 0
pos := nRes < Trigger ? 1:  0 
possig = reverse and pos == 1 ? -1 :
          reverse and pos == -1 ? 1 : pos	   
if (possig == 1) and strategy.position_size == 0
    strategy.entry('Long', strategy.long, comment='Market Long')
    strategy.exit("ExitLong", 'Long', stop=close - close * Stop / 100 , limit = close + close * Profit / 100 , qty_percent = 100)  
if (possig == -1) and strategy.position_size == 0
    strategy.entry('Short', strategy.short, comment='Market Long')
    strategy.exit("ExitShort", 'Short', stop=close + close * Stop / 100 , limit = close - close * Profit / 100 , qty_percent = 100)  
barcolor(strategy.position_size == -1 ? color.red: strategy.position_size == 1 ? color.green : color.blue )

더 많은