Skip to content

Average Cost Base Explained

Average Cost Base (ACB) represents the average price paid for the assets held by a strategy.

Aurono uses the average cost base as a mandatory safeguard when selling.

Understanding this concept is essential to understanding why Aurono may choose not to sell, even when price has risen.


The average cost base is calculated as:

The total amount spent on buys
divided by
the total amount of assets currently held by the strategy

It reflects the average acquisition price of the remaining position.


Each time Aurono executes a buy:

  • Capital is spent
  • Assets are added to the strategy’s holdings
  • The average cost base is recalculated

Multiple buys at different prices result in a blended average.


  • Increase total invested capital
  • Increase asset quantity
  • Recalculate the average cost base
  • Reduce asset quantity
  • Reduce invested capital proportionally
  • Recalculate the average cost base for the remaining position

The average cost base always reflects only the assets still held.


Aurono enforces the following rule:

Aurono only sells when the sell price clears the strategy’s average cost base plus a small fee-safety margin.

This rule applies in addition to the sell trigger (Rise %).

This means:

  • Even if the sell trigger percentage is met
  • Aurono will not sell at a loss
  • Selling below average cost base is explicitly prevented
  • Selling at a price that clears cost base but not the exchange fee is prevented too

This rule:

  • Is always active
  • Cannot be disabled
  • Applies to all strategies

Cost base alone is not quite enough to break even.

Every round trip pays the exchange twice: once on the buy, once on the sell. A sell priced exactly at cost base therefore still loses money, because both fees come out of the proceeds. The trade looks flat and is not.

Aurono accounts for this by putting the sell floor slightly above cost base:

Sell floor = average cost base + 0.5%

0.5% is the default, sized to cover a typical round trip at roughly 0.25% per side. The margin is a strategy parameter rather than a field in the interface, so in practice every strategy uses the default.

Because the floor sits above cost base, a blocked sell can land on either side of cost base itself, and Aurono names which one:

What you seeWhat it means
Price below cost basisThe price is genuinely under your average cost base. Selling would realize a real loss
Cost/fees not clearedThe price is above your cost base, but not far enough above to cover the round-trip fee

The second case is the narrower one, and it arrived in v0.1.33-beta. Before that release, a sell could fire at a price that technically cleared cost base while still losing money after fees.

In Lab Simulate and Quick Test, the margin comes from the fee percentage you set in the Lab (buy fee plus sell fee) instead of the fixed default, so raising the simulated fee raises the simulated sell floor with it. At the default 0.25% fee this works out to the same 0.5%.


The ACB rule is designed to:

  • Prevent realizing losses through partial sells
  • Avoid capital erosion during volatile markets
  • Keep strategies accumulation-focused by design
  • Enforce disciplined execution

Aurono prioritizes capital preservation over trade frequency.


Assume:

  • A strategy has accumulated assets at an average cost base of €100
  • Price rises to €98
  • Sell trigger percentage condition is met

Result:

No sell occurs

Because selling would occur below the average cost base.

Aurono waits.

Assume the same strategy:

  • Average cost base of €100
  • Price rises to €100.30
  • Sell trigger percentage condition is met

Result:

Still no sell

€100.30 is above cost base, but the sell floor sits at €100.50. Selling here would clear cost base and still lose money once both exchange fees are paid.

Aurono reports this as “cost/fees not cleared” rather than “below ACB”, because the position is not actually underwater.


“Price went up, why no sell?”
The price was still below average cost base.

“Price is above my cost base, why no sell?”
Cost base is not the floor. The floor is cost base plus the fee-safety margin, so a price barely above cost base still gets held back.

“The sell trigger was met.”
The ACB rule is checked after the sell trigger. Meeting the trigger is necessary, but not enough on its own.

“Can I override this behavior?”
No. The ACB rule is mandatory.


Average cost base interacts directly with:

  • Sell trigger (Rise %)
  • Order sizing
  • Allocated capital

These parameters must be understood as a single system.


Average cost base is not:

  • A stop-loss
  • A take-profit target
  • A prediction
  • A market signal

It is a guardrail.


Average cost base defines when selling is allowed, regardless of market movement.

Aurono sells only when:

  • A candle has closed
  • Sell trigger conditions are met
  • The sell price clears average cost base plus the fee-safety margin

If no sell occurs, the safeguard simply held.


Continue with:

Order Sizing
/strategy-builder/order-sizing

Order sizes determine how much Aurono trades once conditions are met.