Contracts for difference (CFDs) are a form of financial derivative. Other forms of financial derivatives include futures, options and warrants. A financial derivative is a financial instrument that is taken from a physical asset such as a stock, bond or currency. There is then an arrangement or contract taken out against that asset between two parties with an agreement to that one party pays the other the difference of the value in the contract.
Contracts for difference are a contract taken out between two different parties, to pay the difference in the price of an asset from point of purchase to point of sale. The difference between the price of the asset will be determined by movements in the market.
Contracts for difference are unique as a financial derivative as they can be taken out on any type of asset. This includes stocks, bonds, currencies, indices, commodities, energy, property etc... All you are doing is creating a contract between two parties to pay the difference in the price from point of purchase to point of sale.
Contracts for difference can be created in both long and short positions. A long position is a position where the purchaser thinks that the price will go up. If the price goes up from the point of purchase, the person who sold the contract will have to pay the buyer the difference in the value of the contract. The value of the contract is reflected directly by the value of the asset. If the value of the asset goes down, the person who bought they contract would have to pay the seller the difference in the value. A short position works the opposite where the person who bought the contract would have to pay if the price goes up and the seller would have to pay if the price goes down.
Contracts for difference are usually traded on closed exchange, with a key entity acting as the market maker. The market maker is the individual or corporation who acts on the other end of the purchase. So you are always buying from or selling to a single entity. They make their money by profiting off incorrect trades, by charging a commission and by creating a spread on the price of the CFD. The spread represents the difference between the buy price and sell price of the CFD. Market makers also make money by charging interest.
Contracts for difference are usually purchased on margins. What this means is that if you buy $100 worth of contracts, you will only pay $5 in cash, and borrow $95 from the market maker. The market maker will then charge you interest on long positions and pay you interest on short positions. This is a similar concept to a margin trade in the stock market.
The benefit of having a margin is that you can take out much larger positions that you normally would be able to do as you only need 5% (or whatever the limit the market maker set) of the actual value of the purchase value to create the contract. The downside of this is that it is very easy to lose money quickly if the trade goes the wrong way.