High Volume Low Breakout Compounded Position Sizing Strategy
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…

Overview
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.
Strategy Logic
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%).
Advantage Analysis
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
Risk Analysis
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
Optimization Opportunities
Areas for improvement:
- Dynamically adjust leverage level
- Optimize stop loss and take profit rules
- Add trend filter
- Customize parameters based on instrument
Conclusion
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.
Parameters
| Name | Default | What it controls |
|---|---|---|
| v_input_int_1 | 250 | Volume Threshold |
| v_input_float_1 | 10 | Risk Percentage |
Source Pine Script
/*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")
Published by ChaoZhang on the FMZ strategy square · last modified 2024-02-18. Collected in the Quant Trading Vault. Unvalidated research: re-test with your own data and costs before trusting it.
Build this with AgenKit
A spec is not a trading system. Paste this into your coding agent and AgenKit runs a specialist team — architecture, test-first build, risk gates, review — with paper trading on by default.
/agenkit build a production-grade trading bot with a backtest engine, risk controls and paper trading by default from strategies/High-Volume-Low-Breakout-Compounded-Position-Sizing-Strategy.md- npx agenkit install engineering-kit in your project
- Paste the command into your agent and approve each phase
- Get tests, backtest, risk controls and a paper-trading switch
Understand it first
Before you run this, read the lesson behind the idea and how to backtest it honestly. Specs like this one are the survivors of an unknown number of trials; deflate their results accordingly.
Related specs
- 5 Day Moving Average Channel Breakout Strategy Combined With Mileage ConceptPine Script · Breakout · 1d
- ATR Trailing Stops StrategyPine Script · Breakout · 1h
- ATR Trend Breakout StrategyPine Script · Breakout · 1d
- Adaptive Bollinger Breakout with Moving Average Quantitative Strategy SystemPine Script · Breakout · 1h
- Adaptive Channel Breakout StrategyPine Script · Breakout · 1d
- Adaptive Multi Period Trading Strategy Based on Wave Trend Momentum BreakoutPine Script · Breakout · 2h