액티브 바텀 캡처 양적 전략


생성 날짜: 2024-01-18 16:25:33 마지막으로 수정됨: 2024-01-18 16:25:33
복사: 3 클릭수: 557
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

액티브 바텀 캡처 양적 전략

개요

이 전략은 하향 추세에서 판단되는 거래량 중 두드러진 거래량을 단기 최하단에 위치시켜 과매매 조건에서 구매를 하는 적극적인 단선 거래 전략에 속한다.

전략 원칙

거래량이 SMA 기반의 평균의 2배 표준차를 초과하면 거래량이 돋보이는 것으로 간주되며, RSI가 30보다 낮으면 과매매 상태로 간주된다. 두 가지 조건이 동시에 충족되면, 단기 하위로 판단하고 즉시 더 많이 한다. 더 많이 한 후 일정 시간이 지나면 (예를 들어 10 K 선) 포지션이 평정된다.

이 전략의 논리는 다음과 같습니다.

  1. 최근 20개의 K선 거래량 SMA를 기준으로 계산합니다.
  2. 최근 20개의 K선 거래량의 2배의 표준차를 계산하여 돋보이는 양을 판단하는 기준
  3. 최근 20개의 K선에서 RSI 판단이 과매매되었는지 계산합니다.
  4. 거래량이 기준금리보다 2배 이상 차이가 났고 RSI가 30보다 낮으면 단기 하위값으로 판단됩니다.
  5. 단기 최하위에서는 즉시 더 많은 것을 해야 합니다.
  6. 10 K선 후 자동 평점

우위 분석

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

  1. 단순하고 이해하기 쉽고 최적화 가능한 논리입니다.
  2. 단기 전환점을 판단하기 위해 거래량에서 돋보이는 특징을 이용합니다.
  3. RSI 지표는 오버셀드 지역에서만 오버를 하고, 상점을 넘지 않도록 합니다.
  4. 자동 상쇄, 꼬리 위험을 최대한 회피합니다.

전체적으로, 전략은 단기적 경향의 반전을 판단할 수 있는 양적 돌파의 특성을 충분히 활용하고, 위험을 엄격하게 통제하며, 신뢰성이 높은 적극적인 다중 전략이다.

위험 분석

이 전략에는 다음과 같은 위험들이 있습니다.

  1. 거래량과 RSI로 구성된 거래 신호가 가짜 브레이크가 발생할 수 있으며, 이는 실수로 손실을 초래할 수 있습니다.
  2. 고정된 중단 시간 설정은 시장이 크게 변할 때 중단할 수 없거나 너무 일찍 중단될 수 있습니다.
  3. 매개 변수 최적화가 부착되지 않아 신호가 빈번하거나 너무 적을 수 있다.

위와 같은 위험 요소에 대해 최적화할 수 있는 방법은 다음과 같습니다.

  1. 다른 지표들을 필터링하여 가짜 침입 신호를 방지합니다.
  2. 고정된 Root K 라인 상쇄 대신 동적 추적 상쇄를 설정합니다.
  3. 전체적으로 테스트하고 최적화하여 안정성을 보장한다.

최적화 방향

이 전략은 다음의 몇 가지 측면에서 더 개선될 수 있습니다.

  1. 기계학습 모델의 판단의 신뢰성을 높이고, 잘못된 신호를 방지합니다.
  2. 단순한 고정 루트 K 라인 설정이 아닌 적응형 손해 방지 장치를 추가합니다.
  3. 다차원 데이터 집합 최적화
  4. 오버셀 신호를 필터링하는 기계 학습의 정확도를 높여라
  5. 감정 분석과 함께 전략적 인 알파

더 많은 첨단 기술 지표, 기계 학습 및 감정 분석을 도입함으로써 전략의 안정성, 알파 및 샤프 비율을 크게 향상시킬 수 있습니다.

요약하다

이 전략은 전체적으로 매우 간단하고 직설적이며 논리적으로 명확한 단선 돌파 전략이다. 거래량 지표를 합리적으로 적용하여 단기 트렌드 반전점을 판단하면서 위험을 엄격하게 제어하면 좋은 효과를 얻을 수 있다. 그러나 여전히 일부 잘못된 신호 위험과 변수 건전성 위험이 존재한다. 이러한 문제는 더 많은 첨단 기술을 도입하여 점차적으로 개선하고 최적화하여 전략의 효과를 더 눈에 띄게 할 수 있다.

전략 소스 코드
/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 1m
basePeriod: 1m
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/
// © footlz

//@version=4
strategy("Bottom catch strategy", overlay=true)

v_len = input(20, title="Volume SMA Length")
mult = input(2)
rsi_len = input(20, title="RSI Length")
oversold = input(30, title="Oversold")
close_time = input(10, title="Close After")

v = volume
basis = sma(v, v_len)
dev = mult * stdev(v, v_len)
upper_volume = basis + dev

rsi = rsi(close, rsi_len)

long = v > upper_volume and rsi < oversold

strategy.entry("Long", true, when=long)

passed_time = 0.0
if strategy.position_size != 0
    passed_time := 1
else
    passed_time := 0

if strategy.position_size != 0 and strategy.position_size[1] != 0
    passed_time := passed_time[1] + 1

if passed_time >= close_time
    strategy.close_all()

// If want to enable plot, change overlay=false.
v_color = close >= close[1] ? color.new(#3eb370, 0) : color.new(#e9546b, 0)

// plot(v, title="volume", color=v_color, style=plot.style_columns)
// plot(upper_volume, title="Threshold", color=color.aqua)