
La stratégie de rupture de la ligne K superposée est une stratégie d’action de prix basée sur la forme de la ligne K superposée. Elle se produit lorsque la gamme de la ligne K actuelle est inférieure à celle de la ligne K précédente, indiquant que le marché est en train de s’organiser ou d’hésiter.
La stratégie utilise les indicateurs et variables suivants:
La décision d’entrée est basée sur la rupture de la fourchette de différence et du prix le plus bas de la ligne K précédente. Plus précisément, un signal d’entrée à plusieurs têtes est généré lorsque la rupture à la hausse se produit et que le prix le plus bas de la ligne K actuelle est supérieur à la liquidité à la baisse; un signal d’entrée à vide est généré lorsque la rupture à la baisse se produit et que le prix le plus élevé de la ligne K actuelle est inférieur à la liquidité à la hausse.
Le stop loss est le nombre de fois que l’ATR est multiplié par la différence de prix actuelle.
Cette stratégie présente les avantages suivants:
La stratégie présente également les risques suivants:
Cette stratégie peut être optimisée dans les domaines suivants:
La stratégie de rupture des hauts et bas de la ligne K superposés, en utilisant la préparation de la dynamique de marché et le principe de la rupture, entre en jeu lorsque le prix franchit la gamme de différence de prix de la ligne K avant. La position de liquidité combinée évite d’être prise en charge.
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ilikelyrics560
//@version=5
strategy("Inside Bar Range Breakout Strategy", overlay=true)
// Inputs
lookback = input.int(20, "Lookback Period", minval=1)
atrMult = input.float(1.5, "ATR Multiplier", step=0.1)
atrLen = input.int(14, "ATR Length", minval=1)
slMult = input.float(2, "Stop Loss Multiplier", step=0.1)
tpMult = input.float(3, "Take Profit Multiplier", step=0.1)
// Variables
atr = ta.atr(atrLen)
Range = high - low
insideBar = Range < Range[1]
breakoutUp = close > high[1]
breakoutDown = close < low[1]
liquidityUp = ta.highest(high, lookback)
liquidityDown = ta.lowest(low, lookback)
longEntry = breakoutUp and low > liquidityDown
shortEntry = breakoutDown and high < liquidityUp
longExit = close < low[1]
shortExit = close > high[1]
// Plotting
plot(liquidityUp, "Liquidity Up", color.new(color.green, 30), 1)
plot(liquidityDown, "Liquidity Down", color.new(color.red, 30), 1)
bgcolor(longEntry ? color.new(color.green, 30) : na, title="Long Entry")
bgcolor(shortEntry ? color.new(color.maroon, 30) : na, title="Short Entry")
// Trading
if (longEntry)
strategy.entry("Long", strategy.long)
strategy.exit("Long Exit", "Long", stop=low - slMult * atr, limit=high + tpMult * atr)
if (shortEntry)
strategy.entry("Short", strategy.short)
strategy.exit("Short Exit", "Short", stop=high + slMult * atr, limit=low - tpMult * atr)