Research and Performance Testing · CFDs Trading Guide

A price signal becomes a trading result only after execution and costs. Build those mechanics into the test instead of deducting an arbitrary fee at the end.

Choose one accounting approach

Using historical executable fills captures the spread in the price result. Using midpoint data requires a model for crossing the spread. Do not combine the two and charge twice. Add explicit commission and other cash entries separately. Keep the accounting transparent enough that one sample trade can be reproduced by hand.

Model the actual order rules

A market order should use an available price after the signal. A limit order requires a defensible fill assumption, not simply a bar touching the level. If a bar contains both stop and target, the sequence may be unknown. Use finer data or a conservative rule rather than always awarding the profitable outcome.

Stress costs and duration

Suppose 100 simulated trades earn $2,000 before explicit friction. Spread and slippage assumptions consume $900, commissions $400 and financing $300, leaving $400. Raising the first allowance by 50% reduces the result to a $50 loss. A strategy with a narrow cost margin may not survive small estimation errors.

Include the account constraints

Model margin, overlapping positions and unavailable capital. A test that opens every signal regardless of cash requirements describes an impossible account. Include borrow restrictions where relevant and state any missing historical conditions. Report gross and net results together so a reader can see whether the apparent advantage comes from a signal or optimistic implementation.

Try it yourself

A test reports $3,500 gross profit. Costs are $1,200 for execution, $600 commission and $500 funding. What is net profit, and what happens if execution costs double?

Show the worked answer

Net profit is $1,200. Doubling execution costs adds $1,200 and reduces the result to zero before any omitted expenses or taxes.

Further reading

Educational material, not a recommendation to trade. Numerical examples are hypothetical. CFDs involve leverage and substantial risk of loss. Availability, costs and protections depend on the contract, legal entity, jurisdiction and client classification.

Continue learning