금 가치의 매일 이동 평균 추적 전략

저자:차오장, 날짜: 2024-01-12 11:54:21
태그:

img

전반적인 설명

이 전략은 이전 날의 오픈 및 클로즈 가격, 빠른 EMA 라인 및 느린 EMA 라인의 조합을 사용하여 사용자 정의 거래 시간 내에 시장 가치의 방향을 결정하고 그에 따른 긴 또는 짧은 항목을 만듭니다. 한편, 전략은 수익을 잠금하거나 손실을 제한하기 위해 트레일링 스톱 손실을 사용합니다.

전략 논리

이 전략은 주로 금 가치 방향에 대한 판단을 두 가지 측면에 기초합니다.

  1. 전날의 닫기 가격의 상승과 하락은 오픈 가격에 비례합니다. 닫기 가격이 오픈 가격보다 높으면 그 하루 동안 전체 가치가 상승했다는 것을 나타냅니다. 닫기 가격이 오픈 가격보다 낮다면 그 하루 동안 전체 가치가 감소했다는 것을 나타냅니다.

  2. 50주기 빠른 EMA 라인과 200주기 느린 EMA 라인의 위치 관계. 빠른 라인이 느린 라인의 위에 있다면, 단기 가치 상승 속도가 장기 트렌드보다 크다는 것을 의미합니다. 빠른 라인이 느린 라인의 아래에 있다면, 단기 가치 상승 속도가 장기 트렌드보다 작다는 것을 의미합니다.

롱 조건이 트리거되면, 만약 전날의 클로저가 오픈보다 높고, 현재 가격이 전날의 오픈보다 높고, 빠른 EMA가 느린 EMA보다 높고, 사용자가 정의한 거래 시간 내에 있다면, 전략은 긴 금으로 갈 것입니다.

짧은 조건이 트리거될 때, 만약 전날의 폐쇄가 오픈보다 낮고, 현재 가격이 전날의 오픈보다 낮고, 빠른 EMA가 느린 EMA보다 낮고, 사용자가 정의한 거래 시간 내에 있다면, 전략은 금을 짧게 할 것입니다.

또한, 전략은 수익을 잠금하거나 손실을 제한하기 위해 트레일링 스톱 손실을 사용합니다. 트레일링 스톱 거리는 초기 사용자 설정 및 이동 단계에 따라 조정됩니다.

이점 분석

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

  1. 금의 가치 방향을 결정하기 위해 여러 지표를 사용하는 것은 나쁜 거래의 가능성을 감소시킵니다.

  2. 트레일링 스톱은 수익을 효과적으로 차단하고 트렌드가 역전될 때 적시에 빠져나올 수 있으며 위험을 줄일 수 있습니다.

  3. 사용자들은 자신의 거래 시간 기준으로 적절한 거래 창을 선택할 수 있습니다. 제도적 거래 중에 갇히지 않도록 말이죠.

  4. EMA 기간 값은 시장 변화에 따라 조정 및 최적화 될 수 있으며 전략이 더 유연합니다.

위험 분석

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

  1. 갑작스러운 사건은 수동 개입 또는 더 느린 중지 손실 거리가 필요한 큰 손실을 초래할 수 있습니다.

  2. EMA는 시장 소음을 완전히 필터 할 수 없습니다. 잘못된 신호는 불필요한 거래를 유발할 수 있습니다. 매개 변수를 최적화하거나 더 많은 필터를 추가 할 수 있습니다.

  3. 부적절한 후속 정지 거리 설정은 또한 위험을 증가시킵니다. 너무 긴 것은 조기에 중단되는 경향이 있으며 너무 넓은 것은 손실을 효과적으로 제어하지 못합니다. 최적의 값을 결정하려면 광범위한 테스트가 필요합니다.

최적화 방향

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

  1. 오류가 있는 EMA 신호를 줄이기 위해 MACD, 볼링거 밴드 등 신호 필터링을 위한 다른 기술적 지표를 추가합니다.

  2. 시장 변동성에 따라 정지 거리를 지능적으로 조정하는 적응식 정지로 변경합니다.

  3. 더 나은 위험 통제와 단일 거래 손실의 영향을 줄이기 위해 부분 출구를 허용하기 위해 포지션 사이즈 규칙을 추가하십시오.

  4. 추세 방향을 결정하기 위해 기계 학습 모델을 추가하여 더 많은 역사적 데이터를 사용하여 정확성을 향상시킵니다.

  5. 더 높은 전략 참여 간격을 목표로 가우스 분포를 사용하여 거래 시간 창 선택을 최적화하십시오.

결론

요약하자면, 이것은 전형적인 트렌드 다음 전략이다. 상향 또는 하향 가치 추세를 결정하기 위해 여러 지표를 결합하고 견고한 것으로 간주된다. 후속 중지 응용 프로그램은 또한 효과적인 손실 통제를 허용한다. 지표와 중지 손실 규칙에 대한 추가 최적화는 수익과 위험 관리 사이의 더 나은 균형을 달성 할 수 있다. 그것은 암호화폐 거래에 참여하고자하는 일부 양적 투자 지식을 가진 투자자에게 적합하다.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("My Strategy", overlay=true)

// Inputs for user to modify
startHour = input(11, title="Start Hour")
endHour = input(16, title="End Hour")
trailingStop = input(100, title="Trailing Stop Start (pips)")
trailingStep = input(10, title="Trailing Step (pips)")

// Define the EMAs
longEma = ema(close, 200)
shortEma = ema(close, 50)

// Calculate daily open, high, low, close
daily_open = security(syminfo.tickerid, "D", open[1])
daily_close = security(syminfo.tickerid, "D", close[1])

// Time conditions
timeAllowed = (hour >= startHour) and (hour <= endHour)

// Define long condition based on your criteria
longCondition = (daily_close > daily_open) and (close > daily_open) and (shortEma > longEma) and timeAllowed

// Define short condition based on your criteria
shortCondition = (daily_close < daily_open) and (close < daily_open) and (shortEma < longEma) and timeAllowed

// Enter the trade
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// Trailing Stop Loss
strategy.exit("Exit Long", "Long", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)
strategy.exit("Exit Short", "Short", trail_points = trailingStop / syminfo.mintick, trail_offset = trailingStep / syminfo.mintick)

// Plotting
plot(daily_open, color=color.red, title="Daily Open")
plot(longEma, color=color.blue, title="200 EMA")
plot(shortEma, color=color.orange, title="50 EMA")


더 많은