Cycling Tickers Management in RTD DB
Trading platforms often impose limitations on the number of tickers that can be refreshed simultaneously.
To manage large volumes of tickers, RTD DB cycles them. You can configure the number of tickers in a group and the required update time for each group (in milliseconds) in the application settings for each RTD or DDE server.
Example Settings
For instance, the settings for tos.rtd
are as follows:
<add key="tos.rtdMaxUpdateRows" value="100"/> <add key="tos.rtdMaxUpdateTime" value="20000"/>
And for thinkorswim desktop DDE:
<add key="tosMaxUpdateRows" value="100"/> <add key="tosMaxUpdateTime" value="20000"/>
There are no definitive "right" settings; experimentation is encouraged.
Monitor the platform's stability, the number of pending rows, and the quality of the data in the database. The settings above are generally effective for thinkorswim desktop.
Suggested Update Times
To estimate the time required to update a specified number of tickers, consider the following example:
If you plan to update 10,000 tickers (stock tickers or option codes) and RTD DB updates 100 tickers every 20 seconds, this results in 300 tickers per minute.
The calculation is as follows:
10,000 tickers / 300 tickers per minute = 33 minutes.
If your hardware and network are fast, you can increase the number of tickers to 200 and reduce the update time to 10 seconds. This adjustment would decrease the total time to approximately:
33 minutes / 2 / 2 ~ 8 minutes.
Keep in mind that cycled tickers require time to update, and this data is not real-time.
Data Organization
Consider separating your ticker tables to manage real-time data for a smaller number of active tickers and end-of-day data for others.