Execute My Football Strategy

This week I made remote support through google hangouts, I would not suggest using this service, as there is no option to take control on hosting computer so there is no quick way to explain what to do.

Then we tried TeamViewer, it was support for user out of Europe because he called football the soccer.  He mentioned later that he is a software developer as well.

I had made quite a lot of remote support sessions for my professional subscribers so just by one look I can estimate whether he/she have learned about bfexplorer user experiences, how to use bfexplorer user interface (UI), menus, toolbars, views, and so on.

You could ask what is that one look on bfexplorer UI?

Well, when you install bfexplorer app there are no Favourite Events added, and that is clear, people prefer to bet on betfair on different types on bet events.

Some bets/trades only on horse racing markets, others on more different bet event types like: football and tennis.

So just that one look, whether the user had already added his/her favourite events, tells all.

The entire user experience (UX) of bfexplorer UI is implemented to the following application/betfair domain objects:

Bet event type

Bet event





When you are on betfair web page, you can see five of these domain objects, of course there are no bots on betfair web page. In bfexplorer app we have got bots as well, and where we can find them?

Of course, we can find them in a dedicated view/window, called: My Orders/Bots to Execute. When you run bfexplorer for the first time, this view is empty, well of course because you did not add any bot, so just click on Add button in the view toolbar, select your bot in the list on the right, setup your bot parameters, type your bot name and click on Save button.

Your first bot appears in the list that is great but what now? Even when you select this bot, the Execute button is still disabled, why?

Because as said before the UX is based on application domain objects (shortly objects), and on these objects we can execute some actions. So what are those actions for Bot?

This is very simple you can find them in the object view toolbar, so:


Add, or Clone





Use Ladder (read description to this action)

Now look at on another views bfexplorer UI offers, you can find there the same buttons, I mean toolbar icons like Add, Update, Delete, that is good UX, because just by learning this actions, you know that similar can be done to other objects.

In the Event Browser view we can see big Add icons, what that could mean, well we know already that it is “add” button (what else big plus could mean; well it is definitely not hospital sign, right)? Just by clicking on it, the dialog named “My Bet Event” appears.

Ok, so I like to bet on football matches, strange that European company (betfair) names football soccer, so in Event type I leave Soccer, and in Market types I select: MATCH_ODDS (hint: type m, to go to the first occurrence of the market type starting with M), in the Name I type Football, and clicking on Save button, my favorite event appears in the Navigation list under “My Favourite Events”, and in the Event Browser all open markets for MATCH_ODDS are listed as well.

Another hint, if you would not select Market type, then in the Event Browser it would be listed a lot of different markets, not only Match Odds. In the Events group of the Navigator view there are: Upcoming events, Upcoming in-play events, In-play now, and here I implemented that for exact event type bfexplorer shows main market type, so for instance for Football it is MATCH_ODDS, but for instance for Horse Racing it is WIN market. That is called a good UX.

So I have added my favourite event: Football, but still when clicking on Bots to Execute view on my bot, the Execute button is still disabled, what am I doing wrong?

The question, how could ever bfexplorer know on what market/s we want to execute the bot? Well yes we must say it, so double clicking in Event Browser on some market, or just by clicking on a market, selecting it, in the Event Browser toolbar Open button is active, so clicking on Open button the market is open in Bet Event, and the market prices are updated.

Suddenly, in Bots to Execute view the Execute button is active/enabled, so what does have happened?

Why now bfexplorer allows executing my bot? Well, from the context of your application, so open market, added bot, the app just activates allowed actions/tasks on application domain objects.

Hint: the same activation is done in the Event Browser when you select market/s, the Execute in Order / Bot Executor button is active, so allows executing a bot in automated mode in the Bot Executor tool.

That is really short description of bfexplorer UI, and explanation of UX approach.


And now I can continue to my short video demonstration, showing how to execute football strategy which involves evaluation of more bot settings (bots) on one market.

What you should be aware when monitoring a lot of markets?

There is physical limitation of how much data you can load from Internet, that depends on your network, and of course on betfair limitations to using betfair api resources:

Common sense says that you should use only so much data from betfair you really needs. In this case the user repeated what I showed him during support session, so I setup the action bot, and the Football Bot and show him how to use Bot Executor.

He later added another four Football Bots, and of course he repeated without thinking what I showed him.

What he make wrong?

A common sense: he needs to execute on one football match his five Football Bots (those five bots setup/covers all criteria he needs to execute his action bot on the particular under/over market).

So what he needs to wisely execute his strategy, so really monitor market data just for one match odds market per strategy, is to use the bot called: Execute Bots

In my video I show another feature: Bfexplorer Console, as when testing this football strategy I need to set correct match time so without wait till the match progress I was immediately able to test the strategy on selected match/market.

The script just automated what I would need to do manually, so I just change MatchTime parameter for Start/Stop criteria.

Now to execute all my Football Bots, I used “Execute Bots” and my bot setting is named: “Execute my football strategy”.

One of Football Bots triggered its action bot at set match time, and as the score was 1 – 0, it was bot named: “Football Bot - Back Under 2.5”

As the bot finished his action, it ended its execution, but remaining bots were still running. At 51 minute of the match all remaining Football Bots triggered StopCriteria, and so finished its execution.

This is very important fact, to finish bot execution, mainly when you run your bots fully automatically by Bot Executor, because Bot Executor keeps monitoring the market till any bot is still active on such market, when there is no bot running, the Bot Excutor automatically stops the market monitoring.

In this football strategy the action bot is executed on Under/Over associated market, and even when you strategy is fully executed by Bot Executor, these associated markets are open to Bet Event view, so you must set reasonable update interval for passing markets (in Settings dialog).

From my short video we can see another problem which can occur mainly on markets with small liquidity on them.

Even when “Place Bet” bot was set to take what was offered on back, as the market on which bot placed its bet was at in-play, it was applied 8 seconds time delay to place bet, so bet was not matched. The “Place Bet” bot kept trying to update its price/odds. We should be aware of this fact and depending on markets we bet on, we can set PriceImprovement parameter to improve the chance of placing matched bet.

Comments ( 2 )

  • Mir.
    4.2.2019 17:38:53

    Hi Stefan, it is interesting. Bot Executor seems very useful.
    But I am interested in a Football Bot. And its Start/Stop Criteria.

    I see that from a "managing" Match Odds markets  is very easy place bet on associated markets, for example at specific time and at specific score. It is good for one time action.

    Example: Footbal Bots via a Place bet bots place 5 bets:
    Correct score - 2×
    Over/Under 2.5 Goals - 1×
    Over/Under 1.5 Goals - 1×
    Match Odds - 1×

    Is there any simple solution through Football Bot (Start/Stop Criteria) how to orchestrate all affected markets, its market profit/loss!, time, actual score etc.

    Is it at all possible?
    And what about Market Data Request Limits in this cases with dozens footbal matches at the same time (saving use)?

  • Stefan
    4.2.2019 21:08:50

    First you need to setup your action bots, Place Bet bots, to place your bet on exact market selections, so 4 action bots, simply you need to declare what bets and on what market selections you want toplace your bets automatically.

    You need to create 4 Football bot settings, setting your Start or Stop Criteria, MarketName and BotName (your action bot).

    You can use Clone bot (click on popup menu item for Add a new bot), and change your MarketName and BotName for rest of Football Bots, if your Start or Stop Criteria are the same for all your football bots.

    And finally you can use “Execute Bots” bot to create your strategy bot executor, adding all 4 football bots to BotNames. This way you have got one bot you can execute with Bot Executor.

    Yes, as your strategy requires to place bets/execute action bots on three additional associated markets: Correct score, Over/Under 2.5 Goals, Over/Under 1.5 Goals the Bot Executor will open these markets for when Start Criteria are met, but all bfexplorer bots have the parameter: StopMarketMonitoring.

    When you set StopMarketMonitoring parameter to True (checked) then when bot finishes its execution, and no other bot is running on the market, the market monitoring is stopped for such market.

    Bot Executor does so automatically as well, even when you did not set the parameter StopMarketMonitoring, simply bot executor will check whether there is still some bot activate on the market, and when no bot is active/running, the Bot Executor stops market monitoring.

    You say that on Correct Score market you want to place two bets, then of course you need to create/setup 2 Place Bet bots, and create executor bot for them, so as mentioned: “Execute Bots” bot setting, and this bot add as action bot to football bot BotName parameter.

    Of course if you are familiar with bot programming, you can create bot trigger script to orchestrate your place bet bots, this way you will setup only your action bots, and the rest is simplified by bot trigger code, so this way you will need 5 bot settings.

    The strategy orchestration just by setting up bfexplorer bots requires 9 bot settings.