该策略是一个基于K线中的熊转形态来判断市场反转信号的策略。当出现熊转形态时做空,目标获利后平仓。
该策略的核心判断逻辑在于识别K线中是否出现了熊转形态。熊转形态是指一个向上涨升的K线后,紧接着一个收盘价格低于前一日收盘价格的阴线,并且该阴线的实体部分完全包裹住前一日的阳线实体。根据技术分析理论,这种形态通常预示着当前上涨趋势即将反转。
因此,该策略的具体交易逻辑是:
通过这种方式,可以在 judged出现熊转信号时捕捉到价格反转机会。
该策略最大的优势在于能较早地判断市场趋势反转,采用的是熊转形态这一比较有效的反转信号,成功率较高。且策略思路简单清晰易于理解,容易实施。
另外,策略加入了止损止盈机制来控制风险和锁定利润,可以有效防止过度亏损的情况发生。
该策略的主要风险在于熊转形态发出的反转信号不一定总是可靠的。虽然大多情况下是准确的,但也会出现误判的情况。这会导致在实际交易中无法完全避免亏损的发生。
此外,设置固定的止损止盈点也具有一定的盲目性,不够灵活。可能会在行情剧烈波动时被套住导致损失或错过更大利润。
该策略可以通过以下几个方面进行进一步优化:
该熊转魔法蜡烛反转策略通过识别熊转形态来判断市场反转时机。策略思路清晰易操作,成功率较高。但也存在一定误判风险。可以通过进一步优化来改善策略效果,降低风险。
/*backtest
start: 2023-12-04 00:00:00
end: 2024-01-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 30/10/2018
//
// This is a bearish candlestick reversal pattern formed by two candlesticks.
// Following an uptrend, the first candlestick is a up candlestick which is
// followed by a down candlestick which has a long real body that engulfs or
// contains the real body of the prior bar. The Engulfing pattern is the reverse
// of the Harami pattern.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title = "Bearish Engulfing Backtest", overlay = true)
input_takeprofit = input(40, title="Take Profit pip")
input_stoploss = input(20, title="Stop Loss pip")
input_minsizebody = input(2, title="Min. Size Body pip")
barcolor(abs(close[1] - open[1]) >= 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[1] - open[1]) >= 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))