갭 반전 전략


생성 날짜: 2023-09-19 16:19:51 마지막으로 수정됨: 2023-09-19 16:19:51
복사: 0 클릭수: 841
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

개요

이 전략은 점프 아포 형태에 대해 역전 거래한다. 지표의 점프 아포가 하락한 후 역전 상승할 때, 전략은 다음 날 상장 또는 상장 시 구매를 하고, 트래킹 스톱 손실을 설정하여 이익을 잠금한다.

전략 원칙

  1. 상표된 물품이 점프 공백이 발생했는지 판단하기 위해, 즉 당일 상장 가격이 전날 상장 가격보다 낮다.

  2. 만약 하락한 빈틈이 발생하면, 당일 종결 가격이 개시 가격보다 높지 않은지를 관찰하여 상향 상승을 나타냅니다.

  3. 점프 하프터 반전 조건이 충족되면 다음 날 상장 또는 상장 시 구매 작업을 수행한다.

  4. 진입 후 특정 비율의 추적 스톱로스를 설정합니다. 예를 들어 5% ᅲ.ᅲ 스톱로스 라인은 가격이 상승함에 따라 상향 조정됩니다.

  5. 가격이 스톱로스 라인까지 내려갈 때 스톱로스 명령이 발동되고, 스톱로스는 퇴장한다.

우위 분석

이 전략의 주요 장점은:

  1. 헐리우드 틈새 형태에서 오는 반전 거래 기회를 잡기

  2. 반전형의 확률이 높으며, 다공간심리교환의 행상법칙에 부합한다.

  3. 스톱로스를 추적하여 수익을 고정하고, 수동적인 감시가 필요하지 않습니다.

  4. 개개인의 특성에 맞게 유연하게 입시시간과 손해치 수준을 설정할 수 있다.

  5. 프로그램 실행, 재검토 및 최적화 용이함

위험 분석

이 전략의 주요 위험은:

  1. 공중공간 회전 실패 확률이 존재하고, 형태를 검증해야 한다.

  2. 스포드 레이블이 너무 커지면 손실이 커집니다.

  3. 이 지표의 주식 선택이 부적절한 경우, 하드랜딩으로 인해 큰 반전이 발생할 수 있습니다.

  4. 데이터 재검토가 부족하여 과합의 위험이 발생할 수 있습니다.

  5. 실드스크 조작과 회수에는 차이가 있다.

대응방법:

  1. 단편 손실 비율을 제어하면서도 스톱 손실 수준을 최적화하십시오.

  2. 전체적인 시장에 대한 판단을 하고, 상위 주식과 개별 주식을 선택하지 마십시오.

  3. 형태를 검증하고 수량 변화를 검사한다.

  4. 리터스 샘플을 늘리고, 실체 검증을 모의한다.

최적화 방향

이 전략은 다음과 같은 점들을 고려하여 최적화할 수 있습니다.

  1. 트렌드 지표 필터링과 함께 역전입을 피하십시오.

  2. 동적으로 스톱로스 레벨 비율을 조정하여 수익을 보호하십시오.

  3. 시간 필터를 추가하여 지정된 날짜에만 거래하는 것을 고려하십시오.

  4. 입학금의 비율을 조정한다.

  5. 포지션 보유 기간을 테스트하여 최적의 탈퇴 지점을 찾습니다.

요약하다

공백점 역전 전략은 높은 확률의 역전 형태를 활용하여 거래한다. 스톱로스 전략으로 위험을 효과적으로 제어한다. 그러나 여전히 가짜 반발과 시장 구조의 변화에 주의해야 한다. 실적 시에는 형태와 경향 방향을 신중하게 평가하는 것이 권장되며, 계속적으로 파라미터를 최적화한다.

전략 소스 코드
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-12 04: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/
// © RolandoSantos

//@version=2

strategy(title="Gap Down reversal strat", overlay=true, pyramiding=1, default_qty_type =  strategy.cash, default_qty_value = 10000, initial_capital = 10000 )

/// Start date

startDate = input(title="Start Date", defval=1, minval=1, maxval=31)
startMonth = input(title="Start Month", defval=1, minval=1, maxval=12)
startYear = input(title="Start Year", defval=2009, minval=1800, maxval=2100)


// See if this bar's time happened on/after start date
afterStartDate = (time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0))

// STEP 1:
// Configure trail stop level with input options (optional)
longTrailPerc = input(title="Trail Long Loss (%)",
     type=float, minval=0.0, step=0.1, defval=5.0) * 0.01


// Calculate trading conditions
gap_d_r = open < close[1] and close > open


// Plot Shapes
plotshape(gap_d_r, style=shape.triangleup, location=location.belowbar)
///plotshape(gap_u_r, style=shape.triangledown, location=location.abovebar)

///// Use Low, or close/////

//hlco = input(title="Stop Modifier", defval="close", options=["open", "high", "low"])


// STEP 2:
// Determine trail stop loss prices
longStopPrice = 0.0   ///, shortStopPrice = 0.0

longStopPrice := if (strategy.position_size > 0)
    stopValue = close * (1 - longTrailPerc)
    max(stopValue, longStopPrice[1])
else
    0


// Plot stop loss values for confirmation
plot(series=(strategy.position_size > 0) ? longStopPrice : na,
     color=red, style=circles,
     linewidth=1, title="Long Trail Stop")


// Submit entry orders
if (afterStartDate and gap_d_r)
    strategy.entry(id="EL", long=true)


// Submit exit orders for trail stop loss price
if (strategy.position_size > 0)
    strategy.exit(id="Stop out", stop=longStopPrice)