Max Tick Data Retrieval with API

I had a question regarding Tick data that I was hoping one of you had an answer for: Please advise if you have a solution.

What response should we get from the server if we are fetching tick data and we reach the max allowed to receive with a basic live account (and have not ordered the Extended tick data subscription)?
Should we get an empty array or do we automatically get the p-time/penalty?

I am trying to retrieve the max data allowed with my live account without getting a time penalty. On my end I have noticed the Time penalty can be 1 hour+ at times and that is not fun to have to wait through. In the API notes, more detail needs to be stated about max data and true time penalties and how to avoid them.

When the you’ve reached the end of your chart history, you’ll receive a chart message with this shape:

{
    id: 427891, //this is the realtimeId associated with the chart subscription
    eoh: true
}

If you’ve received this message from your websocket, (unless you just keep spamming subscription requests), there is no reason you should receive a time penalty. Using a websocket you only need to subscribe to the chart data once. When all the data is loaded you’ll get the above object in the charts field of the response (as one of the array items).

Before you make a new chart request, you should unsubscribe from the current chart subscription by calling the md/cancelChart endpoint with the realtimeId of the associated subscription.

You can use the timestamp from the oldest tick to make the next request. You can make a huge request (like 2017-2021) but it will be limited to 4096 bar or tick results. Whatever the oldest tick or bar’s timestamp is, you can make your next request starting from there and count back until you hit your target date. Make sure to sort the ticks or bars by timestamp!

1 Like