파동 구매 및 판매 반전 5 분 시간 프레임 전략

저자:차오장날짜: 2024-02-29 14:19:44
태그:

img

전반적인 설명

이것은 5분 ETHUSDT 거래 쌍을 위해 고안된 테스트 전략이다. 가격 격차가 5달러 이상 떨어지면 긴 오더를 하고, 이미 긴 오더가 되면 1% 및 2% 가격 수준에서 스톱으로 두 개의 작은 쇼트 오더를 설정하고, 또 다른 가격 수준에서 트레일링 리미트 롱 오더를 설정한다. 쇼트 이후의 논리는 비슷한데, 0.99% 및 1.02% 가격 수준에서 두 개의 롱 스톱 오더와 트레일링 쇼트 리미트 오더가 있다.

전략 논리

이 전략의 핵심 논리는 주요 수준에서 가격 격차 또는 반전이 있을 때 잠재적 인 새로운 트렌드 방향을 식별하는 것입니다. 가격이 5 달러 이상 떨어지면 잠재적 인 바닥과 다가오는 황금 트렌드를 나타냅니다. 이미 길었을 때 1% 및 2%의 작은 단편 주문은 잠재적인 새로운 곰 트렌드를 중단하고 식별하는 데 도움이됩니다. 마찬가지로 상승 측면에서는 잠재적인 상위권과 새로운 곰 트렌드를 식별하며 두 개의 작은 긴 주문은 새로운 황금 트렌드를 종료하고 추적하는 데 사용됩니다.

따라서 트렌드 방향을 더 잘 판단하고 스톱을 관리하기 위해 하나의 큰 스톱 대신 여러 개의 작은 반전 주문이 사용됩니다. 반전 주문은 또한 가격 변동에 따라 후속 스톱/이익 기능을 제공합니다.

이점 분석

가장 큰 장점은 주요 가격 격차에서 새로운 잠재적 인 트렌드를 식별하고 자본 관리, 스톱 로스 및 거대한 변동 중에 새로운 트렌드를 판단하기 위해 작은 반전 명령을 사용하는 것입니다. 여러 가격 수준에서 스톱 및 트레일 오더를 설정하는 것도 더 효과적인 관리를 허용합니다.

위험 분석

주요 위험은 단기 가격 행동에 의존하는 것에서 발생하는 위프사와 복수의 주문에서 거래소에 발생하는 높은 주문 부하입니다. 또한 변동성 기간 동안 빈번한 스톱 트리거로 인해 과도한 수수료가 발생할 수 있습니다.

최적화 방향

방향은 격차 크기와 같은 신호를 식별하는 매개 변수를 조정하고, 정지 및 주문의 수 및 수준을 최적화하고, 동적 추적을 구현하고, 트렌드 변화를 판단하기 위해 볼륨 및 기술적 지표와 같은 더 많은 요소를 도입하는 것을 포함합니다. 동적 매개 변수 최적화를위한 기계 학습도 가능합니다.

요약

이 전략은 격차/회전으로부터 새로운 트렌드 잠재력을 식별하고 트렌드, 유연한 스톱 및 동적 이윤을 포착하기 위해 후속 회전 명령을 설정합니다. 주요 위험은 패러미터 튜닝과 더 많은 신호 요인에 의해 개선 될 수있는 높은 주문 빈도에서 발생하는 윙사 및 추가 비용입니다. 기계 학습 및 동적 최적화로 큰 잠재력이 있습니다.


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

//@version=5
strategy("pokupka perevorot 5min tf", overlay=true)

// Activation block (executed only once)
if (close - open) < -5
    strategy.entry("Long", strategy.long)

// Checking chart state block (executed continuously)
if strategy.position_size > 0
    // If long position is open
    strategy.entry("Short1", strategy.short, qty=2, limit=close * 1.01)
    strategy.entry("Short2", strategy.short, qty=2, limit=close * 1.01)
    strategy.entry("LongLimit", strategy.long, qty=1, limit=close * 0.98)

// Execution block (executed continuously)
if close * 1.01 <= strategy.position_avg_price
    // If price has increased by 1%, indicating a short position
    strategy.close("Long")

if close * 0.98 >= strategy.position_avg_price
    // If price has decreased by 2%, indicating two long positions
    strategy.close("Short1")
    strategy.close("Short2")

// Checking chart state block (executed continuously)
if strategy.position_size < 0
    // If short position is open
    strategy.entry("Long1", strategy.long, qty=2, limit=close * 0.99)
    strategy.entry("Long2", strategy.long, qty=2, limit=close * 0.99)
    strategy.entry("ShortLimit", strategy.short, qty=1, limit=close * 1.02)

// Execution block (executed continuously)
if close * 0.99 >= strategy.position_avg_price
    // If price has decreased by 1%, indicating a long position
    strategy.close("Short")

if close * 1.02 <= strategy.position_avg_price
    // If price has increased by 2%, indicating two short positions
    strategy.close("Long1")
    strategy.close("Long2")


더 많은