Hello,
I just realized that after I perform a backtest in the FX market (let's say EUR/USD), in the transactions section the prices are always with just 3 decimals.
This cause a total misaccounting of P&L because the program seems rounding to the next near 0.0010 point the filled price (i.e. a filled buy at 1.1744 become 1.1740), and this is uncorrect.
Any way to let correctly account the fair FX prices ?
Thanks and best regards.
Hi Corrado, this is a known bug. It is a limitation of the third-party library (zipline) we use on the backtest platform. Specifically this is related to how the data points are stored. The live trading part (where we use in-house developed libraries) does not have this issue. Unfortunately, there is no straightforward way to fix it right away. But the good news is we will be replacing the third party library soon on backtest too, which will solve this issue automatically.
Thanks so much for your fast and transparent answer.
That bug is probably (certainly) the reason for which the following strategy generates astonishing results (as you can easily try):
Create Strategy – > Select Strategy Template –> Bollinger Band Strategy (Forex)
Am I wrong ?
Best regards,
Corrado
This is definitey one of the reasons. There are others - the simulation of the underlying library(zipline) is more suitable for equities/ exchange products, characterized by low serial auto-correlation and a low trading cost to volatility ratio per unit time. FX from LTP platforms has different behaviours. You can observe the strategy you referred to is highly sensitive to trading cost assumption, quickly changing from 'astonishing' to dismal. Again, this will be fixed once we replace the library.