Free lesson · Crypto markets
Returns across two currencies
Open interactive lessonPractice calculationsExplore labs
Start with the idea
Your reporting-currency return combines the token’s return in its quote currency and the quote currency’s return against your reporting unit.
Symbols, units & horizon
- R_USD: base asset dollar return over the chosen common interval
- R_B/Q: base price return in quote tokens
- R_Q/USD: quote-token dollar return over that interval
- all returns as fractions
When and why to use this
Attribute spot portfolio performance between asset movement and settlement-currency risk.
Your reporting-currency return combines the token’s return in its quote currency and the quote currency’s return against your reporting unit.
A token can rise in stablecoin terms while its dollar value falls if the stablecoin depegs. Multiply gross returns instead of adding percentage changes exactly.
Separate external deposits and withdrawals from investment performance. A token balance increase can reflect a transfer rather than a gain. Keep timestamps consistent when comparing a 24-hour market with a conventional daily close.
Returns across two currencies
- Write ending dollar price as ending base/quote price times ending quote/USD price.
- Divide by the corresponding initial product.
- Recognize each price ratio as one plus its return, multiply and subtract one.
Token rises 10% in quote units while quote loses 5% versus USD: 1.10×.95−1=.045, or +4.5% in dollars.
Apply it in a strategy
- Attribute spot portfolio performance between asset movement and settlement-currency risk.
- Record the input timestamp, executable quantity, currency and horizon. Reconcile the result with a cash-flow or state table.
- Stress this failure condition: Adding returns omits the interaction term; unaligned measurement intervals can create false attribution.
Research deliverable
Build and explain a returns across two currencies worksheet. Attribute spot portfolio performance between asset movement and settlement-currency risk.
Evidence boundary: Synthetic arithmetic and scenarios illustrate mechanics. They are not historical returns, a paper replication, or evidence of an executable edge. Research sources and their access limitations are recorded at the end of this module.
Python implementation
Self-contained teaching example. Python 3.10+; dependencies and input conventions are shown in the code and notation. Run in your own Python environment.
# Python 3.10+; standard library unless NumPy is imported below.
# Inputs and outputs use the units defined in this lesson. Synthetic teaching example.
def reporting_return(base_return,quote_return):
if base_return<-1 or quote_return<-1: raise ValueError("Simple returns cannot be below -100% for positive-price assets")
return (1+base_return)*(1+quote_return)-1
print(reporting_return(.10,-.05))Continue learning
Crypto Markets: Instruments, Ownership and Cash Flows — all lessons- Base, quote and instrument identity
- Returns across two currencies
- Order-book depth and average execution price
- Stablecoin conversion is an FX route
- Custody claims and recovery scenarios
- Token issuance, unlocks and dilution
- Staking rewards and economic return
- A reconciled spot research ledger
Quantitative finance and development glossary · Python resources and libraries · Research sources and limitations