Skip to content

DCA and execution

DCA bot deposits: separate capital from profit

A top-up raises capital before it changes performance. Follow an allocation timeline that separates owner contributions, purchases and marked results.

Ivory blocks enter a tray while a lime cube sits in a separate inset pocket on a dark surface.
Illustration for dca and execution; examples in this article are educational.

External deposits increase a DCA bot's assigned capital; they do not create trading profit. Measure the result by reconciling opening equity, closing equity and money or assets moved across the bot's reporting boundary. Record funding and allocation events separately from purchases, then show the remaining marked holdings and any realized result.

A top-up can make a balance recover without the strategy recovering. It can also enable additional purchases that change subsequent results. A useful report separates the immediate contribution from what happens after that money becomes available.

Define the bot's reporting boundary

Start with what the report includes: one bot's attributed cash and holdings, an entire exchange account, or several accounts together. A transfer can be external to the bot while remaining internal to the owner's combined portfolio.

The GIPS handbook's external cash-flow definition covers cash or investments entering or leaving a portfolio. Applying that boundary principle to a bot allocation is an operational reporting choice here; it does not establish GIPS compliance.

Consider a shared exchange wallet. If the owner deposits 1,000 USDT and assigns 600 to one bot, that bot receives a 600 contribution. The other 400 belongs outside its report. Treating the whole deposit as bot funding would understate its result when the closing bot assets exclude that 400. Ignoring the assigned 600 would overstate the result.

Write down whether idle quote cash belongs to the bot. A dedicated allocation normally includes its unused cash as well as inventory. If the report covers purchased inventory alone, call it an inventory result and explain the excluded cash. The open-deal inventory worksheet handles holdings and cost attribution; this article handles the principal crossing the chosen boundary.

Separate funding, allocation and execution

These events can occur at different times:

EventEffect on the measured botPerformance treatment
Owner deposits into an excluded shared-wallet balanceNo bot allocation yetNo bot contribution yet
Owner assigns available cash to the botBot cash and capital increaseExternal contribution to this report
Bot buys using its assigned cashCash becomes inventoryInternal trade; include costs and later price changes
A sale leaves proceeds inside the allocationInventory becomes cashInternal trade; distinguish proceeds from profit
Owner releases cash from the bot allocationBot capital decreasesExternal distribution from this report
Earned profit stays inside the allocationNo owner contributionRetained result, subject to the stated accounting policy

Product mechanics vary. Bybit's DCA Bot FAQ says its scheduled spot product transfers the required funds from the Funding Account to the BOT Account before each purchase. That describes Bybit's implementation, rather than a universal rule for all systems called DCA bots.

For a bot using price-triggered averaging orders, funding may instead sit in a shared wallet awaiting a later trigger. Neither a deposit nor an allocation proves a purchase occurred. Record the confirmed fill separately. Keep a budget revision separate too: increasing available capital does not, by itself, define which existing or future orders may spend it.

Reconcile the result in currency units first

For a fixed reporting boundary and period:

Result = closing equity − opening equity − contributions + distributions

Equity includes attributed cash and marked holdings, less applicable liabilities. Reflect included trading costs in those values consistently. The result can include unrealized changes; it is not the same as realized sale profit, taxable profit or cash available for withdrawal.

Use the same reporting currency throughout. An asset contributed in kind needs a quantity, an effective timestamp and a value under the same pricing policy used for equity. Subsequent price changes belong to the measured period after receipt. An old purchase price from the owner's wallet is not automatically the receiving bot's contribution value.

If the trading quote asset differs from the reporting currency, quote-currency valuation adds another layer. A contribution's value at receipt and the later value of the resulting assets can differ. Do not let inconsistent conversion rates turn principal into an apparent gain.

A top-up that raises equity by 400 but earns 100

The following timeline is hypothetical. It describes an unleveraged spot bot measured in USDT, with cash and inventory assigned to that bot. Excluded wallet cash starts at zero. All events occur on one invented day in UTC. There are no modeled fees, interest, liabilities or price changes during the funding and purchase events. These simplifications isolate principal movements; they are not a venue fee assumption or observed trading result.

Time and eventBot cashMarked inventoryBot equityBot external flow
08:00, opening snapshot8001,2002,000—
08:30, holdings lose value8001,0501,850—
09:00, owner deposits 1,000 into excluded wallet cash8001,0501,8500
09:05, owner assigns 600 of that cash to the bot1,4001,0502,450+600 contribution
09:10, confirmed purchase spends 500 at the valuation price9001,5502,4500
10:00, holdings increase in marked value9001,8002,700—
10:05, owner releases 300 into excluded wallet cash6001,8002,400−300 distribution

The bot's balance rose by 2,400 − 2,000 = 400. Net contributed capital rose by 600 − 300 = 300. The remaining result is:

2,400 − 2,000 − 600 + 300 = +100 USDT

The independent price-change bridge agrees: −150 + 250 = +100. The purchase merely exchanged 500 of cash for 500 of marked inventory. The contribution and distribution each changed equity by their own amount without creating a gain or loss.

At the final cutoff, 700 remains in excluded wallet cash: the unassigned 400 plus the released 300. Combined wealth is 2,400 + 700 = 3,100, also equal to 2,000 opening wealth + 1,000 owner deposit + 100 result. The 600 assignment and 300 release cancel as internal transfers in that combined report.

This example has no sales, so its 100 result is entirely an unrealized valuation change over the period. The ending marked value is not a promise of executable sale proceeds.

Keep profit funding separate from owner funding

Suppose a completed deal earns 40 after its included trading costs and that money remains inside the bot allocation. The gain belongs in performance for the period in which it arose. A sale that realizes a previously marked gain does not earn that gain again. If a sizing policy subsequently assigns the 40 to future purchases, that internal decision does not create a 40 owner contribution or another gain.

If the owner first removes the 40 and later returns it, record a distribution and a contribution at the actual boundary crossings. The paired flows do not erase the original earned result. Retain the event trail rather than reclassifying every later deposit according to where the owner originally obtained the money.

The profit-reinvestment guide covers resizing the next complete ladder. An owner top-up is a different source of capital, even if both actions eventually increase order sizes. Preserve separate fields for retained result, owner contribution and approved future commitment.

A larger balance also does not prove existing safety orders remain adequately funded. If a revised plan uses ATR-based safety-order spacing, review its remaining commitments under that configuration. A funding event supplies capital; a configuration decision authorizes how the bot may commit it.

Catch the failures that disguise a funding event

Keep one flow ledger with event identity, account, bot allocation, asset quantity, effective timestamp, reporting value, direction and evidence. Link the wallet movement to its allocation record without counting both as contributions to the same report.

Use these checks before accepting the result:

  1. Match scope. Every removed contribution must have corresponding assets included in the bot's equity. Every distribution must reduce those assets under the same policy.
  2. Match timing. Preserve the effective funding or allocation time and nearby valuations. A requested or pending transfer does not establish that capital was available to this spot bot.
  3. Classify credits. A trading receipt, rebate, owner deposit and loan credit have different meanings. Borrowed funds require a liability; treating them as owner equity can hide risk.
  4. Reconcile costs. Keep trading charges as costs. A withdrawal fee needs separate treatment from the amount distributed, and costs paid from excluded assets need explicit attribution before relying on the simple equity bridge.
  5. Retain unresolved differences. Duplicate imports, missing allocations and transfers straddling the cutoff should remain exceptions with an amount and timestamp.

The raw event stream helps identify evidence, but does not choose the bot boundary. Binance's Spot user-data documentation distinguishes balance updates associated with deposits, withdrawals and account transfers from order execution updates. Map those venue events to the allocation ledger rather than treating every balance increase as a trade result.

For a new reporting implementation, test a pure contribution and a pure distribution while prices are held constant. Each should produce zero performance result. Then test a purchase at the marking price without costs: equity should stay unchanged. Finally, add a known fee and check that performance falls by that fee once.

Show the funding history beside the performance

The currency result is the first reconciliation, not a complete percentage-return method. Dividing the example's 400 balance increase by its 2,000 opening balance produces 20% balance growth, including funding. Even dividing the corrected 100 by opening equity does not account for how long the added capital participated. Use the time-weighted versus money-weighted return guide for that measurement choice.

Removing a contribution's direct arithmetic effect also does not reverse its economic consequences. A top-up may allow another averaging purchase, avoid an otherwise missed order or increase exposure during a decline. Record whether the funding followed a preset plan or a discretionary intervention when comparing bot runs.

Before publishing the next report, place opening equity, contributions, distributions, closing equity and the reconciled currency result on the same page. Attach the allocation evidence and label unresolved amounts. A top-up should explain where the capital came from; the performance line should explain what happened to it afterward.

Keep the context with the example.

Each worked example is illustrative, with its sources and assumptions in the article. Read our editorial standards for authorship, verification and corrections.