Skip to main content

BinHV45HO Strategy Analysis

Strategy ID: #78 (Batch 08, #78)
Strategy Type: Bollinger Band Mean Reversion + Ultra-Short-Term Intraday Trading
Timeframe: 1 minute


I. Strategy Overview

BinHV45HO is an ultra-short-term intraday trading strategy based on Bollinger Bands, serving as an optimized variant of BinHV45 (HO = HyperOpt). The strategy captures opportunities where price briefly falls below the Bollinger Band lower band and quickly rebounds, performing scalp trades within an extremely short timeframe.

Compared to BinHV45, BinHV45HO makes the following optimizations:

  • More Aggressive Stop-Loss: Expanded from 5% to 10%
  • Fixed Parameters: Parameters optimized through HyperOpt, further tuning disabled
  • Better Suited for Trending Markets: Larger stop-loss allows the strategy to survive in more volatile markets

Core Characteristics

AttributeDescription
Buy Conditions6 conditions must all be satisfied simultaneously, based on Bollinger Bands
Sell ConditionsNo sell signals, relies on ROI and stop-loss
Protection MechanismsFixed stop-loss -10%, no other protection
Timeframe1 minute
Stop-Loss MethodFixed stop-loss -10%
Take-Profit Method1.25% auto take-profit
Max Positions5 trading pairs
Suitable MarketHigh volatility, intense intraday price action

II. Strategy Configuration Analysis

2.1 Take-Profit Configuration

minimal_roi = {
"0": 0.0125
}

Design Philosophy: Identical to BinHV45 — 1.25% initial ROI is extremely low but also very easy to achieve. A typical "small profits multiply" design.

2.2 Stop-Loss Configuration

stoploss = -0.10

Design Philosophy:

  • 10% fixed stop-loss is double that of BinHV45's 5%
  • This gives price greater room to fluctuate, reducing the chance of being "stopped out by consolidation"
  • Profit/loss ratio is approximately 1:8 (1.25% vs 10%)
  • This means approximately 88%+ win rate is needed to break even
  • The more relaxed stop-loss makes the strategy more suitable for volatile markets

2.3 Max Position Configuration

max_open_trades = 5

Design Philosophy:

  • Hold up to 5 positions simultaneously
  • Diversifies risk, avoiding a single trade's large loss impacting overall capital
  • With the 1-minute ultra-short timeframe, 5 positions can rotate quickly

2.4 Timeframe Configuration

timeframe = '1m'

2.5 Adjustable Parameters (Optimized and Locked)

df_close_bbdelta = DecimalParameter(0.005, 0.06, default=0.008, space='buy', optimize=False, load=True)
df_close_closedelta = DecimalParameter(0.01, 0.03, default=0.0175, space='buy', optimize=False, load=True)
df_tail_bbdelta = DecimalParameter(0.15, 0.45, default=0.25, space='buy', optimize=False, load=True)

# Optimized buy parameters
buy_params = {
"df_close_bbdelta": 0.057,
"df_close_closedelta": 0.016,
"df_tail_bbdelta": 0.293,
}

Note: These parameters have been optimized and locked through HyperOpt (optimize=False). Regular users should not adjust them.


III. Entry Conditions Details

BinHV45HO's buy conditions use a 6 conditions must all be satisfied simultaneously structure, identical to BinHV45.

3.1 Condition Details

Condition 1: Bollinger Band Lower Band Valid

dataframe['lower'].shift().gt(0)

Interpretation: Previous candle's lower band must be >0, ensuring Bollinger Band calculation is valid.

Condition 2: Bollinger Band Spread Width

dataframe['bbdelta'].gt(dataframe['close'] * self.df_close_bbdelta.value)

Interpretation: bbdelta must exceed 5.7% of closing price (optimized parameter). Ensures Bollinger Bands have sufficient spread.

Condition 3: Closing Price Change Magnitude

dataframe['closedelta'].gt(dataframe['close'] * self.df_close_closedelta.value)

Interpretation: closedelta must exceed 1.6% of closing price. Ensures obvious intraday movement.

Condition 4: Lower Wick Length Limit

dataframe['tail'].lt(dataframe['bbdelta'] * self.df_tail_bbdelta.value)

Interpretation: tail must be less than 29.3% of bbdelta. Ensures the lower wick is not too long.

Condition 5: Price Below Bollinger Band Lower Band

dataframe['close'].lt(dataframe['lower'].shift())

Interpretation: Core of the strategy — price seeking rebound below the lower band.

Condition 6: Closing Price Not Rising

dataframe['close'].le(dataframe['close'].shift())

Interpretation: Ensures entry when price is still falling or consolidating, not chasing highs.


IV. Exit Logic Details

BinHV45HO has no custom sell signals, identical to BinHV45.

def populate_sell_trend(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
"""
no sell signal
"""
dataframe.loc[:, 'sell'] = 0
return dataframe

4.1 Exit Mechanism

  1. ROI Take-Profit: Auto-close when profit reaches 1.25%
  2. Stop-Loss: Auto-close when loss reaches 10%

V. Technical Indicator System

5.1 Bollinger Band Indicators

IndicatorCalculationPurpose
upper40-period mean + 2× stdResistance
mid40-period meanBaseline
lower40-period mean - 2× stdSupport
bbdelta|mid - lower|Bollinger Band spread

5.2 Price Action Indicators

IndicatorCalculationPurpose
pricedelta|open - close|Intraday movement
closedelta|close - close.shift()|Consecutive candle changes
tail|close - low|Lower wick length

VI. Risk Management Highlights

6.1 Fixed Stop-Loss

stoploss = -0.10

10% fixed stop-loss provides a hard risk boundary, more relaxed than BinHV45's 5%.

Profit/Loss Analysis:

  • Take-profit target: 1.25%
  • Stop-loss target: 10%
  • Profit/loss ratio: 1:8
  • Required win rate: approximately 88% to break even

6.2 Max Position Limit

max_open_trades = 5
  • Hold up to 5 positions simultaneously
  • Diversifies single-trade risk
  • Pairs with high-frequency trading

6.3 No Protection Mechanism Risk

Same as BinHV45 — no RSI/ADX filtering, no time-based or trailing stop-loss.


VII. Strategy Pros & Cons

Strengths

  1. Simple and Efficient: Based on Bollinger Bands, logic is clear
  2. Frequent Trading: 1-minute timeframe, plenty of opportunities
  3. Clear Objectives: 1.25% target, exits when reached, not greedy
  4. No Prediction Needed: Doesn't predict direction, only captures specific patterns
  5. Parameters Pre-Optimized: Optimized through HyperOpt, ready to use
  6. More Relaxed Stop-Loss: 10% stop-loss tolerates volatility better than 5%

Weaknesses

  1. Win Rate Requirement Extremely High: Needs 88% win rate to profit
  2. No Trend Judgment: One-sided decline may continuously stop-loss
  3. No Sell Signals: Completely relies on fixed exit mechanism
  4. Fee-Sensitive: High-frequency trading needs careful fee management
  5. Suitable for Specific Markets: Better suited for high-volatility environments
  6. 10% Stop-Loss Risk: Single loss may be larger

VIII. Applicable Market Environment Details

8.1 BinHV45HO vs BinHV45 Comparison

ComparisonBinHV45HOBinHV45
Stop-Loss-10%-5%
Take-Profit1.25%1.25%
Profit/Loss Ratio1:81:4
Required Win Rate88%80%
Parameter StatusPre-optimized, lockedCan be optimized

IX. Summary

BinHV45HO is an optimized variant of BinHV45. Key differences from BinHV45:

  • Stop-loss expanded from 5% to 10%
  • Parameters pre-optimized through HyperOpt and locked
  • Profit/loss ratio changed from 1:4 to 1:8
  • Requires higher win rate (88% vs 80%)

Risk Warning:

  • Requires over 88% win rate to profit
  • High-frequency trading fees are significant
  • May underperform in one-sided trending markets
  • 10% single loss may cause significant capital drawdown
  • No dynamic risk management mechanism

This document is written based on the BinHV45HO strategy code and is for learning and reference only. It does not constitute investment advice.