> ## Content Index
> Fetch the complete content index at: https://blog.algorover.ai/llms.txt
> Use this file to discover other available public pages before exploring further.

# How Dynamic DCA Works: Price Triggers, Relative Volume and Exit Rules
- URL: https://blog.algorover.ai/dynamic-dca-relative-volume-guide-en/
- Published: 2026-11-02T03:11:37.000Z
- Updated: 2026-11-11T15:19:25.000Z
- Description: Why does a DCA strategy ignore one drop and buy the next? Follow its confirmed lows, volume checks, order sizes and exits to understand the difference.
- Author: AlgoRover Team
- Tags: Strategy Analysis, #en

A trading strategy can sit through one price drop without buying, then place an order after the market falls again. Looking at a return chart will not tell you why. To understand that next order, you need to know what the strategy is waiting for.

This case follows **Dynamic DCA with Relative Volume**, listed as **Volume-based Dynamic DCA Strategy**. We will trace its entries, additional purchases and exits, then look at the market conditions and parameter changes that affect those decisions.

**DCA stands for dollar-cost averaging: spreading purchases across several orders.** Traditional DCA usually follows a schedule. This version responds to market conditions instead. It is long-only and watches one-minute perpetual-futures candles. A falling price is one part of its entry checklist; confirmed lows, relative volume, position state and available capacity matter too.

All price and capital examples below are illustrative. The case uses version 1.1.0; other strategies called “dynamic DCA” can follow different rules.

## A low price becomes a confirmed low only later

A candle records four prices over a period: the open, close, high and low. The thick body spans the open and close. The thin lines, called wicks, extend to the high and low. For this first rule, the strategy compares the **low at the bottom of each candle**.

**Swing-low confirmation identifies a local low by comparing it with candles on both sides.** This case requires three candles to the left and three to the right. The middle low must be strictly below all six neighboring lows.

Imagine the first four one-minute lows are 105, 104, 103 and 100\. At the end of minute four, the program knows that price reached 100\. It cannot yet know whether the next minute will make a lower low.

If the next three lows are 102, 101 and 104, the seven-candle comparison is complete. The low belongs to candle four, but **confirmation happens when candle seven finishes**.

### From one candle to a confirmed low

#### 1\. The bottom of the wick is the low

An up candle is shown. On a down candle, the open is at the top of the body and the close at the bottom.

High 108Close 105Open 100Low 98Upper wickBodyLower wick AlgoRover

Next, compare the lows of the candles ↓

#### 2\. Candle 4 is lowest; candle 7 confirms it

Minute 4 ends: the next three candles are unknown

Watch

*105*1

*104*2

*103*3

*100*4

**?**5

**?**6

**?**7

Three before**Candle 4**Not yet known

Minute 7 ends: all three later lows exceed 100

LowConfirmed

*105*1

*104*2

*103*3

*100*4

*102*5

*101*6

*104*7

Three before**Candle 4**Three after complete

The low is on candle 4; confirmation arrives at the end of candle 7\. Each candle represents one minute.

It is a little like recognizing the bottom of a roller-coaster dip after the carriage has started climbing away. The later movement supplies the confirmation. That wait has a cost: a mark drawn on candle four does not mean the strategy could have acted with knowledge of the next three candles at minute four.

Once a low is confirmed, think of it as activating a **single-use entry ticket**. The ticket stays available while the strategy waits for the other conditions. After a successful order submission uses it, another confirmed local low is needed to activate another opportunity. That next local low does not have to be lower than the previous confirmed low.

So how far must price fall before the strategy can use the ticket?

## The buy threshold moves with the confirmed low and historical drops

The direct answer is: **the candle must close at or below a calculated price threshold**, and the remaining checks must also pass.

Suppose the confirmed low is 100 and the average historical decline between successively lower confirmed lows is 2%. The current price multiplier is 1.1\. The strategy waits for a further decline of 2% × 1.1, giving:

**Buy threshold = 100 × (1 − 2% × 1.1) = 97.8.**

Here, 1.1 is the configured multiplier. The 2% is an illustrative statistical result, not a fixed strategy setting. Both the confirmed low and the running average can change, so the threshold changes with them.

A close of 97.7 passes the price condition. A candle that briefly reaches 97.7 but closes at 98.2 does not. The strategy uses the completed candle’s closing price for entry, rather than treating a brief touch as enough.

A wick can cross the line and the candle can still close back above it. For an order, the close, entry ticket, volume and account checks all need to pass.

### Where does the average decline come from?

Each newly confirmed low is compared with the preceding confirmed low. If it is lower, the strategy records the percentage decrease. Equal or higher lows do not add a decline sample. It then takes the **arithmetic mean of up to the latest 4,000 valid decline samples**.

For example, consider confirmed lows of 100, 99, 100 and 97\. The move from 100 to 99 contributes 1%. The move from 99 to 100 contributes no decline sample. The move from 100 to 97 contributes 3%. The mean is therefore (1% + 3%) ÷ 2 = 2%.

### How far do successive lower lows fall?

Each dot is a confirmed low. These illustrative prices show which declines enter the average.

1009910097 Down 1%Record ✓Higher lowNo sampleDown 3%Record ✓ AlgoRover 

Decline samples**1% and 3%**Arithmetic mean**(1% + 3%) ÷ 2 = 2%**

Example result**Average decline: 2%**

2% is the mean in this example. The actual value changes as historical samples update.

Compare each confirmed low with the previous one. Only lower lows add samples; average up to the latest 4,000 valid declines.

That 2% belongs to this example and changes as new samples arrive. The sample intervals follow confirmed lows, so the average covers a variable span of market history.

## Relative volume asks whether this minute is unusually active

**Relative volume, or RVOL, is current volume divided by a reference average volume.** It is like comparing a shop’s current customer traffic with its usual traffic: the raw headcount alone does not tell you how unusual the activity is.

Different strategies can choose different reference windows. This one averages the latest **20 one-minute candles, including the current candle**, and requires RVOL to be **strictly greater than 2**.

Suppose each of the previous nineteen candles has volume of 100, while the current one has volume of 300\. The twenty-candle total is 19 × 100 + 300 = 2,200\. Divide by 20 and the average is 110\. Current relative volume is then 300 ÷ 110 ≈ **2.73**, which passes the condition.

The current candle also raises average volume

Mean 110 (current included)300Previous 19: 100 eachCurrent300 ÷ 110 ≈ 2.73×AlgoRover

Including the current volume of 300 raises the average to 110, making RVOL about 2.73.

Dividing 300 by the earlier value of 100 would give 3\. But the current 300 is already part of the denominator and lifts the average to 110\. A tall person joining a group also raises the group’s average height; the comparison has changed because the new observation is included in it.

Price selects a location; relative volume selects a level of activity. Together, they select lower-price periods with active trading. Heavy selling also contributes to that activity.

With a price threshold of 97.8 and a valid unused ticket, the differences are straightforward:

| Close | RVOL | Price and volume checks                      |
| ----- | ---- | -------------------------------------------- |
| 97.7  | 2.3  | Both pass                                    |
| 97.7  | 2.0  | Volume fails: equality is not greater than 2 |
| 98.2  | 2.3  | Price fails                                  |
| 97.8  | 2.3  | Both pass: equality is allowed for price     |

Once the complete checklist and sizing checks pass, the strategy submits a market buy order. A signal’s reference close and the eventual fill price can differ.

### Put the ticket and the checks on one price sequence

In the next example the strategy starts flat. Candle four has a low of 100; candle seven confirms it and activates the ticket. Candle eight closes at 94.8, below the buy threshold of 97.8\. RVOL is 2.73 and the order and capital checks pass, so the strategy submits its first purchase.

### One sequence: confirmation, then a qualifying entry

Using the low of 100, this example starts flat and follows the first purchase.

1105210431034100510261017104891011 Low Ticket Buy 94.8 Three later candles complete Ticket used BarAlgoRover

**4** Low 100**7** Ticket confirmed**8** Example entry

**Why does this example buy at candle 8?** 

Close 94.8 ≤ threshold 97.8\. The strategy starts flat, so this is its first order. RVOL is 2.73, above 2; allocation, capital and order checks also pass.

Confirmation waits for three candles on the right. The wait for all entry conditions is variable; this example qualifies at candle 8.

Candle eight is the purchase point in this example because the conditions align there. Confirmation itself always waits for the required right-hand candles. The delay from confirmation to a qualifying order is not fixed.

If you want to examine such details yourself, AlgoRover Live can help locate the strategy and explain its rules. The article ends with one prompt for finding this exact version.

## After the first purchase, average entry price adds another condition

Submitting the first order consumes the active opportunity. An additional purchase needs another confirmed local low and the full price-and-volume signal again. Repeatedly hovering around the same threshold does not create unlimited purchases from the same ticket.

With a position open, the strategy also checks the closing price against the **actual average entry price**. This is a quantity-weighted average: total purchase cost divided by total quantity.

For a familiar analogy, buying 30 units of fuel at 8 and another 20 at 7.5 costs 390 for 50 units. The average cost is 7.8, not the simple midpoint of 8 and 7.5\. The quantities matter. The same arithmetic explains why different-sized fills affect a position’s average price differently.

The current additional-purchase condition is **−5% relative to that average**. If the average is 100, a close of 95 or below passes this particular condition. A new fill changes the average, so the next comparison uses a new reference. It is not a fixed 5% spacing from the last order.

### Later orders grow, but they do not double every time

The case allows up to five orders, including the first. With illustrative starting capital of 10,000 units, the base allocation is 6.25%, or 625 units. The five planned amounts follow multipliers of **1, 1, 2, 3 and 4**:

### Later orders use larger allocations

Illustrative capital: 10,000 units. One base allocation is 625 units.

625Order 11×625Order 21×1250Order 32×1875Order 43×2500Order 54×Equal first two orders; larger allocations from order 3AlgoRover

Five-order plan**6,875 units**

68.75% of starting capital. Every order still needs a newly confirmed low and the full entry and sizing checks.

The plan totals **6,875 units, or 68.75%** of starting capital. The remaining 31.25% stays outside that allocation. The configured leverage is 1, and each order goes through the sizing and capital checks.

The growing allocations can be drawn as a pyramid. The trading behavior here is averaging down. Conventional trend-following “pyramiding” often means adding to a winning position, which is a different idea. This sequence also differs from doubling after each purchase.

A larger purchase at a lower price pulls the average entry down more strongly. It also increases the position carried into any further decline.

### An extra order changes the whole capital plan

The configured allocation envelope is **83%**. The five-order plan uses 68.75%, leaving room below that ceiling.

If you simply append a sixth order at five base units, that order adds 3,125\. The total becomes 10,000, or 100%, which exceeds the 83% envelope. To fit more orders, the base allocation or the sizing plan must change.

Think of adding another dish to a meal with a fixed budget: the spending on the other dishes needs to change too. Adding another order likewise requires reallocating the capital plan.

## Take profit checks the close; the loss exit checks the low

Both exits use the actual average entry price. Additional fills can change that reference.

Using an average entry of 100 and the example historical average decline of 2%:

- **Take-profit threshold:** 100 × (1 + 2% × 1) = 102\. A close at or above 102 triggers a closing request.
- **Loss-exit threshold:** 100 × (1 − 20%) = 80\. A candle low at or below 80 triggers an exit request.

Two independent exit scenarios

Profit exit: close Loss exit: low Target 102 Average 100 Close 102.2Top of body 102.2 ≥ 102 → request profit exit Loss line 80 Low 79.5Bottom of wick 79.5 ≤ 80 → request loss exit AlgoRover

Each panel enlarges its own price region. After the minute ends, check the close for the profit exit and the low for the loss exit.

The distinction resembles a final sign-off versus a smoke alarm. Take profit uses the minute’s closing price; the loss exit uses the lowest price reached during that minute. Both are checked after the bar completes, followed by a closing request.

If the loss condition is reached, the strategy prioritizes exiting and skips adding to the position. The 20% sets the distance from average entry to the trigger. Orders then execute against the available market liquidity.

The take-profit threshold moves when either the average entry or average historical decline changes. The loss threshold moves with average entry. Neither should be treated as a permanent line copied from the first purchase.

## Which market conditions fit these rules?

The strategy depends on a decline followed by a recovery. Here is how its rules interact with different price structures.

- **A range with repeated declines and recoveries: a closer fit.** Lower-price entries and later recoveries match the strategy’s basic sequence. A range can still break, and heavy-volume selling can continue.
- **A pullback within a broader rise: a possible fit.** If the broader rise resumes, it aligns with the recovery assumption. The entry conditions alone do not establish that resumption.
- **A persistent rise with little pullback: potentially few entries.** A strategy starting flat can remain waiting if its price threshold is never reached. Existing positions still follow their exit rules.
- **A sustained decline: a direct challenge to the premise.** New opportunities can appear while exposure grows. The exit threshold requests a close but does not guarantee the fill or the loss size.
- **A very narrow range: possibly little activity.** Price may fail to reach the required displacement. No orders can simply mean that the requested setup has not occurred.
- **Sharp gaps or thin liquidity: important execution risk.** Completed-bar checks and market orders can leave a significant gap between a drawn threshold and an actual fill.

## Which step does each parameter change?

The comparisons below hold other inputs fixed. Price examples use a confirmed low or average entry of 100 and an example average decline of 2%. Follow the smaller, case and larger settings to see which step changes.

| Parameter and step                   | Smaller setting                             | Case setting                   | Larger setting                  |
| ------------------------------------ | ------------------------------------------- | ------------------------------ | ------------------------------- |
| Swing window: confirmation           | 2 each side: 5 candles, wait 2 on the right | 3 each side: 7 candles, wait 3 | 5 each side: 11 candles, wait 5 |
| Price multiplier: entry threshold    | 1 → 98                                      | 1.1 → 97.8                     | 1.5 → 97                        |
| Volume window: reference average     | 10 candles                                  | 20 candles                     | 40 candles                      |
| RVOL threshold: activity test        | Greater than 1.5                            | Greater than 2                 | Greater than 3                  |
| Profit multiplier: exit threshold    | 0.5 → 101                                   | 1 → 102                        | 1.5 → 103                       |
| Loss-exit distance: downside trigger | 10% → 90                                    | 20% → 80                       | 30% → 70                        |

A wider swing window compares more neighbors and adds confirmation delay. A longer volume window retains more older observations; the current candle still belongs in the reference average. The buy-price and profit multipliers change distances calculated from a statistical input, so the live threshold also depends on that input.

Changing the additional-purchase condition from −5% to −8% requires price to be farther below the average. Changing it to −3% requires a smaller displacement. Changing the number of orders requires recalculating total allocation, not merely appending another order.

## What can you take from this case?

**If you are new to quantitative trading**, the useful lesson is the order of the checks: identify a setup, wait for confirmation, compare price and activity, then handle position and capital state. You can ask the same questions of another strategy without assuming it uses these exact parameters.

**If you are considering using it**, inspect the version, fees, market, account limits and how exits are executed. Historical tests and a supported demo environment can help examine behavior before making a separate execution decision.

**If you want to adapt it**, start with a specific question: what changes when volume uses forty candles, or additional purchases require an 8% displacement? Hold other inputs constant and compare the signal and order records.

## Common questions

### Does it buy on a fixed schedule?

No. Purchases require the price, volume, ticket and state conditions. It can wait for a long time without an order.

### Does every additional 5% drop create another purchase?

No. The displacement is measured from the current average entry price. Another confirmed low, the full entry signal, remaining orders and sizing checks are also required.

### Is it the same as a Martingale strategy?

This case uses 1, 1, 2, 3 and 4 base units. It allows five orders, limits planned allocation to 83%, and uses price-based exit conditions.

### Can one-minute settings be copied directly to daily candles?

Twenty daily candles describe a very different period from twenty one-minute candles. Confirmation delay, the reference volume and required historical data all change. Treat a timeframe migration as a new research question.

### Does a confirmed low establish that the market has bottomed?

It establishes that one low is below its six neighbors in this configuration. A later price can still be lower. Confirmation supplies a checkable definition, not knowledge of the next move.

## Find the exact strategy and continue with AI

The questions worth taking away are concrete: which low was confirmed, which threshold applied, whether volume exceeded its reference, how much capacity remained, and which price field triggered an exit.

To inspect this version yourself, [install or reuse AlgoRover Live](https://www.algorover.ai/en/live/?utm%5Fsource=edgepilot%5Fblog&utm%5Fmedium=article%5Fcta&utm%5Fcampaign=dynamic-dca-relative-volume-guide-en&utm%5Fcontent=install%5Flive), then find **Volume-based Dynamic DCA Strategy**, version **1.1.0**, in the strategy marketplace. The prompt below has one job: locate this case so you can continue asking those questions.

Find the strategy discussed in this articleCopy

Please use the official repository https://github.com/AlgoRover/algorover-hub to install AlgoRover Live, or reuse it if already installed. Open the Live Dashboard and find Volume-based Dynamic DCA Strategy (volume-based-dynamic-dca-strategy), version 1.1.0, in the strategy marketplace. Open its details so I can inspect the rules. Do not start demo or live trading.

The useful way to read dynamic DCA is to separate permission to enter, conditions that trigger an order, and constraints that can still prevent it. A low price alone answers only part of that checklist.

This article explains strategy mechanics and is not investment advice. Historical tests do not establish future returns. Perpetual futures involve leverage, funding and execution risk; an exit trigger does not guarantee an execution price.