jcl: that sounds like it would help. My initial idea would have been to calculate the pip-values for each pair and each day (daily is sufficient for this) and store it in a csv-file or similar. I suppose its possible to write a Zorro script to update said files. The pip-values could then be adjusted by looking it up everytime the strategy detects a new date.

With eur/usd and an EUR-based account its easy, because you only need the eur/usd rate for calculation. But with i.e. usd/chf its more complicated, you need the eur/chf rate to calculate the pip-values. Thats the reason i would have suggested pre-generated files, but maybe you have a better idea?

There is a more wholistic solution that is used by other backtesting software, where each asset is set up with information in which currency it is quoted. For example, if you have a portfolio of stocks of Citi, BP and BMW, you have postions as C/USD, BP/GBP and BMW/EUR, the pnl is calculated in the quote currency, and in a second step converted to the account currency according to fx rates. Likewise with USD/CHF it is represented as a position of asset USD quoted in currency CHF (= the usd/chf rate). The pnl in CHF is then converted to the account currency of eur with the eur/chf rate. But i suppose you need a full blowen symbol manager and a major redesign for this and im not sure if this is compatible with the light-weight spirit of zorro.


Not to belabour the point from the previous post, but the screenshot i posted is a microlot demoaccount, and pip-cost is displayed as 0.08 in the software - while clearly in the report 0.077 is used. That seems like they are infact rounding the 0.077 (and possibly even more digits) to 2 digits for display purposes. And i would be surprised if this value wouldnt be adapted on at least a daily basis, and the day-to-day changes are behind the first 2 digits, so they are not displayed, while still used for pnl calculation. But i can ask a fxcm rep next week for details.

http://i.imgur.com/ew3Cp4R.jpg