A contract for difference (CFD) makes it possible for retail and institutional investors to speculate on the underlying market prices of a wide range of financial assets. The trader actually never owns the underlying asset, so CFDs are also known as derivative products that rely on leverage to let the trader speculate on price movements, sparing the needing of using the full value of the security being traded.
CFDs can be traded on currencies (forex), stock market indices, shares, commodities, interest rates and bonds.
A CFD is virtually an agreement to exchange the difference between the opening price and the closing price of the security, which is being traded. The difference together with the position size constitute the profit/loss.
Traders of CFDs can possibly profit, just like when spread betting, depending on the direction the market takes, as it is possible to open short and long positions on a contract. There is also no Stamp Duty due in the UK, although Capital Gains Tax is to be paid on all profits*. The advantage is that CFD trading can be used to hedge a share portfolio, allowing the trader offset losses against their tax liabilities.
The trader experience is almost the same, but trades are handled a little bit differently. The amount of money that the trader is prepared to stake per point is the main aspect of spread betting to determine the contract size. CFD trading is carried out through buying or selling contracts that represent a certain amount per point in the market.
For spread betting and for most CFDs there are no commissions. However, for CFDs there usually are commissions for trading on specific equities.
*Tax laws are subject to change and depend on individual circumstances. Tax law may differ in a jurisdiction other than the UK.