---
title: What is a Sharpe ratio? Explained with real crypto tests
url: https://comparand.xyz/blog/sharpe-ratio-explained-crypto
description: 'A Sharpe ratio is return per unit of swing. How to annualize it for a market that never closes, and real Bitcoin numbers: just holding BTC scored 0.78.'
updated: '2026-10-21'
category: Basics
---

# What is a Sharpe ratio? Explained with real crypto tests

A Sharpe ratio is return per unit of swing. How to annualize it for a market that never closes, and real Bitcoin numbers: just holding BTC scored 0.78.

A Sharpe ratio is the average return of a strategy divided by how much its returns swing. On Binance Bitcoin hourly bars from September 2019 to October 2026, just holding Bitcoin scored 0.78, so a rule has to beat that, not zero. A 20/50 moving-average rule scored 0.81 before fees and only 0.28 after a 0.10% fee per side.

This guide explains the idea in plain words, how to scale it for a market that never closes, and what real numbers look like. These are past cases, not a forecast.

For why the best Sharpe from a big search falls apart later, see [Overfitting in trading backtests](https://comparand.xyz/blog/overfitting-1000-random-trading-rules).

## What does a Sharpe ratio measure?

Think of two rules that earned the same total return. One grew in a smooth line. The other swung up and down. Most people would call the smooth one better. The Sharpe ratio puts a number on that.

You find it in two steps:

1. Take the average return per period (per hour, per day, or whichever bar size you use).
2. Divide it by the standard deviation of those returns. The standard deviation is a measure of how far returns usually sit from their average.

The result is return per unit of risk, where "risk" means swing. We did not subtract a risk-free rate (what cash would earn), so our numbers are simply the average divided by the swing.

*Diagram: Show two return lines with the same ending value, one smooth with a high Sharpe and one jagged with a low Sharpe.*
## How do you annualize a Sharpe ratio for a market that never closes?

Per-hour Sharpe numbers are tiny and hard to compare, so people scale them to a year. You multiply by the square root of how many periods fit in a year.

Stocks only trade on some days, so stock tools use the number of trading days. Crypto trades all day, every day. We used these counts:

| Bar size | Bars in a year we used |
| --- | ---: |
| 1 hour | 8,760 |
| 4 hours | 2,190 |
| 1 day | 365 |

If you copy a stock formula, you will use too few periods and get the wrong scale. Check which count your tool uses.

One more catch. The formula assumes each bar's return is independent of the one before it. In real markets that is not exactly true, so treat the number as a rough score.

## What do real Sharpe ratios look like in crypto?

Here are numbers we measured, all on Binance perpetual futures (a perp is a futures contract that never expires). A bar is the open, high, low and close price over a set time.

| What we tested | Bars | Sharpe |
| --- | --- | ---: |
| Bitcoin, buy and hold, Sep 2019 to Oct 2026 | 1h | 0.78 |
| Bitcoin 20/50 moving-average rule, before fees | 1h | 0.81 |
| Same rule after a 0.05% fee per side | 1h | 0.55 |
| Same rule after a 0.10% fee per side | 1h | 0.28 |
| Best of 1,000 random rules, 2019 to 2022 | 1h | 0.75 |
| That same rule, Jan 2023 to Sep 2026 | 1h | −0.19 |
| Honest 1-hour momentum rule, after fees, Sep 2019 to Sep 2026 | 1h | −8.00 |
| Same rule with a timing bug | 1h | 59.41 |

The moving-average rule here is "be long when the average of the last 20 closes is above the average of the last 50, otherwise stay out". A fee is the cost paid each time you open or close a position.

Notice two things. First, just holding Bitcoin had a Sharpe of 0.78 over this period. A new rule has to beat that, not zero. Second, the same rule fell from 0.81 to 0.28 as fees went up, so costs matter. We look at that in [how much trading fees eat](https://comparand.xyz/blog/crypto-trading-fees-backtest-impact).

*Diagram: Show a ladder of the Sharpe values in the table, from −8.00 up to 59.41, with the real-looking ones near the bottom and the impossible one far above.*
## Why is the best Sharpe from a big search often misleading?

We made 1,000 random Bitcoin rules. Each looked back a random number of hours and either followed or faded the move. We picked the one with the best Sharpe on 2019 to 2022 data, then froze it and ran it on January 2023 to September 2026.

- The winner scored 0.75 on the training years. It scored −0.19 on the later years.
- The middle training Sharpe of all 1,000 rules was −0.66. Only 24.5% of the rules had a positive Sharpe in training.
- On the later dates, only 1% of the rules had a positive Sharpe, and the best one scored 0.19.
- 83.6% of the rules scored lower on the later dates than in training.

When you search many rules, the top score partly comes from luck. A high score picked from many tries is the number most likely to shrink later. The full test is in [our test of 1,000 random trading rules](https://comparand.xyz/blog/overfitting-1000-random-trading-rules).

## Why is a huge Sharpe ratio a warning sign?

A Sharpe far above anything normal usually means a bug, not a discovery. Our example is a one-hour Bitcoin momentum rule. It goes long if the last finished hour rose and short if it fell.

The honest version scored −8.00 after fees over 61,901 hours. The broken version used the return of the hour it was about to trade, which it could not know. It scored 59.41.

The broken score was huge in every year, not just one. Its yearly Sharpe ran from 50.50 (2020) to 75.81 (2021). The honest version was negative in every year.

Two other numbers gave the bug away. The broken rule made money in 87.2% of hours, against 40.2% for the honest one. And over seven years of Bitcoin, its worst fall from a high was only 0.62%. Real rules do not look like that.

Real tests of simple rules look very different. Across all 18 moving-average tests (Bitcoin, Ethereum and Solana, three bar sizes, two rules), the highest full-period Sharpe was 1.26, before fees. If a test shows a number far above that, look for a timing mistake first. The full story is in our [look-ahead bias example](https://comparand.xyz/blog/look-ahead-bias-backtest-example).

## What does Sharpe leave out?

Sharpe is a useful summary, but it hides a lot.

- **It treats up swings and down swings the same.** A rule with big gains and small losses gets marked down for the gains.
- **It says nothing about the worst fall.** Our best random rule scored 0.75 in training, yet it still fell 60.22% from a high during those years. On the later dates its worst fall was 76.83%. See [what max drawdown means](https://comparand.xyz/blog/what-is-max-drawdown).
- **It depends on the data you give it.** A short period, or one big rally, can give a flattering number.
- **It ignores costs unless you add them.**

Use Sharpe next to the total return, the worst fall, the number of trades and a [test on later dates](https://comparand.xyz/blog/walk-forward-testing-explained).

## How we measured this

We used Binance perpetual futures bars. The random-rule and timing-bug tests used Bitcoin hourly bars from September 8, 2019 to October 1, 2026. The moving-average tests used Bitcoin, Ethereum and Solana at 1-hour, 4-hour and daily bars, from 2019 or 2020 (when each coin's data starts) to October 19, 2026. Every rule used only closed bars to choose its position. Fees were charged on each side of a trade at the rates shown. Sharpe is the average per-bar return divided by its standard deviation, scaled by the square root of the number of bars in a year.

Limits: we left out funding payments, the gap between buy and sell prices, slippage and delays, so real costs are higher. Only coins that still trade today are included. The 1,000 rules are random picks, not every possible rule. Results from one market and one history are past cases, not a forecast.

## Try this in Comparand

You can check a Sharpe number yourself with real bars and a clear paper trail. With Comparand connected to your AI app, you can ask:

- "Get Binance BTCUSDT hourly bars from January 1, 2024 to January 1, 2025 and work out the Sharpe of buying and holding, using 8,760 hours a year." The bar tool (venue_bars) returns completed open, high, low, close and volume bars for the start and end you choose, on 1m, 5m, 15m, 1h, 4h or 1d. It is free on every key.
- "Do the same for Bybit and OKX." The same tool covers other venues. The coverage tool (venue_coverage), also free, lists which venues and bar sizes exist.
- "Show me where this data came from." Every answer carries a prov block with the days, digests and code revisions behind it, and a meter block with what the call cost. If your Sharpe changes between runs, the prov block shows whether the data changed.

You work out the Sharpe in your AI app or your own code; Comparand supplies the bars. You can [try 3 coins free](https://comparand.xyz/try), read the [docs](https://comparand.xyz/docs) or see the [methods](https://comparand.xyz/methods).

## The short version

- A Sharpe ratio is the average return divided by how much returns swing. Higher means more return per unit of swing.
- For crypto, scale by the number of bars in a full year: 8,760 hourly, 2,190 four-hourly, 365 daily.
- In our tests, buy and hold Bitcoin scored 0.78, and no simple moving-average test passed 1.26 over the full period, even before fees.
- The best of 1,000 random rules scored 0.75 in training and −0.19 later.
- A Sharpe of 59.41 came from a timing bug. A very high number is a reason to check your test.

## Questions people ask

**What is a Sharpe ratio in simple words?**

It is the average return of a strategy divided by how much that return bounces around. A higher number means more return for each unit of bounce. It does not tell you the strategy will keep working.

**How do you annualize a Sharpe ratio for crypto?**

Multiply the per-bar Sharpe by the square root of the number of bars in a year. Crypto trades all day, every day, so we used 8,760 for hourly bars, 2,190 for four-hour bars and 365 for daily bars.

**What is a good Sharpe ratio for a crypto strategy?**

There is no safe number, but our tests give a feel. Over the full period, the 18 simple moving-average tests on Bitcoin, Ethereum and Solana had a highest Sharpe of 1.26, before fees. A buggy test that peeked at the future showed 59.41.

**Why can a very high Sharpe ratio be a warning sign?**

Real results on real prices are rarely that smooth. In our test, one timing bug turned a Sharpe of −8.00 into 59.41 on the same 61,901 hours. Check for a bug before you believe a number that high.

**Does a high Sharpe ratio in a backtest mean the rule will work later?**

No. The best of 1,000 random Bitcoin rules had a training Sharpe of 0.75, then −0.19 on later dates. A past Sharpe is a description of the past, not a forecast.
