If like me you were taught market efficiency in school, you probably told something like this:
The Efficient Market Hypothesis (EMH) is a hypothesis in financial economics that states that asset prices reflect all available information. A direct implication is that it is impossible to "beat the market" consistently on a risk-adjusted basis since market prices should only react to new information.
And it would immediately go on to define three forms of market efficiency:
Weak, semi-strong, and strong-form tests In Fama's influential 1970 review paper, he categorized empirical tests of efficiency into "weak-form", "semi-strong-form", and "strong-form" tests.
These categories of tests refer to the information set used in the statement "prices reflect all available information." Weak-form tests study the information contained in historical prices. Semi-strong form tests study information (beyond historical prices) which is publicly available. Strong-form tests regard private information.
Join hypothesis problem
Ultimately testing for market efficiency is impossible since you will always have a joint hypothesis problem. Even models widely in use such as Capital Asset Pricing Model (CAPM) wouldn't pass the simplest empirical test. Yet the investment banking industry squarely relies on CAPM because bankers are not quite concerned with the fundamental valuation of securities, but rather what fee they can collect for providing their services to you. Sell-side models are simple and primarily concerned with relative pricing of securities to other assets.
So how efficient are the markets?
Market efficiency is something you only really encounter in school. The entire hedge fund industry is only possible on the premise being otherwise. The market efficiency even in its weak form doesn't stand any empirical tests. Fama's own student, wrote a seminal paper showing that a factor as simple as momentum, which solely uses past prices, can consistently provide excess returns.
Critical in the teaching of all asset pricing models in school is the assumption of no arbitrage. Meaning there is no truly risk-free money to be made in the markets. This is where market efficiency truly shines.
The markets are (almost) efficient in pricing linearities.
What the hell does that mean? It means that there exists combination of assets that produce payoffs equal to other assets. A long call plus a short put is a forward. A covered call is a collateralized short put. Index futures basis rarely gets out of hand versus its underlying assets. There are numerous market linearities that are consistent and provide no opportunity for true arbitrage. That is where the market is almost always efficient. It is quite rare to see true arbitrage in the market. If you think you have discovered true arbitrage, you should look harder for multiple reasons where actual realization of the profit might not be possible.
True arbitrage is certainly possible, but it is rare to see it last.