In July 2025 Národná banka Slovenska, the Slovak central bank, published a warning about the risks of trading CFDs. It notes that according to supervisory analyses somewhere between 74 % and 89 % of retail investor accounts end up losing money, and it reminds the public that marketing, distributing or selling CFDs to retail clients in or from Slovakia is prohibited unless every condition it has set is met.

Meanwhile, on the Czech and Slovak market, these instruments have moved out of specialist forex platforms and into mainstream apps. One tab holds shares, the next ETFs, the next bonds and the next CFDs. They look almost identical, yet for tax purposes they are four separate worlds.

One pattern recurs with some regularity. Providers advertising fee-free investing and zero commission are, in large part, CFD operators. Zero commission is possible precisely because nothing is actually being bought and the provider earns elsewhere. The client believes they own a share. What they hold is the provider's promise to pay out a difference one day.

What you actually hold

With a CFD you hold nothing. It is not a fund unit like an ETF, not a debt security like an ETC or an ETN, not a share and not a coin in a wallet. We covered the differences between the first three in the article on ETFs, ETCs and ETNs. A CFD sits outside that trio because it is not a security at all.

A contract for difference is a derivative. It is a MiFID II investment instrument whose value is derived from the price of an underlying, and its counterparty is the provider. That means two things at once. First, your position is a claim against one specific firm rather than an asset you could transfer elsewhere. Second, the entire tax logic you know from shares and funds simply does not apply to it.

The vocabulary deserves a note too. A firm that offers CFDs exclusively and deals on its own account is not an intermediary carrying your order to an exchange, even though it will usually be described as a broker. It carries your order nowhere. It is your counterparty, and that is an entirely different position to be in.

The chart belongs to the provider

The price you see in the app is not an exchange quote. It is the provider's own quote, and it always comes in two numbers: the price at which it will buy from you and the price at which it will sell to you.

Take a simple case. The provider quotes an instrument at 111 € bid and 113 € ask. You open a position on one hundred units, so 11 300 €. At that same moment your position is marked against the bid side of the quote, meaning 11 100 €. You are two hundred euros down before anything on the market has moved, and this is not a fee that appears anywhere on a statement.

The same applies to exit orders. Both a stop loss and a take profit trigger against the provider's quote, and once triggered they are generally executed as a market order at the next available price. Your chosen level is therefore not a guaranteed execution price. If the market gaps over a weekend or on a news release, the position closes beyond the level you set and you carry the difference. It works the other way too: the quote can touch your stop for a moment even when the reference exchange never looked like it did.

This is why it is worth knowing in what capacity the provider acts on your order. Most of the market deals on its own account and is the direct counterparty to the trade. Less common is a mixed capacity, which is how Revolut has operated on CFD orders since 15 June 2026, acting as agent on some orders and on its own account on others. Neither is misconduct, both are ordinary models. It is, however, information that belongs in the decision, because a counterparty earns on the opposite side of your position.

The fee for a night when the market is asleep

Holding a position overnight is charged for, even though you hold nothing. The provider carries exposure to the underlying and passes the cost of financing it on to the client. What matters is the base. Not what you paid into the account, but the full value of the open position.

The rate is usually derived from a reference interbank rate, to which the provider adds its own mark-up of a few percent a year. Many providers additionally charge a triple amount on one weekday to cover the weekend, when the market is closed and nothing trades at all.

In numbers: a position worth 10 000 € at an all-in rate of 7 % a year costs 700 € over that year, whether the price of the underlying rises, falls or does not move at all. The underlying would have to gain seven percent over the year just to leave you at break-even. A share you genuinely own costs you nothing to hold.

That is the main reason a CFD is not a long-term holding instrument. The problem arises when a client uses it as a substitute for buying a share and discovers the charges only in the year-end statement.

For tax purposes a CFD is a derivative transaction

Here is the core of it. Income earned by a non-business individual from CFD trading is income from derivative transactions under section 8(1)(k) of the Slovak Income Tax Act. The Slovak Financial Administration confirms the same classification for forex trades that bear the marks of a derivative transaction.

From that follows the answer to the most common question. The one-year holding test does not apply to CFDs. The exemption in section 9(1)(k) is drafted narrowly and covers income from the sale of securities under section 8(1)(e) admitted to trading on a regulated market. A CFD is not a security, so holding period has no bearing on its taxation. The 500 € relief does not help either, because under section 9(1)(i) it covers only income under section 8(1)(d) to (f).

The only exemption that reaches derivative transactions is in section 9(1)(l) and it is tied to long-term investment savings once the conditions of the Securities Act are met. An ordinary account with a CFD provider is not one.

The comparison is therefore blunt. The same gain on an ETF held for more than a year on a regulated market is fully exempt. The same gain on a CFD referencing that identical underlying is taxable in full, whether you held the position for eight minutes or eight years.

What goes into the return, and why it surprises people

For derivative transactions the type B return does not ask for profit or loss. It asks for income and expenses. The Financial Administration explained this on a worked case: if a winning trade meant income of 5 000 € against expenses of 4 000 €, and a losing trade income of 1 000 € against expenses of 1 400 €, the income column shows 6 000 € and the expense column 5 400 €. What is actually taxed is the 600 € difference.

Under section 8(11) the deductible expenses for derivative transactions are fees and similar payments connected with executing those transactions and expenses connected with settling them. Overnight holding charges belong here. If total expenses for the year exceed total income, the difference is disregarded. A CFD loss therefore does not carry forward and cannot be set against gains on shares, on crypto-assets or against salary.

The practical consequence people most often miss: the duty to file a return is assessed on total taxable income, not on profit. The threshold is half of the personal allowance, which for 2026 is 2 983.37 €. An active trader who finishes the year flat will cross it almost every time. Income in foreign currency is converted under section 31(2) of the Act.

A crypto CFD is not a crypto-asset under MiCA

This is the distinction that causes the most errors in practice. A contract for difference on bitcoin is a financial instrument under MiFID II, and the MiCA regulation does not apply to financial instruments. It is therefore not a crypto-asset and is not taxed under section 8(1)(t), but under letter (k) as a derivative transaction.

In practice that means a different line in the return, different expense rules and, above all, that the entire acquisition-cost methodology under section 25b used for crypto taxation does not apply here. You acquired nothing, so there is nothing to value. The two categories must also not be merged into one total, because a loss in one cannot be set against a gain in the other.

A worked example

A trader closed 120 positions during 2026. Positive settlements totalled 41 000 €. Negative settlements together with execution fees and overnight holding costs totalled 39 600 €. The tax base is 1 400 €.

Tax in the first progressive band, 19 %, comes to 266 €. The 16 % health insurance contribution, which the insurer assesses in the annual reconciliation, comes to 224 €. That is 490 € in total, or 35 % of the realised gain. The same 1 400 € gain on an ETF held for more than a year would have been taxed at zero. And had the year finished at minus 1 400 €, that figure would go nowhere at all.

Where the line runs between a defensible provider and a predatory one

The gap between providers is wider than the gap between individual instruments. Seven things can be checked in a few minutes.

A MiFID II licence in the European Union and an entry in the supervisory register. An appropriateness questionnaire before the first trade. Negative balance protection on the account, which is mandatory for providers subject to the intervention measures and means you cannot lose more than the account holds. Automatic close-out of positions when equity falls to 50 % of the initial requirement. A ban on bonuses and gifts for opening an account. A published overnight holding rate including the provider's mark-up, rather than a pointer to a schedule of charges that changes. And a standardised risk warning stating the specific percentage of losing accounts at that particular provider. If that percentage is missing from the communication, that is a signal in itself.

An unsupervised provider soliciting Slovak retail clients, by contrast, is breaching the rules by the offer itself. With such a firm there is no negative balance protection and no cover from the Investment Guarantee Fund, and the central bank's warning about losses exceeding the deposit is aimed precisely there.

What to record

The Income Tax Act does not prescribe a form of records, but it does require you to be able to substantiate your figures during an audit. For every closed position you need the opening and closing date, the instrument, the size, the opening and closing price, the settlement amount, execution fees, overnight holding costs and the currency.

Watch for one thing that only surfaces at filing time. Annual statements from CFD platforms usually show a net trading result, a single figure. The return asks for two columns, income and expenses, and those cannot be reconstructed backwards from a net result. Download the individual trade export on a rolling basis during the year, and do not assume it will still be available after the account is closed.

This article is a general overview, not individual tax advice, and it is neither investment nor product advice. If you are working through CFD platform statements, combining derivative transactions with securities and crypto disposals, or simply want to confirm which line each figure belongs on, kryptotax.sk will prepare your tax return end to end, including processing the source data and allocating income to the correct categories. Get in touch. 🇸🇰