베어시 하라미 역전 테스트 전략은 촛불 차트에서 베어시 하라미 역전 패턴을 식별하고 자동으로 거래합니다. 베어시 하라미 패턴을 감지 할 때 단축하고 스톱 로스 또는 영업이 발생하면 포지션을 닫습니다.
이 전략의 핵심 패턴 인식 지표는: 첫 번째 촛불의 종료는 긴 상승 촛불이며 두 번째 촛불의 종료는 첫 번째 촛불의 몸 안쪽에 있으며, 하향 촛불을 형성합니다. 이것은 잠재적 인 하향 하라미 역전 패턴을 나타냅니다. 이 패턴이 형성되면 전략이 짧습니다.
구체적인 논리는 다음과 같습니다.
이 전략의 장점은 다음과 같습니다.
또한 몇 가지 위험이 있습니다.
이 전략은 다음 영역에서 더 이상 최적화 될 수 있습니다.
베어시 하라미 반전 역 테스트 전략은 명확하고 이해하기 쉬운 논리, 좋은 역 테스트 결과 및 제어 가능한 위험을 가지고 있습니다. 라이브 거래 조정 및 최적화에 대한 여지가 있습니다. 전반적으로 거래 신호는 신뢰할 수 있으며 라이브 거래에서 추가 최적화 및 검증을 가치가 있습니다.
/*backtest start: 2023-11-15 00:00:00 end: 2023-11-19 23:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 16/01/2019 // This is a bearish reversal pattern formed by two candlesticks in which a short // real body is contained within the prior session's long real body. Usually the // second real body is the opposite color of the first real body. The Harami pattern // is the reverse of the Engulfing pattern. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title = "Bearish Harami Backtest", overlay = true) input_takeprofit = input(20, title="Take Profit pip") input_stoploss = input(10, title="Stop Loss pip") input_minsizebody = input(3, title="Min. Size Body pip") barcolor(abs(close- open) >= input_minsizebody ? close[1] > open[1] ? open > close ? open <= close[1] ? open[1] <= close ? open - close < close[1] - open[1] ? yellow :na :na : na : na : na : na) pos = 0.0 barcolor(nz(pos[1], 0) == -1 ? red: nz(pos[1], 0) == 1 ? green : blue ) posprice = 0.0 posprice := abs( close - open) >= input_minsizebody? close[1] > open[1] ? open > close ? open <= close[1] ? open[1] <= close ? open - close < close[1] - open[1] ? close :nz(posprice[1], 0) :nz(posprice[1], 0) : nz(posprice[1], 0) : nz(posprice[1], 0) : nz(posprice[1], 0): nz(posprice[1], 0) pos := iff(posprice > 0, -1, 0) if (pos == 0) strategy.close_all() if (pos == -1) strategy.entry("Short", strategy.short) posprice := iff(low <= posprice - input_takeprofit and posprice > 0, 0 , nz(posprice, 0)) posprice := iff(high >= posprice + input_stoploss and posprice > 0, 0 , nz(posprice, 0))