Skip to content

Main content

Battery Roundtrip Loss Arbitrage Gap Tool

Calculate battery roundtrip loss arbitrage gap from explicit caller-supplied inputs.

Loading tool…

Description

purchasedMwh = deliveredMwh/efficiency; grossMargin = deliveredMwh*sellPrice-purchasedMwh*buyPrice; breakEvenSellPrice = buyPrice/efficiency.

A generation or storage spread compares revenue with specified fuel, carbon, purchase or hedge costs. It is a local margin on a common output-energy basis, rather than complete profit or proof a dispatch or trade is feasible.

purchasedMwh = deliveredMwh/efficiency; grossMargin = deliveredMwh*sellPrice-purchasedMwh*buyPrice; breakEvenSellPrice = buyPrice/efficiency.

When to use this tool

Use Battery Roundtrip Loss Arbitrage Gap when checking one declared generation, storage or hedge-margin contribution.

How to use the tool and how it works

  1. Enter deliveredMwh, buyPrice, sellPrice, roundtripEfficiency. Use the units and conventions below.
  2. Run the tool. Correct any format, range, or cross-field input error before interpreting the output.
  3. Read purchasedMwh, grossMargin, breakEvenSellPrice. Use the output convention below.

Require nonnegative deliveredMwh and roundtripEfficiency in (0,1]. purchasedMwh = deliveredMwh/efficiency; grossMargin = deliveredMwh*sellPrice-purchasedMwh*buyPrice; breakEvenSellPrice = buyPrice/efficiency.1

Input fieldMeaning and unitsAccepted input
deliveredMwhDelivered MwhRequired. Finite number; minimum 0.
buyPriceBuy PriceRequired. Finite number.
sellPriceSell PriceRequired. Finite number.
roundtripEfficiencyRoundtrip EfficiencyRequired. Finite number; maximum 1; strictly above 0.
Output fieldInterpretationReturned shape
purchasedMwhPurchased MwhRequired. Finite number.
grossMarginGross MarginRequired. Finite number.
breakEvenSellPriceBreak Even Sell PriceRequired. Finite number.
json
{
  "input": {
    "deliveredMwh": 8,
    "buyPrice": 50,
    "sellPrice": 100,
    "roundtripEfficiency": 0.8
  },
  "output": {
    "purchasedMwh": 10,
    "grossMargin": 300,
    "breakEvenSellPrice": 62.5
  }
}

Limitations and assumptions

  • Prices use currency/MWh and may be signed. The break-even price excludes degradation, capacity costs, fees, operating constraints and charging/discharging timing.
  • Inputs must satisfy both the field types and the cross-field conditions above. Invalid input causes an error; a successful false flag or documented placeholder is a different result.
  • Numeric calculations use binary floating point unless exact decimal-integer arithmetic is explicitly stated. No hidden measurement tolerance or decimal rounding is added; nonfinite or out-of-contract results are rejected. Numeric signed-zero results are exported as zero.

Alternative or Complementary methods

Use complete operating costs, technical constraints and settlement terms to assess a real dispatch, hedge or investment.

References

  1. Calculation and input contract: energy-economics/battery-roundtrip-loss-arbitrage-gap — tool.io

Similar or alternative tools

  • Carbon Cost Pass Through One Mwh

    grossCarbonCost = emissionTonnesPerMwh*carbonPricePerTonne; priceIncrement = grossCarbonCost*passThroughFraction.

  • Dark Spread Emission Cost Term

    fuelCost = coalPrice*fuelUnitsPerMwh; carbonCost = emissionsPerMwh*carbonPrice; cleanDarkSpread = powerPrice-fuelCost-carbonCost-variableCost.