로그 이치모쿠 크로스 품종 전략

저자:차오장, 날짜: 2024-02-22 13:53:30
태그:

img

전반적인 설명

이 전략은 로그 스케일의 이치모쿠 클라우드를 사용하여 거래 신호를 생성하는 간단한 암호화폐 거래 전략입니다.

전략 논리

이 전략은 기본 거래 지표로 사용자 지정 로그 스케일 이치모쿠 지표를 사용합니다. 이치모쿠 지표에는 일반적으로 변환 선, 기본 선 및 지연 스판이 포함되어 있습니다. 이 전략에서 이러한 선은 로그아리듬 가격 공간에서 계산됩니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 이치모쿠 지표와 같은 것입니다. 이 지표는 일반적으로 전환 선, 기본 선 및 지표와 같은 것입니다. 이 전략에서는 이치모쿠 지표가 로그아리듬 가격 공간에서 계산됩니다. 이 지표는 로그아리듬 가격 공간에서 계산됩니다. 이 지표는 로그아리듬 가격 공간에서 계산됩니다. 이 지표는 이치모쿠 지표와 같습니다. 이 지표는 로그아리듬 가격 공간에서 계산됩니다.

특히, 변환선은 최근 9기간의 로그 최하위와 로그 최고 평균이다. 기본선은 26기간의 평균이다. 선 1은 변환과 기본선의 평균이다. 선 2는 52기간의 룩백 평균이다.

선 1이 선 2를 넘을 때 긴 신호가 생성됩니다.

이점 분석

이 전략의 주요 장점은 로그 스케일의 이치모쿠 지표를 사용하여 암호화폐의 트렌드 변화를 더 잘 파악하는 것입니다. 비율 변화는 로그 아리듬 공간에서 더 일관적입니다. 결과적으로 더 신뢰할 수있는 거래 신호가 발생합니다.

또 다른 장점은 암호화폐의 크로스-바이어티 거래를 촉진한다는 것입니다. 로그-이치모쿠를 사용하면 다른 암호화폐 품종에 대한 가격 변화의 비교성을 향상시킵니다.

위험 분석

주요 위험은 이치모쿠 신호가 실패할 수 있다는 것입니다. 특히 변동적인 암호화 시장에서 이치모쿠의 성능이 악화 될 수 있습니다.

또한 극한의 움직임에 따라 로그아리듬 변환이 실패할 수 있다. 가격이 비정상적인 점프를 할 때 로그아리듬 공간의 비교성이 감소한다.

더 나은 기회

이 전략은 다음과 같이 강화될 수 있습니다.

  1. 잘못된 신호를 줄이기 위해 Ichimoku 신호를 확인 필터를 추가

  2. 암호화 품종에 더 적합한 최적 매개 변수 업데이트

  3. 가짜 브레이크아웃을 피하기 위해 볼륨과 같은 사전 입력 필터를 추가합니다.

  4. 진입 규칙을 최적화하고 위험을 통제하기 위해 중지 및 수익 목표를 추가합니다.

결론

이 전략은 암호 화폐와 크로스 버라이어티 트레이딩에 맞춘 양적 전략을 설계하기 위해 로그아리듬 이치모쿠 지표를 활용합니다. 트렌드를 포착하는 데 유리하지만 위험이 있습니다. 매개 변수, 필터 및 위험 통제에 대한 추가 최적화는 전략 성능을 향상시킬 수 있습니다.


/*backtest
start: 2024-01-22 00:00:00
end: 2024-02-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Log Ichimoku Strategy", shorttitle="Ichi Strategy", overlay=true)

drop1st(src) =>
    x = na
    x := na(src[1]) ? na : src

conversionPeriods = input(9, minval=1, title="Conversion Line Periods"),
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement = input(26, minval=1, title="Displacement")
showClouds = input(false, "show clouds")

loglows = log(drop1st(low))
loghighs = log(drop1st(high))

donchian(len) =>
    avg(lowest(loglows, len), highest(loghighs, len))

conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

plot(showClouds ? exp(conversionLine) : na, color=#0496ff, title="Conversion Line")
plot(showClouds ? exp(baseLine) : na, color=#991515, title="Base Line")

p1 = plot(showClouds ? exp(leadLine1) : na, offset = displacement, color=green, title="Lead 1")
p2 = plot(showClouds ? exp(leadLine2) : na, offset = displacement, color=red, title="Lead 2")
fill(p1, p2, color = showClouds ? (leadLine1 > leadLine2 ? green : red) : na)

if (crossover(leadLine1, leadLine2))
    strategy.entry("Ichi-LE", strategy.long, oca_name="Ichi", comment="Ichi")

if (crossunder(leadLine1, leadLine2))
    strategy.entry("Ichi-SE", strategy.short, oca_name="Ichi",  comment="Ichi")


더 많은