James Bachini

Sharpe Ratio Explained | How To Calculate Risk Adjusted Returns

Sharpe Ratio

In this article we look at how to calculate risk adjusted returns using the sharpe ratio. We look at some modern examples which you can try using the share ratio calculator.

  1. Sharpe Ratio Calculator
  2. What Is The Sharpe Ratio
  3. How To Calculate Sharpe Ratio
  4. What Is A Good Sharpe Ratio
  5. Sharpe Ratio Use Cases
  6. Sharpe Ratio Examples
  7. Sharpe vs Sortino Ratios [Video]
  8. Sharpe Ratio Code For Developers
  9. Conclusion

Sharpe Ratio Calculator

This calculator uses the simplified Sharpe ratio as discussed here.

Possibilities

Success
Chances: %
Return: $
Break Even
Chances: %
Return: $
Failure
Chances: %
Return: $
Expected Outcome
Return: $

Result:


What Is The Sharpe Ratio

The sharpe ratio is the most popular formula for calculating risk adjusted returns. The more risky an asset, the higher reward an investor should receive and the higher the sharpe ratio will be. A sharpe ratio greater than 1 is considered the baseline for a good investment.


How To Calculate Sharpe Ratio

The full formula for calculating Sharpe ratio is:

SharpeRatio = (Expected Return – RiskFreeReturn) / SandardDeviationOfExpectedReturn

Risk free return is usually quoted as US treasury bills however with interest rates so low I tend to use a simplified version for quick calculations and assume risk free return is cash or zero.

Simplified Sharpe Ratio = Expected Return / Standard Deviation

Sharpe ratio explained

So let’s look at an example. Elon Musk launches a new company doing teleportation holidays to Mars. We are interested in doing a momentum trade and holding the stock for one month.

The stock has been steadily climbing recently at around 20% / month for the last six months except for one month where it dropped 30% after /r/WallStreetBets got closed down

. Let’s first calculate the standard deviation.

Standard deviation is calculated by the square root of the average of the squared deviation from mean. That’s not intuitively worded I know so let’s look at the example

Jan +20%, Feb +20%, Mar -30%, Apr +20%, May +20%, June +20%

Calculate Mean (Average) = (20 +20 -30 +20 +20 +20) / 6 = 11.66 Mean

Now let’s calculate the distance from the mean for each figure and square it.

5 off            20 – 11.66 = 8.34 x 8.34 = 69.56

1 off            -30 -11.66 = -41.66 x -41.66 = 1735.56

Now we need to take the square root of the average of these deviation totals. I’m really bad at doing square roots in my head so I tend to use Javascript.

Math.sqrt( ((69.56 * 5) + 1735.56) / 6 ) = 18.63 Standard Deviation

To calculate the expected return given the data available I would use 20% as the March result was seen as a black swan event. There could be a case for using the mean or average monthly growth as well. Calculating expected returns in real world examples can be ambiguous at best.

Let’s plug these numbers into the simplified sharpe ratio:

Simplified Sharpe Ratio = Expected Return / Standard Deviation

1.07 = 20 / 18.63

So our sharpe ratio is just over 1, but what does this mean?


What Is A Good Sharpe Ratio

In the example above we got a sharpe ratio of just over 1 for an investment in Elon’s teleportation company. This would be seen as a worthy but not exceptional investment opportunity.

This is dynamic aligning to market conditions and other factors but as a rough rule of thumb:

Sharpe Ratio less than 1Not worth doing unless other factors are in play
Sharpe Ratio of 1A good investment, healthy risk/reward
Sharpe Ratio of 2Exceptional opportunity, time to bet big
Sharpe Ratio of 3Mortgage the house and sell a kidney
What is a good sharpe ratio?

If we had used the average monthly return of 11.6 (the mean instead of the median) then our Sharpe ratio would have worked out at 0.625. This shows how much room for interpretation there is in the usage as it would then have been not worth doing.

The more you use the formula the more of a feel you’ll get for how accurate your data going in is and how different investments within a portfolio weigh up against each other.


Sharpe Ratio Use Cases

I primarily use the sharpe ratio when looking at investments and rebalancing asset portfolios.

It can also be used to make better informed business decisions.

It can be used as an analysis tool in the same way as expected value is to do quick on the fly calculations.

An investor could weigh up their entire portfolio looking at the sharpe ratio and diversification of their assets to better allocate capital.


Sharpe Ratio Examples

Bitcoin Sharpe Ratio Q1 2021

Bitcoin sharpe ratio

Holding period: 8 years (two halving cycles)

Investment: 1 BTC @ $50k USD

Expected Return: $1m USD

Risk: 10% chance of losing the full -$50k

That $1m $BTC price is based on PlanB’s stock to flow model. I’m also going to cost in a 10% chance of it going to zero or losing the funds through a hack resulting in a $50k loss. This is just an example, don’t get mad if you love/hate crypto, the last example was a teleportation company.

So let’s calculate standard deviation first.

The mean return is 895000, ** 2 is Javascript ES6 square,

Math.sqrt( ((((1m – 895k) ** 2) * 9) + ((-50k – 895k) ** 2)) / 10 ) = 315000

Now let’s calculate the Sharpe ratio     1000000 / 315000= 3.17

If the admittedly questionable figures going in are to be believed then this is the investment of the century with a Sharpe ratio above 3.

Tesla Sharpe Ratio Q1 2021

Tesla sharpe ratio

If I haven’t upset enough people already then let’s look at another example for Tesla stock. Same time frame.

Holding period: 8 years

Investment: $30k USD

Expected Return: $120k USD

Risk: 50% chance of break even

I’ve based this example on the upside of Tesla becoming the new Apple, dominating the car manufacturing sector and with the help of inflation quadrupling their market cap. Downside risk at 50% of breaking even over a 8 year period.

The mean return is $75k

Math.sqrt( (((120k – 75k) ** 2) + ((30k – 75k) ** 2)) / 2 ) = 45

Sharpe ratio  = 120k / 45k = 2.6

Still a fantastic investment. Not surprising considering we are expecting it to quadruple in price with no real downside. Let’s look at a less speculative example.

Corporate Bonds @ 4% APR

corporate bond sharpe ratio

Holding period: 1 Year

Investment: $1000

Return: $40

Risk: default risk 1% @ -$1000

So a good quality corporate bond with a 1% risk of default which would cause the initial investment to be lost. $40 upside potential per $1000 invested.

Mean return is ((40 * 99) -1000) / 100 = 29.6

Standard deviation is Math.sqrt( ((((40 – 29.6) ** 2) * 99) + ((-1000 – 29.6) ** 2)) / 100 ) = 103.47

Sharpe ratio is 40 / 103.47 = 0.387

The risk to reward ratio just isn’t there for this investment. Maybe that’s why only the Fed money printer is buying corporate bonds currently.


Sharpe vs Sortino

The Sortino ratio is a variation of the Sharpe ratio which only factors in downside risk. Using the Sharpe ratio to measure the effectiveness of financial investments can be misleading because a opportunity could have a lot of upside volatility but the downside is largely protected.

James On YouTube

The Sortino ratio aims to improve upon the Sharpe ratios assessment by calculating the standard deviation only below the base line or the drawdown. This can either be zero which only count periods where the investment made a loss or a MAR (minimum accepted returns) baseline can be used in line with treasury bonds for example..

Which method is more effective depends on the situation and whether increased upside volatility should be considered a negative.


Sharpe Ratio Code For Developers

Here’s a function I use in the calculator above to work out the sharpe ratio. It’s written in Javascript and will run in the browser or on node/deno.

const calcSharpeRatio = (expectedOutcome, possibleOutcomes) => {
  let meanTotal = 0;
  let chanceCount = 0;
  possibleOutcomes.forEach((outcome) => {
    meanTotal += outcome.result * outcome.chances;
    chanceCount += outcome.chances;
  });
  const mean = meanTotal / chanceCount;
  let deviations = 0;
  possibleOutcomes.forEach((outcome) => {
    const deviation = outcome.chances - mean;
    const meanSqrd = deviation ** 2;
    deviations += (meanSqrd * outcome.chances);
  });
  const stdDeviation = Math.sqrt(deviations / chanceCount);
  const sharpeRatio = expectedOutcome / stdDeviation;
  console.log('t1',mean,stdDeviation,sharpeRatio);
  return sharpeRatio;
};

const possiblities = [
  { outcome: 'success', chances: 70, result: 250000 },
  { outcome: 'breakEven', chances: 20, result: 50000 },
  { outcome: 'failure', chances: 10, result: -50000 },
];

const expected = 250000;

const sharpeRatio = calcSharpeRatio(expected, possiblities);

And here is a code snippet for calculating the Sortino ratio using Javascript

const calcSortinoRatio = (returnArray) => {
  const avgReturn = returnArray.reduce( ( a, b ) => a + b, 0 ) / returnArray.length;
	const badDays = returnArray.map( p => Math.min( 0, p - 0 ) )
	const badDaysSquared = badDays.map( p => Math.pow(p, 2) )
	const badDaysSquaredAverage = badDaysSquared.reduce( ( a, b ) => a + b, 0 ) / badDaysSquared.length
	const downsideDeviation = Math.sqrt(badDaysSquaredAverage)
	return avgReturn / downsideDeviation;
}

Conclusion

The Sharpe ratio provides a useful but by no means perfect method of analysing risk adjusted return. There are a lot of factors such as time frame that aren’t taken into account but when used with good data it can provide a good data point for investment decisions.

We’ve looked at some examples and gone through the formulas and code. Why not try using the calculator next time you are struggling with an investment or business decision.



Get The Blockchain Sector Newsletter, binge the YouTube channel and connect with me on Twitter

The Blockchain Sector newsletter goes out a few times a month when there is breaking news or interesting developments to discuss. All the content I produce is free, if you’d like to help please share this content on social media.

Thank you.

James Bachini

Disclaimer: Not a financial advisor, not financial advice. The content I create is to document my journey and for educational and entertainment purposes only. It is not under any circumstances investment advice. I am not an investment or trading professional and am learning myself while still making plenty of mistakes along the way. Any code published is experimental and not production ready to be used for financial transactions. Do your own research and do not play with funds you do not want to lose.