리소스 로딩... 로딩...

수량적 거래 전략

저자:차오장, 날짜: 2024-06-03 16:41:59
태그:

img

전반적인 설명

이 문서에서는 비율의 임계치를 기반으로 한 양적 거래 전략을 소개합니다. 이 전략은 비율의 임계치를 설정하고 적절한 기간을 선택함으로써 구매 및 판매의 시기를 결정합니다. 가격이 이전 폐쇄 가격에 비해 지정된 비율 임계치를 상하 또는 하락하면 구매 또는 판매 신호를 유발합니다. 이 전략은 사용자의 위험 선호도 및 시장 조건에 따라 유연하게 조정 될 수 있으며 다양한 금융 도구 거래에 적합합니다.

전략 원칙

이 전략의 핵심은 가격의 비율 변화를 기반으로 거래 신호를 생성하는 것입니다. 첫째, 사용자는 이전 폐쇄 가격에 대한 가격 변화의 크기를 나타내는 비율 임계치를 설정해야합니다. 동시에 사용자는 또한 1 분, 1 시간, 1 일 등과 같은 기간을 선택하여 그 시간 프레임 내에서 높은 가격, 낮은 가격 및 폐쇄 가격을 계산해야합니다. 전략은 실시간으로 시장 가격을 모니터링합니다. 현재 기간의 가장 높은 가격이 이전 폐쇄 가격과 임계치를 초과하면 구매 신호를 유발합니다. 현재 기간의 가장 낮은 가격이 이전 폐쇄 가격 빼기 임계값 아래로 떨어지면 판매 신호를 유발합니다. 장기 포지션을 보유하는 동안 판매 신호가 유발되면 장기 포지션은 종료됩니다; 짧은 포지션을 보유하는 동안 구매 신호가 종료되면 잠재적인 가격 변동이 발생합니다. 이러한 방법으로 전략은 거래가 큰 수익을 얻을 수 있습니다.

전략적 장점

  1. 간단하고 사용하기 쉬운 전략: 전략은 단지 두 개의 매개 변수, 비율의 임계와 시간 기간을 설정하여 자동으로 거래 신호를 생성하여 작동을 쉽게합니다.
  2. 높은 유연성: 사용자들은 각기 다른 거래 환경에 적응하기 위해 자신의 위험 선호도와 시장 특성에 따라 비율의 문턱과 기간을 조정할 수 있습니다.
  3. 폭넓은 적용 가능성: 이 전략은 거래에 필요한 가격 데이터가 있는 한 주식, 선물 및 외환과 같은 다양한 금융 도구에 적용될 수 있습니다.
  4. 직관적이고 명확합니다. 전략은 차트에 직접 구매 및 판매 신호를 표시하고 주식 곡선을 그래프화하여 거래자가 전략의 성과를 시각적으로 평가 할 수 있습니다.

전략 위험

  1. 시장 변동성 위험: 시장 가격이 급격히 변동할 때, 빈번한 거래는 높은 거래 비용과 미끄러짐으로 이어질 수 있으며 전략의 수익성에 영향을 줄 수 있습니다.
  2. 위험을 설정하는 매개 변수: 비율의 임계와 기간을 잘못 설정하면 전략 성과가 좋지 않아 시장 특성과 개인적인 경험을 기반으로 조정이 필요합니다.
  3. 과도한 적합성 위험: 전략 매개 변수가 과도하게 최적화되면 미래의 시장 환경에서 낮은 성과로 이어질 수 있으며 철저한 역 테스트와 미래 분석이 필요합니다.

전략 최적화 방향

  1. 스톱 로스 및 트레이프 메커니즘을 포함합니다. 위험을 제어하기 위해, 스톱 로스 및 트레이프 메커니즘은 전략에 추가 될 수 있으며, 자본 안전을 보호하기 위해 가격이 미리 설정된 스톱 로스 또는 트레이프 메커니즘에 도달하면 자동으로 포지션을 닫을 수 있습니다.
  2. 동적으로 매개 변수를 조정: 시장 변동성의 변화에 따라 시장 변동성의 변화에 따라 비율의 임계와 기간을 동적으로 조정할 수 있습니다. 예를 들어, 거래 빈도를 줄이기 위해 시장 변동성이 심해지면 임계치를 적절히 높일 수 있습니다.
  3. 다른 기술 지표와 결합: 이 전략을 다른 기술 지표 (가동 평균, 상대 강도 지수 등) 와 결합하여 더 탄탄한 거래 시스템을 형성하고 전략의 신뢰성을 향상시킵니다.

요약

이 문서에서는 가격 변화와 시간 기간에 대한 비율의 임계치를 설정하여 자동으로 구매 및 판매 신호를 생성하는 비율의 임계치를 기반으로 한 양적 거래 전략을 소개합니다. 전략은 작동하기 쉽고 매우 유연하며 광범위하게 적용되지만 시장 변동성, 매개 변수 설정 및 과도한 적합성과 같은 위험에 직면합니다. 스톱 로스 및 영리 메커니즘을 통합하여 매개 변수를 동적으로 조정하고 다른 기술 지표와 결합하여 전략의 성능을 더 이상 최적화하여 실제 거래에서 효과를 높일 수 있습니다.


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

//@version=5
strategy("GBS Percentage", overlay=true)

// Define input options for percentage settings and timeframe
percentage = input.float(1.04, title="Percentage Threshold", minval=0.01, step=0.01) / 100
timeframe = input.timeframe("D", title="Timeframe", options=["1", "3", "5", "15", "30", "60", "240", "D", "W", "M"])

// Calculate high, low, and close of the selected timeframe
high_timeframe = request.security(syminfo.tickerid, timeframe, high)
low_timeframe = request.security(syminfo.tickerid, timeframe, low)
close_timeframe = request.security(syminfo.tickerid, timeframe, close)

// Calculate the percentage threshold based on the previous close
threshold = close_timeframe[1] * percentage

// Define conditions for Buy and Sell
buyCondition = high_timeframe > (close_timeframe[1] + threshold)
sellCondition = low_timeframe < (close_timeframe[1] - threshold)

// Entry and exit rules
if (buyCondition)
    strategy.entry("Buy", strategy.long)

if (sellCondition)
    strategy.entry("Sell", strategy.short)

// Close the positions based on the conditions
if (sellCondition)
    strategy.close("Buy")

if (buyCondition)
    strategy.close("Sell")

// Plot Buy and Sell signals on the chart
plotshape(series=buyCondition, title="Buy Entry", color=color.green, style=shape.triangleup, location=location.belowbar)
plotshape(series=sellCondition, title="Sell Entry", color=color.red, style=shape.triangledown, location=location.abovebar)

// Plot the equity curve of the strategy
plot(strategy.equity, title="Equity", color=color.blue, linewidth=2)


더 많은