월요일 반전 Intraday 트렌드 전략

저자:차오장, 날짜: 2023-11-06 15:34:06
태그:

img

전반적인 설명

이 전략의 주요 아이디어는 트렌드를 따라 월요일의 내일 반전에서 이익을 얻는 것입니다.

원칙

핵심 논리는

  1. 월요일인지 확인하고, 네면 다음 단계로 이동하세요.

  2. 상승 트렌드 반전 패턴이 있는지 확인합니다. 닫기 [1] < 닫기 [2] 및 닫기 [2] < 닫기 [3];

  3. 반전 패턴이 확인되면, 트렌드를 따르기 위해 세 번째 바의 닫기에 긴 거리를 가십시오.

  4. 오늘 최고가 넘어가거나 손해를 멈추면 출구

  5. 6시간 후에 근접 위치

이 전략은 월요일의 특정 반전을 활용하고 수익을 위해 상대적 최저 수준에서 장기화 할 반전 패턴을 식별합니다. 위험을 통제하기 위해 손실을 중지하십시오.

장점

가장 큰 장점은 다음과 같습니다.

  1. 특정 기간 동안 월요일 회전으로부터의 이익

  2. 반전 촛불 패턴에서 명확한 입력 신호;

  3. 손실을 멈추고 수익을 취해서 위험을 통제합니다.

  4. 트렌드를 따르는 접근은 이익을 극대화합니다.

  5. 단순하고 이해하기 쉬운 논리

위험성

몇 가지 위험 요소가 있습니다.

  1. 월요일 변동이 중요하지 않은 경우 손실

  2. 가격이 스톱 로스로 이어지는 엔트리 이후 다시 상승할 수 있습니다.

  3. 급격한 시장 변화는 큰 스톱 로스로 이어질 수 있습니다.

  4. 너무 오래 보유하면 손실이 발생할 수 있습니다.

그 해결책은 스톱 로스를 최적화하고, 대기 시간을 단축하고, 단일 로즈 크기를 제어하는 것입니다.

개선

이 전략은 다음과 같이 개선될 수 있습니다.

  1. 기계학습을 사용하여 역행을 더 정확하게 식별합니다.

  2. 트레일링 스톱 또는 부분 스톱 손실과 같은 스톱 손실 전략을 최적화합니다.

  3. 트렌드 강도를 판단하는 더 많은 요소를 포함합니다.

  4. 역동적으로 조절되는 유지시간

  5. 최적의 매개 변수를 찾기 위한 알고리즘을 이용하는 것

  6. 양방향 거래에 포지션 전환을 추가합니다.

이것은 승률과 수익성을 높일 수 있습니다.

결론

결론적으로, 전략은 월요일 반전, 명확한 입력/출출 규칙, 간단한 트렌드 다음 전략을 구현하기 위해 자본. 그것은 고정 스톱 손실 / 이익 취득보다 더 나은 결과를 달성 할 수 있습니다. 시장 불확실성을 해결하기 위해 추가 최적화가 필요합니다. 전략은 내일 거래에 대한 참조를 제공합니다.


/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("ET Forex TurnaroundMonday", overlay=true)
FirstYear = input(2018, minval=2000, maxval=2023, step=1)
FirstMonth = 1 //input(1, minval=1, maxval=12, step=1)
FirstDay = 1 //input(1, minval=1, maxval=31, step=1)

deltaDay = input(0)
StartHour = input(0)

f_barssince(_cond, _count) => _barssince=bar_index-valuewhen(_cond, bar_index, _count)

HoldTime = input(6, step=1)

MM = input(1)

startHour = input(-7, step=1)
endHour = input(34, step=1)
exitHour = input(30, step=1)


startdateCond = (year > FirstYear or (year == FirstYear and (month > FirstMonth or (month == FirstMonth and dayofmonth >= FirstDay))))

iHour = hour
if iHour > 19 
    iHour := iHour-20
else
    iHour := iHour+4    
    
    
timeCondition = true //(iHour>=startHour and iHour<=endHour and iHour<=exitHour)

since_flat_condition = strategy.position_size == 0

entryPrice=strategy.position_avg_price
EntryLongCondition = dayofweek == (dayofweek.monday+deltaDay) and close[0] < close[1] and close[1]<close[2] and startdateCond //and timeCondition and iHour > StartHour
ExitTimeCondition = false//(f_barssince(since_flat_condition, 0)>=HoldTime)
ExitLongCondition = strategy.position_size > 0  and (close[0] > high[1])// or close[0]< entryPrice-abs(close[1]-close[2])*0.2)//(ExitTimeCondition) //iHour >= exitHour or 
strategy.initial_capital =50000
// MM Block
lots = if MM < 2 
    strategy.initial_capital 
else 
    strategy.equity

lots := lots/close

entryPrice:=strategy.position_avg_price
strategy.close("ETLong",when=(ExitLongCondition==true))
strategy.entry("ETLong", strategy.long, qty=lots, comment="OpenLong",when=(EntryLongCondition==true))



더 많은