Here is a description of the fields in the data
If you are interested in how the various ML alogorithms work then Josh
Starmer has produced some excellent videos on Youtube. Simply go to Youtube
and in the search bar type in StatQuest Logistic Regression
-----------------------------------------
MODEL ABBREVIATIONS
GBM - Gradient Boosting Machine (classification)
LightGBM - LightGBM (classification)
NeuralNet - Neural Network (classification)
RandForest - Random Forest (classification)
RForestReg - Random Forest (regression)
HuberReg - Huber Regression (regression)
KNN - K Nearest Neighbor (classification)
AdaB - AdaBoost (classification)
LogRegr - Logistic Regression
NBay - Naive Bayes (classification)
GBMreg - Gradient Boosting Regression
LogGAM - Logistic Generative Model (classification)
LinGAM - Linear Generative Model (Regression)
XGBoost - Extreme Gradient Boosting (classification)
XGBReg - Extreme Gradient Boosting Regression
Voting - Combined ensemble voting predictions from your choice of models
histGBM - GBM classifier that bins feature values, faster than GBM
RidgeReg - Ridge Regression (regression)
TTDrift - Train Test Drift measure of TT distribution difference
-----------------------------------------
INPUT FEATURES
*** required with same name or other name if user supplying own data
raceId - Number identifying individal races ***
trackTimeDate - Useful for those that want to merge in own data
raceType - type of race eg Handicap
RTypeLTO - race type last time out
raceSex - Male only = 1 mixed = 2 female only = 3
track - track
year - year of race
month - month of year
week - week of year
raceClass - race class
raceDist - race distance
surface - Race surface eg turf
going - race going
raceValue - race win purse / 1000
draw - stall draw
drawValue - Value of draw at track and dist
runners - Number of runners in race
horse - horse name
weightDiff - top weight minus horse weight
OR - Official Rating
bestORDiff - Best win OR (turf/AW) minus todays OR
ORDiff - Difference between top OR in race
nat - horse nationality
avgBeat - Lifetime horses in front / horses behind
goingDiff - 1 means yes 0 means no from last race
goodRunGoing - On todays going previous good runs / runs
classMove - race class minus last race class
weightDiffLto - todays weight minus weight LTO
runnersPrev - number of runners in previous race
runnersRatio - runners in previous race / runners today
hgToday - wearing headgear in current race 1 = yes 0 = no
chgHg - change of headgear from last race 1 = yes 0 = no
hgFirst - First time headgear 1 = yes 0 = no
hgChanges - Count of headgear changes from all prev' runs
weight - horse weight / topweight
pdsBtnLto - how far beaten in last race in pounds
daysLto - days since last run
daySinceGR - days since last good run
prevLto - days between last run and previous run
age - horse age
prevRaces - Number of previous races for code ie Flat
exposure - Number of previous races / race average
hasPlacedTrack - has placed form at the track
trainer - trainer name
trSwitches - horse lifetime trainer switches
TRSR - Trainer strike rate at time of race (min 50 runs)
TRinrace - trainer strike rate (SR) / top TRSR in race
TRTrackPCent - trainer track wins / trainer track runs
TRrolling - rolling win & place SR, sample based on trainer runs
TRageRatio - SR% with this horse age / TR overall SR%
TRPrizeRatio - Trainer average win prize money / race prize
JockSR - Jockey SR at time of race (min 50 runs)
avgJockSR - Average Jock SR derived from all previous runs
avgJockRatio - ratio of this jock SR to all previous average SRs
jockRatio - this jock strike rate / previous jock strike rate
Jockinrace - Jock strike rate / top Jocksr in race
JockRolling - rolling win and place SR, roll based on jockey runs
SireSR - Sire strike rate at time of race
Sireinrace - sireSR / top sireSR in race
SireDistAge - % of placed runs at distance by sire for 2yo, 3yo+
SireSurf - placed runs on surface turf fibre poly / surf runs
DamSireSR - Dam sire strike rate at time of race
DamSireSurf - placed runs on surface turf fibre poly / surf runs
Sex - sex of horse eg g c f m
SexMF - sex M male F female
beatLTO1 - LTO runner count minus finPos / runner count
beatLTO2 - as above for second last run
beatLTO3 - as above for third last run
entries - number of 5 days entries for horse
jockSame - 1 if same jock to previous run 0 if not
jockMinus - 1 if jock SR% is less than last run jockey
distUp - 1 if race dist greater than last race dist 0 if not
distSame - 1 if same race dist to previous run 0 if not
goodRunRate - ratio of good runs to runs
preFinPos - All previous fin positions / Previous opponents
preFinPos3 - Last 3 fin positions / last 3 oppponents
prevBFSP - BFSP in last race
logPrevBF - natural log of chance according to last BFSP
BFSP - Betfair SP in this race ***
finClose - SeeHelp 1 if horse won or < rDist/10 lgths of winner
can be used as alternative to finPos as target to give more balanced data
do not use as an input feature
priceDrift - 1 if pre race average betfair price < BFSP
priceDriftRatio - BFSP / average betfair price
paceDiff - pace figure from last race minus pace from pelutimate
paceFig - RunStyle from last flat race 0 heldUp to 5.6 madeAll
avgRacePace - average race pace figure for this race
avgClassPace - average winning pace fig for handicap class
avgTrackWinPace - average track winn pace fig for handicaps
horseSize - average = 1 bigger horse > 1 smaller < 1
IPDropLTO - 1 if horse dropped below its BFSP in running LTO
IPDropPercent - % of horse IP Min < BFSP all prev races
dropLast3Avg - average of last 3 runs in running drop %
IPDrop20 - Alt' target (BFSP minus IPMin) / BFSP = 1 if >= 0.2
IPDrop40 - Alt' target (BFSP minus IPMin) / BFSP = 1 if >= 0.4
IPDrop60 - Alt' target (BFSP minus IPMin) / BFSP = 1 if >= 0.6
lgthsBtn - lengths behind winner or zero if won this race
pdsBtn - pounds behind winner,alternative target feature
finPosFull - full numeric finishing position
placed - 1 means horse placed,alternative target feature
IPReturn - finPos minus (1/BFSP) alternative target feat
finPos - 1 for winner 0 for loser ***
-----------------------------
MISSING DATA
Some fields may have missing rows eg daysLto if a horse has never run before
This is not unusual in Machine Learning problems. MySportsAI replaces missing
values or NaN's as they are called with the median for that column and that median is
applied going forward to test data and daily decs data. You can specify other
replacement methods eg mean if you wish.
-----------------------------
USING YOU OWN DEC'S
If you wish to run your model against your own daily runner declaration file you
can do this by
1. loading your saved model in MySportsAI
2. Click Run Model
3. For the supplied test file select your dec's file
4. Save test results
<a href = "
Log In">More useful short videos</a>