BinClucMadDevelop Strategy Analysis
Strategy ID: #71 (Batch 08, #71)
Strategy Type: Multi-Condition Trend Reversal + Bollinger Band Range Trading
Timeframe: 5 minutes (primary) + 1 hour (informational)
I. Strategy Overview
BinClucMadDevelop is a highly complex quantitative trading strategy that synthesizes buy logic from multiple classic trading strategies (BinCluc, CombinedBinHCluc, MAD variants, and more). The strategy employs multi-timeframe analysis (5-minute primary cycle + 1-hour informational cycle) combined with multi-condition stacking to capture reversal opportunities in ranging markets.
Compared to BinClucMad, BinClucMadDevelop makes the following adjustments:
- Elevated take-profit targets (starting at 20%)
- Extended custom stop-loss observation period (240 minutes)
- Optimized parameter thresholds for certain buy conditions
Core Characteristics
| Attribute | Description |
|---|---|
| Buy Conditions | 19 independent buy signals (4 V6 + 5 V8 + 10 V9), independently enableable/disableable |
| Sell Conditions | 3 basic sell signals + multi-layer dynamic take-profit logic |
| Protection Mechanisms | 5 core protection parameter groups (RSI, volume, Bollinger Band position, EMA position, SSL Channel) |
| Timeframe | 5 minutes (primary) + 1 hour (informational) |
| Stop-Loss Method | Custom conditional stop-loss (stoploss=-0.10, actual use via custom_stoploss) |
| Trailing Stop | Enabled (1% positive, 5% offset) |
| Suitable Market | Ranging markets, range-bound price action |
Minimal ROI Configuration
| Holding Time | Minimal Return |
|---|---|
| 0–38 minutes | 20.0% |
| 38–78 minutes | 7.4% |
| 78–194 minutes | 2.5% |
| 194+ minutes | 0% |
II. Strategy Configuration Analysis
2.1 Core Risk Parameters
# ROI Exit Table
minimal_roi = {"0": 0.20, "38": 0.074, "78": 0.025, "194": 0}
# Stop-Loss Settings
stoploss = -0.10
# Trailing Stop
trailing_stop = True
trailing_only_offset_is_reached = True
trailing_stop_positive = 0.01 # 1% positive trail
trailing_stop_positive_offset = 0.05 # 5% offset activates it
Design Philosophy:
- The elevated initial ROI (20%) reflects the strategy's expectation for significant reversals
- The stepped ROI structure ensures reasonable profits are locked in across different holding durations
- The 10% stop-loss paired with custom stop-loss logic provides sufficient room while controlling risk
- The 5% trailing stop offset is relatively loose, allowing ample room for trending moves
2.2 Order Type Configuration
order_types = {
"entry": "market", # Market entry
"exit": "market", # Market exit
"stoploss": "market", # Market stop-loss
"stoploss_on_exchange": False,
}
use_exit_signal = True
exit_profit_only = True # Sell only when profitable
exit_profit_offset = 0.001 # Minimum profit threshold 0.1%
ignore_roi_if_entry_signal = True # Ignore ROI, exit solely based on signals
2.3 Minimum Buy Condition Count
buy_minimum_conditions = IntParameter(1, 2, default=1, space='buy', optimize=False, load=True)
III. Entry Conditions Details
The strategy contains 19 independent buy conditions. Meeting the specified count (default: 1) triggers a buy signal. Using "OR" logic, entry is triggered as long as the minimum number of conditions is met.
3.1 Protection Mechanisms (5 Core Parameter Groups)
Each buy condition is equipped with an independent protection parameter set:
| Protection Type | Parameter Name | Default Value | Purpose |
|---|---|---|---|
| RSI Oversold | buy_rsi | 38.5 | Short-term oversold detection |
| 1-Hour RSI | buy_rsi_1h | 67.0 | Mid-to-long-term oversold detection |
| Volume Contraction | buy_volume_drop_1 | 4 | Filters out surge-price rallies |
| Bollinger Band Position | buy_bb20_close_bblowerband | 0.992 | Price near lower band |
| Volume Stability | buy_volume_pump_1 | 0.4 | 30-period average volume stability |
3.2 V6 Series Buy Conditions (4 conditions)
Originating from CombinedBinHClucAndMADV6:
| Condition | Default State | Core Logic |
|---|---|---|
| v6_buy_condition_0 | Disabled | ClucMay72018 classic version |
| v6_buy_condition_1 | Enabled | Bollinger lower band + RSI confirmation |
| v6_buy_condition_2 | Enabled | MACD golden cross + Bollinger reversal |
| v6_buy_condition_3 | Enabled | Pure MACD signal |
v6_buy_condition_1 (Enabled)
# Close < EMA50
# Close < Bollinger lower band × 0.975
# (Volume < previous volume × 20) OR (30-period avg volume > 30-period previous avg volume × 0.4)
# 1-hour RSI < 15
# Volume < previous volume × 4
3.3 V8 Series Buy Conditions (5 conditions)
Originating from CombinedBinHClucV8:
| Condition | Default State | Core Logic |
|---|---|---|
| v8_buy_condition_0 | Enabled | Bollinger Band 40 dual-layer filter + EMA trend confirmation |
| v8_buy_condition_1 | Disabled | Bollinger Band 20 + volume filter |
| v8_buy_condition_2 | Enabled | SSL Channel + RSI differential |
| v8_buy_condition_3 | Disabled | SMA200 uptrend + RSI/MFI |
| v8_buy_condition_4 | Enabled | MACD golden cross + Bollinger lower band |
v8_buy_condition_0 (Enabled)
# Close > EMA200_1h
# EMA50 > EMA200 (current cycle)
# EMA50_1h > EMA200_1h
# 2-period high - Close < Close × 0.12
# 12-period high - Close < Close × 0.28
# Bollinger lower band.shift > 0
# bbdelta > Close × 0.031
# closedelta > Close × 0.021
# tail < bbdelta × 0.264
# Close < Bollinger lower band.shift
# Close <= Close.shift
3.4 V9 Series Buy Conditions (10 conditions)
Originating from CombinedBinHClucAndMADV9:
| Condition | Default State | Core Logic |
|---|---|---|
| v9_buy_condition_0 | Disabled | Reserved |
| v9_buy_condition_1 | Enabled | Basic Bollinger Band reversal |
| v9_buy_condition_2 | Enabled | Simplified Bollinger reversal |
| v9_buy_condition_3 | Enabled | RSI oversold reversal |
| v9_buy_condition_4 | Disabled | 1-hour RSI oversold |
| v9_buy_condition_5 | Enabled | MACD golden cross + Bollinger reversal |
| v9_buy_condition_6 | Enabled | Simplified MACD reversal |
| v9_buy_condition_7 | Enabled | 1-hour RSI + MACD |
| v9_buy_condition_8 | Disabled | Dual RSI oversold |
| v9_buy_condition_9 | Disabled | Dual RSI variant |
| v9_buy_condition_10 | Disabled | SSL Channel confirmation |
v9_buy_condition_1 (Enabled)
# Close > EMA200
# Close > EMA200_1h
# Close < Bollinger lower band × 0.99
# 30-period avg volume > 30-period previous avg volume × 0.4
# Volume < previous volume × 4
# Body candle < 2-period previous Bollinger Band width
IV. Exit Logic Details
4.1 Multi-Layer Dynamic Take-Profit System
The strategy uses custom_exit for tiered take-profit:
| Profit Rate Range | Trigger Condition | Signal Name |
|---|---|---|
| >14% | RSI < 58 | roi_target_4 |
| >8% | RSI < 56 | roi_target_3 |
| >4% | RSI < 50 | roi_target_2 |
| >2% | RSI < 50 | roi_target_1 |
| >0% and <4% | SMA200 descending | roi_target_5 |
4.2 Trailing Take-Profit System
| Profit Rate Range | Trigger Condition | Signal Name |
|---|---|---|
| 10%–40% | (High price - Entry price)/100 > Current profit + 3% | trail_target_1 |
| 2%–10% | (High price - Entry price)/100 > Current profit + 1.5% | trail_target_2 |
4.3 Basic Sell Signals (3 conditions)
| Condition | Trigger Condition | Default State |
|---|---|---|
| v9_sell_condition_0 | Close > Bollinger middle band × 1.01 | Disabled |
| v8_sell_condition_0 | 3 consecutive candles break Bollinger upper band | Enabled |
| v8_sell_condition_1 | RSI > 80 (default 72–90 adjustable) | Enabled |
v8_sell_condition_0
(dataframe["close"] > dataframe["bb_upperband"]) &
(dataframe["close"].shift(1) > dataframe["bb_upperband"].shift(1)) &
(dataframe["close"].shift(2) > dataframe["bb_upperband"].shift(2))
V. Technical Indicator System
5.1 Bollinger Bands
| Window | Purpose | Field Names |
|---|---|---|
| 40-period | V8 conditions | lower, mid, bbdelta, closedelta, tail |
| 20-period | V6/V9 conditions | bb_lowerband, bb_middleband, bb_upperband |
5.2 Moving Averages
| Indicator | Period | Purpose |
|---|---|---|
| EMA | 12 | MACD fast line |
| EMA | 26 | MACD slow line |
| EMA | 50 | Mid-term trend |
| EMA | 200 | Long-term trend watershed |
| SMA | 5 | Short-term trend (sell condition 10 only) |
| SMA | 200 | Long-term trend confirmation |
5.3 RSI (Relative Strength Index)
| Period | Purpose | Threshold |
|---|---|---|
| 14 | Current cycle RSI | 10–40 (varies by condition) |
| 14 | 1-hour cycle RSI | 10–40 (varies by condition) |
5.4 Other Indicators
| Indicator | Purpose |
|---|---|
| MFI | Money flow indicator, filters false breakouts |
| volume_mean_slow | 30-period volume moving average |
| SSL Channel | 1-hour cycle trend confirmation |
VI. Risk Management Highlights
6.1 Custom Stop-Loss Logic (custom_stoploss)
def custom_stoploss(...):
if current_profit > 0:
return 0.99 # Do not actively stop-loss when profitable
else:
# After holding for over 240 minutes (~40 five-minute candles)
trade_time_50 = trade.open_date_utc + timedelta(minutes=240)
Three Handling Methods in Loss State:
-
SMA200 Downtrend Confirmation
- If current SMA200 is descending AND 1-hour SMA200 is descending
- Stop-loss 1%
-
RSI Bottom Zone
- 1-hour RSI < 30
- Continue holding, wait for reversal, return 0.99
-
Price Has Not Continued Falling
- If current price × 1.025 < opening price of candle 240 minutes ago
- Stop-loss 1%
-
Other Loss Situations
- If current price × 1.015 < opening price of candle 240 minutes ago
- Stop-loss 1%
6.2 Trailing Stop Configuration
trailing_stop = True
trailing_only_offset_is_reached = True
trailing_stop_positive = 0.01 # 1% positive trail
trailing_stop_positive_offset = 0.05 # 5% offset activates it
6.3 ROI Ladder
| Time Range | Minimal Return |
|---|---|
| 0–38 minutes | 20.0% |
| 38–78 minutes | 7.4% |
| 78–194 minutes | 2.5% |
| 194+ minutes | 0% |
VII. Strategy Pros & Cons
Strengths
- Multi-Condition Parallelism: 19 independent buy conditions covering a wide range of market patterns
- Dual Timeframe: Combines 1-hour trend judgment to reduce counter-trend trades
- Smart Stop-Loss: Dynamically adjusts stop-loss based on market state after 240 minutes
- High ROI Target: 20% starting take-profit target, suitable for capturing large reversals
- Multi-Layer Take-Profit: custom_exit provides 5-tier dynamic take-profit + 2-tier trailing take-profit
Weaknesses
- Conditions Too Loose: Default requires only 1 condition to enter
- Numerous Parameters: High optimization difficulty, easy to overfit
- High ROI Risk: 20% take-profit may miss trending moves
- Complex and Hard to Interpret: Difficult to explain why a particular signal triggered
- Unsuitable for Trending Markets: Designed for ranging markets, may suffer frequent losses when trends develop
VIII. Applicable Scenarios
| Market Environment | Recommended Configuration | Notes |
|---|---|---|
| Ranging Market | Enable all V9 conditions | Bollinger Band strategies naturally suit it |
| Short-Term Trading | 5-minute cycle | Suitable for intraday trading |
| Pair Selection | Major coins | Sufficient volume, good liquidity |
| Combined Use | Multi-strategy portfolio | Can serve as a supplementary strategy |
IX. Applicable Market Environment Details
9.1 Strategy Core Logic
BinClucMadDevelop is a classic Bollinger Band oversold reversal strategy, with the following core logic:
- Seek buy opportunities near the Bollinger Band lower band
- Confirm reversal with RSI oversold and MACD golden cross
- Filter false breakouts through volume contraction
- Control risk via custom stop-loss
- Pursue high target returns (20%+)
9.2 Performance in Different Market Environments
| Market Environment | Suitability | Notes |
|---|---|---|
| Ranging Uptrend | ★★★★☆ | Suitable for buying on pullbacks |
| Ranging Downtrend | ★★★☆☆ | Oversold buys may continue falling |
| Trending Uptrend | ★★☆☆☆ | 20% take-profit may miss the main rally |
| Trending Downtrend | ★☆☆☆☆ | Not recommended for counter-trend buying |
| High Volatility | ★★★★☆ | Bollinger Band strategies naturally suit it |
| Low Volatility | ★☆☆☆☆ | Insufficient volatility to trigger |
X. Summary: The Cost of Complexity
10.1 Signal Interpretation Difficulty
This strategy contains 19 buy conditions and 3 sell conditions. In live trading:
- Difficult to explain "why buy"
- Difficult to backtest "which condition triggered"
- Optimization may affect interconnected components
10.2 Overfitting Risk
- Numerous parameters can be optimized
- Historically good parameters may not work for the future
- Recommended to use default parameters or only fine-tune slightly
10.3 Backtesting Notes
- Slippage: Uses market orders, must consider slippage impact
- Liquidity: Small-cap coins may not accommodate large capital
- Timeframe: 1-hour informational cycle requires sufficient historical data
- Custom Stop-Loss: Needs to simulate market state after 240 minutes
- High ROI: 20% take-profit target may be difficult to achieve in certain markets
XI. Risk Reminder
BinClucMadDevelop is a high-yield quantitative trading system synthesizing multiple classic strategy concepts. Its core characteristics are:
- High Target Returns: 20% starting take-profit target, suitable for capturing large reversals
- Extended Observation Period: Custom stop-loss judgment only activates after 240 minutes (4 hours)
- Multi-Condition Stacking: 19 independent buy conditions covering a wide range of market patterns
- Dual Timeframe: 5-minute primary cycle + 1-hour informational cycle
This strategy is suitable for quantitative traders with high risk tolerance pursuing high returns. For investors seeking steady returns, it is recommended to adjust ROI parameters to more conservative levels (e.g., 3–5%).
Risk Warning:
- The 20% initial take-profit target is relatively high and may frequently fail to be reached in ranging markets
- Custom stop-loss does not trigger judgment until 240 minutes (~4 hours), which may lead to significant losses
- Please adjust parameters according to your own risk tolerance and test with small positions before live trading
This document is written based on the BinClucMadDevelop strategy code and is for learning and reference only. It does not constitute investment advice.