Login Page - Create Account

Support Board


Date/Time: Sat, 04 May 2024 01:05:10 +0000



Intraday Record format after the SCDate time Changes

View Count: 540

[2021-04-12 13:11:12]
User255315 - Posts: 127
Hi SC,
Previously i had asked you about extracting the scid file data into another environment, which i was doing according to the Intraday data file format documentation page.
Intraday Data File Format

However, after the SCDatetime change, my extraction code is not able to decrypt scid correctly. may i know what are the sizes of the following:
1. Intraday record header
2. Intraday record size
[2021-04-13 05:23:53]
Sierra_Chart Engineering - Posts: 14207
This is all documented on the page you linked to. The actual data structures are shown there. The size of those structures has not changed. SCDateTime contains a 64-bit integer. Refer to:
Intraday Data File Format: DateTime
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, use the Teton service:
Sierra Chart Teton Futures Order Routing
[2021-04-17 16:17:45]
User681150 - Posts: 62
when i unpack the record, it shows the datetime as 1.891136406826626e-308

the help doc says this is the 'This is a 64-bit integer. It represents the number of microseconds since the SCDateTime epoch of December 30, 1899."

in order to convert microseconds to a date&time, it needs to be 16 digits long

but how do i convert this value into a 16 digit microsecond equivalent?

i am using dataRow = struct.unpack('d4f4I', record), is the formatting ('d4fdI') wrong?

thanks for any help getting this into a 16 digit microsecond
[2021-04-17 17:35:25]
User907968 - Posts: 802
is the formatting ('d4fdI') wrong?

Yes, instead use 'q4f4I' which means: 'long long (aka 64-bit int), 4 floats, 4 unsigned ints', as per s_IntradayRecord.
[2021-04-18 02:16:43]
Sierra Chart Engineering - Posts: 104368
You need to read it as a 64-bit integer. And then use the SCDateTime::SetInternalDateTime to set it into a SCDateTime object.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing

To post a message in this thread, you need to log in with your Sierra Chart account:

Login

Login Page - Create Account