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

내일 상승성 브레이크업 전략

저자:차오장, 날짜: 2024-03-29 16:13:30
태그:

img

전반적인 설명

이 전략은 기술 지표에 기반한 내일 상승 트레이딩 전략이다. 주로 긴 엔트리의 시기를 결정하기 위해 세 가지 기술 지표를 사용합니다. 1. 저변 저변 2. 상승 촛불 패턴 3. 극단적 인 과잉 판매. 동시에, 그것은 스톱 로스 및 영업 가격을 계산하기 위해 ATR (평균 진정한 범위) 지표를 사용합니다. 이 전략은 모든 시간 프레임 및 모든 기본 자산에 적용됩니다.

전략 원칙

이 전략은 주로 다음과 같은 원칙에 기초합니다.

  1. 상승 추세에서 주식 가격은 종종 회귀하여 지역 최저치를 형성하며, 이는 종종 좋은 구매 기회입니다. 전략은 이러한 구매 기회를 포착하기 위해 스윙 최저치를 사용합니다.
  2. 일부 특별한 촛불 패턴은 종종 트렌드 반전 또는 계속되는 신호입니다. 전략은 반전 구매 지점을 결정하기 위해 상승 세 줄 스트라이크 패턴을 사용합니다.
  3. 추락의 연속적인 날 이후, 하락 동력은 점차 약화되고, 추가 하락의 여지가 제한되어 있습니다. 주식 가격은 언제든지 회복 될 수 있습니다. 전략은 이러한 역전 구매 기회를 포착하기 위해 극심한 과판 지표를 사용합니다.
  4. 주식 가격 변동은 주기성과 유사성을 가지고 있으며 ATR 지표로 측정되고 적절한 스톱 로스 및 영업 거리를 계산하는 데 사용됩니다.

전략적 장점

  1. 세 가지 고전적인 기술 지표를 결합하여 엄격한 양적 거래 시스템을 형성하여 주관성의 단점을 피합니다.
  2. 스톱 로스 및 트레이프 레벨은 ATR 변동성 지표에 기초하여 객관적으로 정량화 될 수 있으며 주관성의 단점을 피합니다. 동시에 스톱 로스 및 타겟 가격은 시장 변동성과 일치하여 위험을 효과적으로 제어하고 수익을 고정합니다.
  3. 광범위한 응용 프로그램, 시간 프레임 또는 기본 자산에 대한 제한이 없으며, 이익을 얻기 위해 장점을 완전히 활용 할 수 있습니다.

전략 위험

  1. 일방적인 상승 추세를 판단하는 높은 정확성, 그러나 불안정한 시장에 자주 진입하면 손실이 증가 할 수 있습니다.
  2. 이윤 취득 수준이 너무 높아서 수익 취득이 느리고 자본 활용도가 낮습니다.
  3. 극심한 과잉 판매 지표는 역행에 대한 판단 능력이 제한되어 있으며 트렌드 시장에서 실패 할 수 있습니다.

전략 최적화 방향

  1. 전반적인 트렌드 방향을 결정하기 위해 MA와 MACD와 같은 트렌드 지표를 추가하는 것을 고려하십시오. 이 전략을 상승 추세에서 사용하고 하락 추세에서 중지하십시오.
  2. 최적의 매개 변수를 찾기 위해 알고리즘을 최적화하는 것을 고려하십시오. 특히 ATR 곱셈의 선택. 이윤 취득을 가속화하기 위해 이윤 취득 곱셈이 작을 수 있습니다.
  3. 극심한 과잉 판매 지표는 KDJ 또는 RSI와 같은 더 성숙한 과잉 판매 지표로 변경하여 최적화 할 수 있습니다.

요약

이 내일 올리시 브레이크아웃 전략은 스윙 로우, 올리시 패턴, 과잉 판매 반전을 기반으로 한 양적 거래 전략이다. 그것은 다른 각도에서 긴 엔트리 포인트를 캡처하기 위해 세 가지 기술적 인 지표를 사용합니다. 동시에 동적 스톱 로스 및 영업 수준을 계산하기 위해 ATR 변동성 지표를 사용합니다. 상승 추세에서 이익을 완전히 캡처 할 수 있지만 변동성 시장에서 빈번한 거래의 위험에 직면합니다. 전략의 성능을 더욱 향상시키기 위해 트렌드 판단을 도입하고 매개 변수 및 지표를 최적화하는 것과 같은 최적화 여지가 있습니다.


// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © LuxTradeVenture

//@version=5
strategy("Intraday Bullish Script", overlay=true, margin_long=100, margin_short=100)



// Settings for Strategy 1
entryCondition1 = input.bool(true, title="Use Entry Condition - Strategy 1")

// Input for ATR multiplier for stop loss 
atrMultiplierforstoploss = input.float(2, title="ATR Multiplier for Stop Loss")

// Input for ATR multiplier for target price
atrMultiplierforlongs = input.float(4, title="ATR Multiplier for Target Price")

// Calculate ATR
atrLength = input.int(14, title="ATR Length")
atrValue = ta.atr(atrLength)

// Swing low condition - Strategy 1
swingLow1 = low == ta.lowest(low, 12) or low[1] == ta.lowest(low, 12)


/// 
maj_qual = 6  //input(6)
maj_len = 30  //input(30)
min_qual = 5  //input(5)
min_len = 5  //input(5)

lele(qual, len) =>
    bindex = 0.0
    bindex := nz(bindex[1], 0)
    sindex = 0.0
    sindex := nz(sindex[1], 0)
    ret = 0
    if close > close[4]
        bindex := bindex + 1
        bindex
    if close < close[4]
        sindex := sindex + 1
        sindex
    if bindex > qual and close < open and high >= ta.highest(high, len)
        bindex := 0
        ret := -1
        ret
    if sindex > qual and close > open and low <= ta.lowest(low, len)
        sindex := 0
        ret := 1
        
major = lele(maj_qual, maj_len)
minor = lele(min_qual, min_len)

ExaustionLow  = major ==  1 ? 1 : 0

Bullish3LineStrike = close[3] < open[3] and close[2] < open[2] and close[1] < open[1] and close > open[1]

// Entry and Exit Logic for Strategy 2
// Create variables to track trade directions and entry prices for each strategy
var int tradeDirection1 = na

var float entryLongPrice1 = na


// Calculate entry prices for long positions - Strategy 1
if (swingLow1 or Bullish3LineStrike)
    entryLongPrice1 := close
    tradeDirection1 := 1



// Calculate target prices for long positions based on ATR - Strategy 1
targetLongPrice1 = entryLongPrice1 + (atrMultiplierforlongs * atrValue)



// Calculate stop loss prices for long positions based on entry - Strategy 1
stopLossLongPrice1 = entryLongPrice1 - (atrMultiplierforstoploss * atrValue)


// Entry conditions for Strategy 1
if (tradeDirection1 == 1 and (swingLow1 or Bullish3LineStrike))
    strategy.entry("Long - Strategy 1", strategy.long)


// Exit conditions for long positions: When price reaches or exceeds the target - Strategy 1
if (close >= targetLongPrice1)
    strategy.close("Long - Strategy 1", comment="Take Profit Hit")

// Exit conditions for long positions: When price hits stop loss - Strategy 1
if (close <= stopLossLongPrice1)
    strategy.close("Long - Strategy 1", comment="Stop Loss Hit")

더 많은