Tags:

The core idea of this strategy is to track breakouts during high trading volume by using a compounded position sizing approach based on a defined risk percentage and 250x simulated leverage. It aims to capture potential reversal opportunities after heavy selling pressure.

Long entry signals are triggered when:

- Volume exceeds a user-defined threshold (volThreshold)
- The current bar’s low is lower than the previous bar’s low (lowLowerThanPrevBar)
- The current bar’s close is negative but higher than the previous bar’s close (negativeCloseWithHighVolume)
- There is no existing open long position (strategy.position_size == 0)

Position sizing is calculated as:

- Risk amount based on equity * risk percentage
- Risk amount * leverage (250x) to determine number of contracts/lots

Exit rules:

Close long position when profit percentage posProfitPct hits stop loss (-0.14%) or take profit (4.55%).

Advantages of this strategy:

- Captures trend reversal opportunities from high trading volume
- Compounded position sizing allows for faster profit growth
- Reasonable stop loss and take profit helps control risk

Risks to consider:

- 250x leverage amplifies losses
- Does not account for slippage, commissions, margin requirements
- Requires robust backtesting and parameter optimization

Risk can be reduced by:

- Lowering leverage amount
- Increasing stop loss percentage
- Accounting for real-world trading costs

Areas for improvement:

- Dynamically adjust leverage level
- Optimize stop loss and take profit rules
- Add trend filter
- Customize parameters based on instrument

In summary, this is a fairly simple and straightforward strategy for capturing reversals and outsized gains. But risks exist and prudent real-world testing is essential. With optimization, it can be made more robust and practical.

/*backtest start: 2023-02-11 00:00:00 end: 2024-02-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("High Volume Low Breakout (Compounded Position Size)", overlay=true, initial_capital=1000) // Define input for volume threshold volThreshold = input.int(250, "Volume Threshold") // Define input for risk per trade as a percentage of total equity riskPercentage = input.float(10, "Risk Percentage") // Calculate volume vol = volume // Check for high volume and low lower than the previous bar highVolume = vol > volThreshold lowLowerThanPrevBar = low < low[1] // Calculate position profit percentage posProfitPct = 100 * (close - strategy.position_avg_price) / strategy.position_avg_price // Calculate the position size based on risk percentage and total account equity equity = strategy.equity riskAmount = (equity * riskPercentage / 100) / (close - strategy.position_avg_price) // Calculate leverage (250x in this case) leverage = 250 // Calculate the position size in contracts/lots to trade positionSize = riskAmount * leverage // Check if the current bar's close is negative when it has high volume negativeCloseWithHighVolume = highVolume and close < close[1] // Enter long position as soon as volume exceeds the threshold, low is lower than the previous bar, and the current bar's close is negative if highVolume and lowLowerThanPrevBar and negativeCloseWithHighVolume and strategy.position_size == 0 strategy.entry("Long", strategy.long, qty=positionSize, comment="Long Entry") // Exit long position intrabar if profit goes below -0.14% or above 1% if strategy.position_size > 0 if posProfitPct < -0.14 or posProfitPct > 4.55 strategy.close("Long")template: strategy.tpl:40:21: executing "strategy.tpl" at <.api.GetStrategyListByName>: wrong number of args for GetStrategyListByName: want 7 got 6