To address the issue of historical data recalculation for your custom USD index symbol, consider implementing an automatic periodic symbol reload in your code. This can help force a recalculation at regular intervals without manual intervention.
It is strange that MT5 has this synthetic instrument formula feature, that is fantastic to create new custom symbols based on existing symbols, but does not address this issue of automatic recalculation on backfilling prices.
Is there a function call to reload a certain custom symbol? Like I can implement in a script to reload all the 8 currencies custom symbols that I have created.
I have checked and found the following function to check whether data of a selected symbol in the terminal are synchronized with data on the trade server:
bool SymbolIsSynchronized( string name, // symbol name );
Does it work on custom symbol? I couldnt find any function to reload. It mentioned an algorithm on how to access historical data, this is quite an involved piece of codes. Is this what you meant by reload?

- www.mql5.com

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
I have written a custom symbol to calculate USD index based on all the crosses against USD using the synthetic instrument formula.
If I start my PC after a period of time, I find a gap in the index. The custom symbol does not seem to recalculate on the historical prices for the backfill period. I have to work around by changing the formula to force a reload of the custom symbol (and change it back to the original formula). This is very frustrating.
Could anyone please tell me a way to fix this?