Comma-Delimited Chart File Format #1.10
Dated: Feb 1, 2022 Version: 1.10
The Value Tech Comma Delimited Chart consists of three different
record types (race, horse, and exotic) which together comprise a chart
of racing information. These record types are provided in ONE file.
The first field of each line provides a record_type indicator which
indicates which record type the particular line corresponds to.
All Char fields, whether 1 char or more will be quoted fields. Embedded
quotes will be converted to % symbols in the exported field. The size
of char fields does NOT include the quotation marks.
The size of number fields represents the maximum size in characters we
expect to use for a particular field. Payoff fields, fractional times,
and beaten lengths will always contain two decimal digits
after the decimal point.
The cards will consist of the live thoroughbred races run at a given
track on a particular day. If a race is canceled, there will be no
horse or exotic records. The canceled_flag will be set to 1.
The horse records (for a given race) are currently in official_position
order and are followed by all the horses who were scratched. No
particular order, however, should be assumed. This order could change
at some point in the future.
The file naming conventions for each card are as follows:
YYYYMMDD_CHT_DAY_TTT.TXT
YYYYMMDD is the year month and day concatenated together.
DAY will be either DAY or EVE depending on whether the card is a day or
evening card. An evening card only occurs if a track runs two different
cards of racing on the SAME day. If a track runs only one card of
racing, and the racing happens to be in the evening, it will still have
a DAY designation.
TTT represents the track three letter track code. If the track code is
only two letters, the remaining position will contain an underscore.
As an example, June 21, 2001 at MTH will have a file name of
20010621_CHT_DAY_MTH.TXT
*** Preliminary Definitions ***
#1 – Race Type
Race_type contains one of the following general categories:
“MCLM”: Includes maiden claiming and optional maiden claiming.
“MSW”: Includes maiden special weights.
“CLM”: Includes claiming, optional claiming.
“ALW”: Includes allowance, starter allowance, and allowance optional claiming.
“HDCP”: Includes handicap, starter handicap, claiming handicap and optional claming handicap.
“STK”: Includes stakes, claiming stakes, and optional claiming stakes.
“MATCH”: Includes match races.
“TRAINING”: Includes training races.
#2 – Age
Age fields contain a single digit if they are for a specific age only. Such as 3 for 3-year-olds only.
If the race age restriction is an up restriction like 3 year olds and UP and UP will be appended. An example encoding is 3UP for 3 year old and up.
If the age restriction is for horses of specific years then those years will each be represent by one character. So if race is for 3, 4 and 5 year olds this field will contain 345.
#3 – Track Condition
Value Description
—– ———–
fst Fast
fr Frozen
gd Good
hy Heavy
my Muddy
sl Slow
std Standard
sly Sloppy
wf Wet Fast
wet Wet
dd Dead
esy Easy
fm Firm
gdtofm Good to Firm
gdtosf Good to Soft
hd Hard
sf Soft
yl Yielding
?? Unknown
#4 – Wager Type
The following contains a partial list of known wager types. New wager types are constantly being added by the tracks.
Code Description
—- ———–
0 Match Rival
1 Roulette
2 Two in the Money
3 Pick 3
4 Pick 4
5 Pick 5
6 Pick 6
7 Pick 7
8 Countdown
9 Pick 9
A Triactor
B Super Tri
C Classix
D Daily Double
E Exacta
F Perfecta
G Perfector
H Bingo Bet
I Instant Daily Double
J Exactor
K Win Four
L Place Pick All
M Consolation Pick 3
N Future Wager
O Omni
P Jockey Challenge
Q Quinella
R Triple
S Superfecta
T Trifecta
U Tri Super
V Odd or Even
W Twin Trifecta
X Place Pick 9
Y Super Bet
Z Consolation Double
Race record
Field | Type | Description |
---|---|---|
1 | string (1) | Record type: will be “R” for race records |
2 | string (4) | Version string (currently “1.10”) |
3 | string (3) | Track ID |
4 | date | Race date (format: “MM/dd/yy”) |
5 | number | Race number |
6 | string (1) | Day/Evening indicator: “D” = Day, “E” = Evening card |
7 | string (3) | Country ID: “USA” = United States, “CAN” = Canada |
8 | string (2) | Breed type: “TB” = Thoroughbred, “MX” = Mixed |
9 | string (150) | Race description/conditions |
10 | number | Official indicator: 0 = No, 1 = Yes |
11 | number | Canceled indicator: 0 = No, 1 = Yes |
12 | string (8) | Race type: “MCLM” = Maiden claiming or optional maiden claiming “MSW” = Maiden special weight “CLM” = Claiming or optional claiming “ALW” = Allowance, starter allowance, or allowance optional claiming “HDCP” = Handicap, starter handicap, claiming handicap or optional claiming handicap “STK” = Includes stakes, claiming stakes, and optional claiming stakes “MATCH” = Match race “TRAINING” = Training race |
13 | number | Optional claiming indicator: 0 = No, 1 = Yes |
14 | number | Starter allowance/handicap indicator: 0 = No, 1 = Yes |
15 | string (1) | Restrictions: “” = None “S” = Statebreds “R” = Restricted |
16 | string (3) | Age restrictions. A single number is restricted to runners of that specific age only. A value ending in “UP” indicates that age or older. Otherwise, restricted to the ages explicitly listed. |
17 | string (6) | Sex restrictions: “MALE” = Males only “FEMALE” = Females only “MIXED” = Not restricted |
18 | number | Graded Stakes level: 0 = Not graded or unknown 1 = Grade 1 2 = Grade 2 3 = Grade 3 |
19 | number | Race distance (in feet). E.g., 6 furlongs is 3960 feet |
20 | string (4) | Distance units. This will always be “Feet”. |
21 | number | Inner track indicator: 0 = No, 1 = Yes |
22 | number | Turf indicator: 0 = No, 1 = Yes |
23 | number | About distance indicator: 0 = No, 1 = Yes |
24 | number | Steeplechase: 0 = No, 1 = Yes |
25 | number | Hurdle indicator: 0 = No, 1 = Yes |
26 | number | Hunt indicator: 0 = No, 1 = Yes |
27 | number | Chute start indicator: 0 = No, 1 = Yes |
28 | number | Purse as displayed in the past performance lines (available – reverted amount) |
29 | number | Purse as displayed in program |
30 | number | Minimum claiming price (zero for non-claiming races) |
31 | number | Maximum claiming price (zero for non-claiming races) |
32 | string (6) | Track condition: “fst” = Fast “fr” = Frozen “gd” = Good “hy” = Heavy “my” = Muddy “sl” = Slow “std” = Standard “sly” = Sloppy “wf” = Wet Fast “wet” = Wet “dd” = Dead “esy” = Easy “fm” = Firm “gdtofm” = Good to Firm “gdtosf” = Good to Soft “hd” = Hard “sf” = Soft “yl” = Yielding “??” = Unknown |
33 | string | Reserved |
34 | number | Fraction 1 (in seconds) |
35 | number | Fraction 2 (in seconds) |
36 | number | Fraction 3 (in seconds) |
37 | number | Fraction 4 (in seconds) |
38 | number | Fraction 5 (in seconds) |
39 | number | Final time (in seconds) |
40 | string | Reserved |
41 | string | Reserved |
42 | string | Reserved |
43 | string | Reserved |
44 | string | Reserved |
45 | string | Reserved |
46 | number | Course type: 0 = Dirt 1 = Turf 2 = Inner Dirt 3 = Inner Turf 5 = Outer Turf 7 = Downhill Turf 8 = All Weather 33 = Hurdle 65 = Steeplechase 97 = Jumps (or, other) |
47 | number | Reserved |
48 | number | Reserved |
49 | number | Reserved |
50 | number | Reserved |
51 | number | Reserved |
Horse record
Field | Type | Description |
---|---|---|
1 | string (1) | Record type: will be “H” for exotic records |
2 | string (3) | Track ID |
3 | date | Race date (format: “MM/dd/yy”) |
4 | number | Race number |
5 | string (1) | Day/Evening indicator: “D” = Day, “E” = Evening card |
6 | string (3) | Country ID: “USA” = United States, “CAN” = Canada |
7 | string (2) | Breed type: “TB” = Thoroughbred, “MX” = Mixed |
8 | string (40) | Horse’s name |
9 | string (3) | Program number (blank if scratched) |
10 | number | Scratch indicator: 0 = No, 1 = Yes |
11 | number | Post position (zero if scratched) |
12 | number | Non-betting indicator: 0 = No, 1 = Yes |
13 | string (1) | Entry letter (e.g., “A”, “B”, “C”, etc.). Blank if not part of an entry. |
14 | number | Start position |
15 | number | Position 1 |
16 | number | Position 2 |
17 | number | Position 3 |
18 | number | Position 4 |
19 | number | Position 5 |
20 | number | Finish Position |
21 | number | Official Finish |
22 | number | Dead heat indicator: 0 = No, 1 = Yes |
23 | number | Disqualified indicator: 0 = No, 1 = Yes |
24 | number | Beaten lengths 1 (if leading, the lengths ahead, else the lengths behind leader) |
25 | number | Beaten lengths 2 (if leading, the lengths ahead, else the lengths behind leader) |
26 | number | Beaten lengths 3 (if leading, the lengths ahead, else the lengths behind leader) |
27 | number | Beaten lengths 4 (if leading, the lengths ahead, else the lengths behind leader) |
28 | number | Beaten lengths 5 (if leading, the lengths ahead, else the lengths behind leader) |
29 | number | Finish Beaten lengths (if leading, the lengths ahead, else the lengths behind leader) |
30 | number | Tote odds |
31 | string (8) | Morning line odds (formatted string) |
32 | number | Morning line odds (decimal) |
33 | number | Favorite indicator: 0 = No, 1 = Yes |
34 | number | Win mutuel |
35 | number | Place mutuel |
36 | number | Show mutuel |
37 | string | Reserved |
38 | string | Reserved |
39 | string | Reserved |
40 | string | Reserved |
41 | string | Reserved |
42 | string | Reserved |
43 | string | Reserved |
44 | string | Reserved |
45 | string | Reserved |
46 | string | Reserved |
47 | number | Reserved |
48 | number | Reserved |
49 | number | Reserved |
50 | number | Reserved |
51 | number | Reserved |
52 | number | Reserved |
53 | number | Reserved |
54 | number | Reserved |
55 | number | Reserved |
56 | number | Reserved |
Exotic Result record
Field | Type | Description |
---|---|---|
1 | string (1) | Record type: will be “X” for exotic records |
2 | string (3) | Track ID |
3 | date | Race date (format: “MM/dd/yy”) |
4 | number | Race number |
5 | string (1) | Day/Evening indicator: “D” = Day, “E” = Evening card |
6 | string (3) | Country ID: “USA” = United States, “CAN” = Canada |
7 | string (2) | Wager type: see below for list of possible values NOTE: the possible values for this field is constantly changing as tracks invent new wagering options. |
8 | string (30) | Winning combination(s) NOTE: May contain the word “ALL” as part of the wager numbers, as in “1-3-ALL” if all positions were paid in the third leg of a pick 3 or the show position for a triple. May also contain ‘/’ characters when position is shared by more than one horse. For example in a Pick 3 where the middle races pays to two different numbers you might see “3-5/7-4”. |
9 | number | Number of correct combinations. E.g., for Pick 6s, a number of 5 here would indicate that this result was for those hitting 5 of 6 races. |
10 | number | Payoff amount |
11 | number | Carryover amount |
12 | number | Base wager amount (e.g., 2.00 for a $2 bet, 0.50 for a $0.50 bet, etc.). The payoff amount listed above is based on this base wager value. |