User Comments

  • Stefan
    27.4.2016 15:20:32

    Have a look on getMyPrice function, and how the price (odds) is calculated.

  • Stefan
    27.4.2016 14:39:34

    Betfair once again removed my Betfair BOT SDK from their developers web site:

    I do not think this approach is in betfair interest as betfair business model works on commission fees on exchanges.

    More customers, means more commission fees for betfair. Bot developers make significant turnover on betfair markets, so leaving those developers without easy to use betfair bot sdk libraries like mine is contra productive from my point of view.

    I have got a feeling, that removing my BOT SDK from developers web site is just an opinion of one person in betfair, Neil Thomas. He is welcome on bfexplorer forum, to say why it is so. His opinion as well as any links to other betfair vendor products will never be deleted from this forum.

  • Stefan
    27.4.2016 12:08:34

    Yes, I also noticed issues with betfair tennis live score api as well, it happens with any service on the Internet, a degradation in service quality sometimes.

    Betfair offers web live score api, and on that service are available ITF matches as well. does not offer easy way to get data from.

    Basically all such services have one or maybe two sources of tennis data. If you have got some other web site for tennis information, then list them here and I will have a look on them.


  • Stefan
    27.4.2016 9:32:54

    Your bot trigger is here: ExecuteAtPricePercentagesBotTrigger

    The source code shows what parameters could be used and how. If you will need bot trigger assembly built from this source code, the let me know.

  • Stefan
    26.4.2016 13:35:14

    The source code to all bot triggers can be found here:

    Soon I will add ExecuteAtPricePercentagesBotTrigger.fs.

  • Stefan
    25.4.2016 20:27:20

    From betfair forum:

    Originally Posted by JayBee

    The above requires a subscription fee.

    JAYBEE, you are wrong.

    Bfexplorer BOT SDK is free and everything what user needs is to post on bfexplorer forum, and there is for it just one rational reason. Betfair api access is activated automatically each month by my authorization system on my web site, to active betfair api access, or better to say to generate betfair subscription code, and this is done only for those who posted articles, or comments. I do not have to do it manually, it is done automatically also for those who use free version of bfexplorer, not only for BOT SDK users.

    Using Bfexplorer BOT SDK, anyone can choose what he will use, and there are 4 different levels of using Bfexplorer BOT SDK code and/or assemblies/services.

    Bfexplorer app is just environment for loading markets, bots execution, and evaluation of results, and so on. If betfair programmer chooses to use BOT SDK and create bots which will be integrated to bfexplorer app (those are just projects MyCsharpBot or MyFsharpBot and MyBotTriggers), then is obvious he needs to execute them with bfexplorer.

    On the other hand he can use those 2 levels of programming with api only, and bfexplorer app domain, and in this case he will build his own app on those libraries, and it is really up to him, if he builds some user interface for his app, or will run it like console app or as a service, or as a web application on platform.

    For those who would require my support with bot development and will use bfexplorer app, there are 2 subscription plans. Either he decides to post on bfexplorer forum, or not, then of course he will subscribe, but his subscription fee can be just zero 0 GBP, 2.5 or 15 when posting on bfexplorer forum, or when donating amount between 2.5 to 15.

    If he does not want to post anything to forum, then of course he will subscribe with Professional or Basic subscription plan.

    I fully understand your opinion because no one will need to read your book, all what you describe in your book is already done.

    Please leave on betfairians what and how will be used. Those who want to build betfair apps from scratch and cannot read betfair documentation to betfair api will certainly buy your book.

    Those who want to skip this part, and actually develop only bot strategies or trading models can use my BOT SDK, or any other publicly available assemblies. On this forum I think can be found at least 3 or 5 such betfair libraries, mine is just one of them.

  • Stefan
    24.4.2016 18:40:45

    “Close Selection Bet Position At Odds” places a bet at current offered odds when you set the Odds parameter to 0, so this bot actually does not check your target odds in such case.

    Similar to Place Bet ... bots Min/Max odds difference feature, this bot offers the parameter CheckingLastPriceTraded (by default set to true, so this feature is active) and with the parameter CheckingLastPriceTradedDifference to place your bet only when odds difference between last price traded and current offered odds is <= CheckingLastPriceTradedDifference, so it waits till selection prices settles, as when odds rapidly changes mostly it is because offered bets are cancelled.

    You can use the parameter BetMatchingTimeout to set the time the bot will wait for your bet to be matched.

    You are not right, when price/odds changes the bot cancels your bet and a new bet is calculated for new price/odds, so stake cannot be the same. I think you did not realize that on any bet placed on betfair is applied best execution rule, your bet is matched at better odds if such odds is offered at the moment your bet is processed by betfair matching algorithm, therefore correctly hedged bet size will result in not balanced bet position.

  • Stefan
    24.4.2016 9:39:17

    Why are you using Fill or Kill bot, are you familiar with term book value, and what does it mean?

  • Stefan
    18.4.2016 13:28:10

    Install the latset version of bfexplorer I changed live score update routine when more Tennis Bots is executed on one market.

    You do not have to set IsInPlay Entry Criteria, the bot itself, waits till market is turned at in-play and then starts updating live score data.

  • Stefan
    17.4.2016 10:28:36

    Your bots should be executed and working, but as two bots retrieve the same score data, only first one receives notification about score data changes. You can test it by executing two tennis bots (without action bot setting) on the same market. You will see that only one line of score is displayed in Output view.

    Confirm that you understand this issue, because as you said “I can't execute both of them at the same time in the same market”, you actually can do, but triggering is taken by first executed bot only.

    I will investigate this issue, and release update soon.

  • Stefan
    17.4.2016 9:28:11

    Yes, you can insert images to your article as well, but you have to use direct link to the image, not web page link.

    What is Entry Criteria setting, do you understand that if Entry Criteria are not met and you set EvaluateEntryCriteriaOnlyOnce then bot stops its execution after the entry criteria are not met.

  • Stefan
    14.4.2016 17:08:54

    Here are some questions:

    Can you place a bet when a market is suspended or closed?

    Is your bot (bfexplorer bot) executed when a market is suspended or closed?

  • Stefan
    13.4.2016 18:58:10

    Watch my video.

  • Stefan
    13.4.2016 12:13:50

    Actually all Entry Criteria are sharable properties of the market or the market selection/s, and running bots with its activity influence all those values. Your question just shows that you do not understand what you asked.

  • Stefan
    12.4.2016 17:28:49

    Miro, this is actually quite funny because if I remember it correctly I added “Concurrent Execution” bot by your request when you tried to build some trading strategy.

    The main difference between those two bots is the “Execute Bots” bot just starts bots execution and then stops.

    The “Concurrent Execution” bot starts bots execution in its own execution pool, so your action bots are hidden, in the “Market Bots” view you can see running only your “Concurrent Execution” bot.

    That is one advantage, hiding action bots execution, so by canceling one bot, you can execution of all actions bots.

    Let’s say you want to create a spoofing bot, placing bets 2, 3, 4, 6 ticks from the best offered price. To construct such bot you would need to create four “Place Bet” bots, allowing place a bet in odds range and setting the PriceImprovement parameter.

    It is obvious that you would like spoof on back, and sometimes on lay side, but you do not need to create four versions for backing and four versions for laying. You will use bots execution from clicking on ladder feature, so you can name your “Place Bet” bot settings with general names, like “Place 2 ticks from”

    Finally you add bots to “Execute Bots” or “Concurrent Execution” bot parameter: BotNames, and name your spoofing bot, job done.

    Activating “User Ladder” and selecting your spoofing bot in “Bots to Execute” view, you can now execute your bot by clicking on ladder. Bot will take bet type, stake and odds as the maximal lay odds your bot will operate to, and opposite for back side.

    “Concurrent Execution” bot has internally implemented two features:

    If any of internally running bots will end, all the rest of bots is forced to end their execution as well.

    When bots are created for execution, only the first bot will take parameters from a click on ladder. Unfortunately this feature limits for now using the “Concurrent Execution” bot in scenarios similar to spoofing bot example I described above.

    I can remove this feature, what I have done in my tests, or can make it adjustable.

  • Stefan
    12.4.2016 11:40:41

    Unfortunately, there is no information whether a tournament is man's or woman's one, or singles or doubles one, in betfair api data, so you must filter it yourself manually by tournament name.

    In the Event Browser view, the tournament name is presented in Event Details column. You can filter or group by this column, so this way you can quicker navigate to matches you want to open.

    For doubles, there is / in Event name, right? For instance: Nedunchezhiyan/Nguyen v Chung/Yoo

    I believe you know that any data presented by bfexplorer in grid views can be sorted, grouped, filtered and searched. The filtering feature can be used for Event column by setting fallowing filter:

    Event Does not contain /

    What do you think the result will be?

    All double matches will be filtered out.

  • Stefan
    12.4.2016 10:14:44

    Yes, that is correct.

  • Stefan
    11.4.2016 21:42:46

    I have just released the latest version of bfexplorer adding PointsScore and PlayerServingIndex parameters to Tennis Bot.

    Do you know that you can add multi value for all score parameters? For instance PointsScore: 0 - 30;15 - 30

  • Stefan
    11.4.2016 18:47:39

    The best way to test any staking plan bot is to execute your strategy on greyhounds markets. A new race is started every 20 minutes or so.

    If you want to see bets placed by bot in Bot Executor, just double clicking on the market will open it to Bet Event view, so you can see your bets, and at what market state your bot finished on the market, if you had set StopMarketMonitoring parameter, the market will be set to Inactive so prices will not be updated.

  • Stefan
    11.4.2016 11:55:07

    That means that you are applying a staking plan to your betting, it means that you must use the “Execute Till Target Profit” bot to execute your tennis bot.

    On the other hand this staking strategy plan requires execution of matches step by step only. A new bet is placed (bot executed) only after previous bet result is known.

    If you bet or trade at the same time on many markets, then you can monitor your bet position on these markets by My Bet Position tool/view, and you can close bet position on all markets when necessary.