Back the Newcomer in Horse Racing

Published on April 11, 2020, 6:03 a.m. - comment 3 Comments - Sports: Horse Racing

I came across this strategy when reverse engineering Betfair starting price bets. It came to my attention that certain horses had very similar patterns in terms of starting price bets. After further investigation I discovered that these were horses that have not participated in any race previously. With this I defined a very simple betting strategy for a backtest: Back bet on horses making their debut using the Betfair Starting Price (BSP).

Defining the Betting Strategy

The Strategy is easily defined: It is a applied to UK Horse Races available on the Betfair Betting Exchange. A back bet is placed on horses that have not appeared in any races before, i.e. they are newcomers. Bets are placed on the win market.

How to Know When a Horse is Racing for the First Time?

There are multiple publisher with horse racing details such as or When browsing through their pages you can easily identify which horse has not participated in previous races and hence is racing for the first time. On you will find for instance that some horses do not have a "last run" information as shown in the following screenshot:

Horse racing for the first time

In this example the selection "Leopardo" does not have a last run entry. This is an example for a horse that is running for the first time and won, the BSP for this selection was 18.23.

Of course it would be possible to manually go through the races on every day, record the newcomers and manually place a back bet on the selection. However, this is very time consuming and lots of work and the question is can we do better? For sure it is possible to code a script - a simple crawler- that automatically scrapes the newcomer from a website like You could then just go through the list and place the bets manually which is less effort.

For full automation of this strategy you could probably rely on the "selectionId" field that is used by the Betfair API. It seems that this field is tied to a specific horse which means that a horse with a new selectionId (a selectionId that was not seen previously) is really a newcomer. This is especially helpful for automation and creation of a betting bot since you can reduce external dependencies (no need to parse any other website) by simply maintaining an index of selectionIds.

Collecting Relevant Data for the Backtest

This betting strategy was backtested and evaluated using Betfair Starting Price (BSP). Files in csv format with Betfair price data are available for free on A simple Python script can be used to automatically download the csv files and feed the data into a simple SQL-like database.

Backtesting this Strategy with a SQL Query

A simple SQL database query was used to test this strategy. Within a subquery distinct selection_ids are obtained. On top of this subquery, profits are calculated using the bsp odds. A commission of 2% is taken into account at the selection level.

    CASE WHEN win_lose THEN (bsp-1)*(1-0.02) ELSE -1 END as profit
    SELECT DISTINCT ON (selection_id) *
    FROM data
    WHERE market = 'pricesukwin'
    ORDER BY selection_id, event_dt
) as sq
WHERE event_dt >= '2014-01-01 00:00:00'
ORDER BY event_dt ASC

I was quite baffled by the results of the backtest given it is such a simple betting strategy:

Given the positive returns of the betting strategy over the past couple of years, it seems that newcomers in horse races are underestimated and the edge could be exploited with an automated betting bot.

Create a Betting Bot to Automatically Back Newcomers

This strategy can be easily deployed as a simple Python script using the Betfair betting exchange API. The betting bot works the following way: It fetches horse races from the Betfair API. A market filter is applied to select UK win markets only with a market start time within the next couple of minutes. For each market, all the runners are checked against a file or database of previous runners (the index with selectionIds). If the runner is not included in the database, a BSP bet is placed and if the bet placement was successful, the selection is added to the database with selectionIds. The script can be deployed on a VPS using cron to automatically trigger it every couple of minutes.

Would you like to automatically apply this strategy on a betting market? Please do not hesitate to contact us and we should be able to figure out a solution that works for you.

What are your thoughts on this strategy? Please let us know in the comments below!

Do you like our content? Please share with your friends!

Share on Facebook Share on Twitter


Sept. 8, 2020, 11:14 p.m.

Is there a simple way of finbding out who the newcomers are on a daily basis and does the odds of a newcomer have any bearing

Sept. 9, 2020, 2:42 p.m.

Thanks a lot for your comment, Rabs.

Unfortunately, I am not aware of any service that aggregates the newcomers on a daily basis. Stats sites such as or have that information but you would need to manually go through the events I guess. If you know some programming, you could import the selection IDs from historical data into a database, and then check all the runners of upcoming races against the database (somehow similar to the backtest). When I find some time I might add such script if you are interested.

Based on the BSP placed bets it looks like others apply the strategy along with odds-based filters so might be worth looking into it.

Oct. 19, 2020, 5:19 p.m.

There is a service you can use to aggregate newcomers on a daily basis for UK&Irish races:
(costs around 15 british pounds per month)

It totally looks like a 90s html-site but actually it is really useful if you want to build strategies and catch your daily qualifiers as an excel-file. Also for gathering historical data to backtest strategies with python it is worth it. the dataset the site is build on contains all UK&Irish horse race results since 1997 with all Betfair SPs since 2008.

check it out, I use it for a while now and would totally recommend it despite the oldschool user interface;-)

Please log in to leave a comment.

Similar Strategies
Any Questions or Suggestions?

If you would like to learn more about this strategy, please do not hesitate to contact us.

Contact Us!