User Comments

  • Stefan
    22.5.2020 19:35:13


    Tony and Graf, I only try to understand why betfair switched your api access to delayed data, that is all.

    No request is made when you switch off “Monitor passive markets”. Nor “Bot Executor” monitors markets when markets are in passive state.

    Why would I add such option to the settings dialog, when not implementing that feature?

    I can only repeat the same question betfair asked:

    “Please could you explain why your account is reading this volume of data.”

    Betfair knows about any of your activity, the betfair api is their service, and your account is associated with your betfair api access.

    I do not monitor your activity, so I just wonder, when betfair knowing about you everything, that you open a lot of markets, keep them monitoring for some time, but they still asked both of you:

     “Please could you explain why your account is reading this volume of data.”

    So what you are saying is that betfair did not know that you place bets on any market you open? Why they asked you?

  • Stefan
    22.5.2020 17:59:09

    Dear Sirs, I think there is still some kind of misunderstanding from your side.

    Bfexplorer app makes allowed number of requests, otherwise any additional request would be refused by betfair api server with error message, and on your end you would notice that as market data not being updated.

    What is important for you is following question betfair asked:

    “Please could you explain why your account is reading this volume of data.”

    Betfair business model is to earn on any winning matched bet, taking its fee. If your activity on betfair generates enough fees, so you generate more in fees, than costs of your activity on betfair,  any request to betfair api is not free, it takes resource betfair must pay.

    So if your activity costs betfair more than your generated fees, betfair can block your api access, and the first warning is to switch your api access to delayed data.

    What is a trigger level, I do not know, but it can vary from amount of fees you are able to generate for betfair. If you open 100 markets, and actually bet on 2-5 on them, then it is quite suspicious, do not you think?

    Therefore betfair asked you:

    “Please could you explain why your account is reading this volume of data.”

    I do not think betfair would ask you, when for instance you open 500 markets and bet/trade on every market you open.

    I think it is a good idea to read betfair T&C, because you can find there that you can be charged by placing more than 1000 bets per hour as well.

    In this case no data counter would help you, please just use your common sense, and if you open too many markets, bet/trade at least on 25% of them for instance.

    You could ask that betfair as well, but I am not so sure if you would get the answer for that, because then they would declare what is their algorithm for find not so fair customers of theirs.

  • Stefan
    22.5.2020 16:31:16

    Yes, I see that now.

    You have done everything fine. I hope you actually understand what you were doing. The MyBotTriggerExecutor.fsx script is used to execute MyBotTrigger.fsx bot trigger (so bot trigger code) on the currently open market selection.

    It is the way how to force “hot reloading” of code on which you are currently working in your IDE, because when you execute such bot trigger using “Execute Trigger Bot” your trigger bot is compiled to assembly, and any changes in the code are not reflected to bot assembly recompilation.

    I will check what you try to do on the client installation of bfexplorer on my test computer.

    After watching your video, I would suggest adding your favorite events, it seems to be Soccer/Football match odds, and as well to set app layout.

  • Stefan
    22.5.2020 16:03:24

    First of all, what it is active and passive market/s.

    When you open markets in bfexplorer and keep them open, then you have got any time 1 active market, and x passive markets. It is clear when opening just 1 market, there is no passive market open.

    When you open 10 markets, you have got 1 active market, and 9 passive markets.

    In application settings you can set update intervals for active market (the value is in mili seconds) and for passive market/s (the value is in seconds).

    Yes, you can switch off monitoring of passive markets, then for instance if you open 10 markets, then only active market is monitored. Whenever you switch to other market the previous active market becomes passive one, and new selected market becomes active one, so is monitored.

    If you run bots on open markets, then keep in mind that bot is executed only when market data are updated, so in this case, when passive markets are not monitored/so market data are not updated, your bots are not executed on these markets.

    Bfexplorer can execute your bot automatically by Strategy Bot Executor or by Strategy Bot Executor for Selections. In this case you set Start execution time, and update interval. When you click on Open button in the Open in Strategy Bot Executor dialog, then bfexplorer loads x markets (for instance all football matches), but that does not mean that all markets are instantly monitored.

    Markets are monitored from Start execution time (what is relative time to official event start time) and till any bot which is executed by Strategy Bot Executor is still running on the market.

    When your bot ends its execution, the Strategy Bot Executor automatically stops market monitoring.

    I would really suggest using common sense, and when you do not need to monitor market data, you should simply close such market.

    Of course if you open for instance 100 markets, and to all of them you place some bets, so you want bfexplorer to monitor market data, and bets status, or just your bet position, as when manually placing bets on markets, market selections are automatically added to Watched selections view, or you can watch My Bet Position on all markets, then you must wisely set the update interval for passive markets.

    In the Bet Event (Trader) view there is Close button, or in Open Markets view, you can select markets and click on Close button.

    And lastly, I actually mentioned that before. What I can imagine is following use case scenario. Let’s say you are football trader, so you open all matches and associated markets couple hours before kickoff time. Well yes, in such case you can monitor 100 to 300 markets per day, or even more.

    But if you open all those markets just because you want to see price movements, then there are other options, for instance like I showed on Chart Project, so price movement can be shown in charts with monitoring markets for hours. It is simply possible to program any solution for your needs, to avoid problems with taking too much data through betafir api without betting on these markets.

  • Stefan
    22.5.2020 0:23:03

    Sir, such subscription status had been available 3-4 years ago, when I thought that I will be able to create community of people, so instead of me making support they would make it themselves posting on the forum interesting posts and helping each other.

    I failed, and so I removed such option from subscription page:

    Do you think are you able to create such community here, attracting at least 100 people, from which at least 1 person would subscriber, and/or at least 10 people would become active members of this community and so then be able to get free community subscription?

    Bfexplorer app offers BOT SDK as well, so it was the second attempt to create community for betfair software developers, but again I failed to do so. And that is really quite strange, because anyone wanting to develop its own app using betfair api, must buy api access from betfair and such personal api access costs 299 GBP.

    I thought it would be really good deal for software developers, because they can use my code the bfexplorer app is built on to create own bot strategies in very short time.

    Frankly to say such community will never happen here, because betfair trading or betting is quite competitive, so those for whom I had built bespoke bots or apps actually never refer my app to others.

  • Stefan
    21.5.2020 22:26:05

    For what?

  • Stefan
    21.5.2020 14:32:53

    Thanks Graf for sharing your communication with betfair. I hope others will learn from it.

    It is actually common sense you should use when using bfexplorer app, as I did not program any limitation for using betfair api. You can open hundreds of markets with bfexplorer and when still leaving them open the market data are updated in interval set for passive markets.

    Yes, good alternative, mainly when opening a lot of markets is to switch off: Monitor passive markets, then even you open 100 markets, the only one which is actively monitored market is the active one, so the one open in the Bet Event view.

    In this case keep in mind, mainly when you place bets on such markets, that bet status is checked only for monitored markets.

    The other alternative is to use streaming api, betfair limits streaming api to 200 markets you can get market data updated. In this case changes are streamed, so bfexplorer app does not make api request repeatedly like when using rest api, what is default settings for bfexplorer app.

    If you run automated strategies by Bot Executor tools, then again keep in mind that depending on your settings, bfexplorer will additionally make queries to betfair api. Bot Executor tool automatically stops market monitoring for market/s on which no bot is running anymore.

    Bfexplorer offers live score updates for tennis or football, so there is no need to monitor associated markets like for instance Bet Angel users must do, just to judge current score from under/over or correct score markets.

    If you need to monitor market data, just to gather historic data, or price movements if you execute such kind of strategy, then there are means to get such data without actively monitoring markets through betfair api. For instance here I did some experiments with charting:

  • Stefan
    18.5.2020 15:42:13

    I didn't update sdk to the latest version of bfexplorer assembies. Just add default implementation for missing methods. Actually visual studio offers you such option when clicking on interface IBfexplorer

  • Stefan
    13.5.2020 19:52:50

    My bfexplorer user interface is built as WPF application. In the Bfexplorer/Betfair BOT SDK you can find this project:

    It is WinForms app using backend of my bfexplorer app, so yes you can develop your own user interface using Bfexplorer BOT SDK.

    On the other hand there is a question, why would you do so, if you can extend bfexplorer app by your bot, tool or plugin, so even new user interface (plugin) can be added to bfexplorer app:

    Bfexplorer Plugin Support

    And of course if you are skilled developer you can reverse engineering my app, and as the app application domain and services are separated fro user interface, it is very easy to build your new user interface on whatever GUI platform.

    For instance the same bfexplorer app backed was shared when I developed this web app for betfair:

  • Stefan
    10.5.2020 10:43:04

    It depends on tipster's betting model, and its profitability.

  • Stefan
    9.5.2020 20:40:03

    And as well betfair has no interest to lose betting customer, just by blocking customers api access. What I can suggest is to use subscription code from your subscription details and refer it to your request to bdp support. Subscription code is associated with app key, so if you did not mention what software you use with your betfair api access, so bfexplorer, they will retrieve this information from it.

  • Stefan
    9.5.2020 20:22:03

    I have just tested on my server clean installation of the latest version of bfexplorer.

    Then I used my account, and my brother's account (both having money on betfair), but my brother’s account was not used for more than 1 year, I had to create subscription to bfexplorer to get activation code, and on both accounts I have fully api access.

    So there is no problem with my app key (bfexplorer), because if it was some then it would not be possible to create new subscription code on betfair and then activate access for brother’s account.

    Gentlemen, really any restrictions can be lifted by betfair only.

    Tony’s subscription code is valid till 24.5.2020, Graf’s till 15.5.2020 and Bodasy’s till 15.5.2020.

    Two days ago I finished bespoke bot for one trial user, and he activated his subscription on 8.5.2020, and was able to use bfexplorer app with full api access.

    It is weekend, so you have got from betfair maybe automatic reply from its support, and of course betfair monitoring system is fully automated, so your api access status was changed this way as well, and you will get more information when person will check it.

    I do not know if delayed api status is associated with app key as well, but I do not think so, because then you could simply misuse betfair api data by using different vendors applications, and that is nonsense, just count the number of apps on betfair apps market.

    If betfair would made such bug in their api access then for one account such illegal api user could use his account for x apps on the market.

     I think delayed api status is set to user’s account, Bodasy I do not think what you say is right. Your last login with bfexplorer app was on 14.4.2020 20:56:54 CET.

  • Stefan
    9.5.2020 19:40:40

    I have no email contact to betfair bdp. For any communication I use support web page.

    Tony and Graf, my business model is to sell my trading software to betfair users, so I have no interest to block any user from using my app, it would be nonsense, do not you think?

    Betfair business model is to take fees from any winning bet, betfair users place on betfair exchange, so again in their interest is not to block users that really bet on the exchange, no users means no fees, so no profit for them. 

    I hope you will get some feedback from betfair about your api status. In following days betfair ends its services for another country: Russia. I do not know from which country you operate from, or what you actually do with betfair api data. 

    Betfair offers web api access as well, I made some bespoke app using this api, so maybe for your activity it is more suitable this kind of api access, but that is offered only to vendors like me. You must ask betfair if you want to use this api for commercial use.

  • Stefan
    9.5.2020 18:48:17

    Graf, my records says your last login with bfexplorer app was on 14.4.2020 15:24:37. 

    Tony's one today: 9.5.2020 0:21:52. Time is in CET (Central European Time) 

    From my side that is all what I can say about your activity. Bfexplorer App key is active one, no other users reported problems, nor me have problems with betfair api data. I have got full api access.

    Betfair restricts api access, and full api access can be activated again by them only.

    Betfair restricts access to api to users who use their data not for betting or trading on betfair, or who missuse betfair api data.

    If you search forum for similar posts, you can find this one: Restricted Betfair account

    In the above case the user was no longer my susbcriber, and his access was restricted because he used api data just for testing stratergies, he was not betting or trading on betfair, and as you can read from his post betfair informed him:

    "With regret, we have restricted your Betfair account with a delay to Exchange market data (odds and volumes). The restriction is in accordance with our Terms and Conditions; in particular the intellectual property clauses with reference to Betfair data.

    Your data usage profile represents that of a commercial user. Note that usage of Betfair Exchange market data by any user in a commercial context requires a data licence. Betfair offers a commercial data licensing scheme, details of which can be found at"

    If betfair did not inform you yet, then they will do so, but I am sure you have got already from them similar letter as Mir did get. 


  • Stefan
    9.5.2020 17:42:07

    Here is the information from betfair BDP web site:

    My app key, bfexplorer app key is not delayed app key, so the only problems are those ones I already mentioned, betfair says:

    "You’ll receive delayed Exchange market data if you are logged out, logged in but have never funded your account or if your account has been restricted by Betfair to received delayed data only."

    This applies for my api access (Bfexplorer is "Vendor App customers"):

    "You'll receive delayed data when using a live App Key if your Betfair account has never been funded or if an override has been applied to your account, or App Key. "

  • Stefan
    9.5.2020 17:26:27

    Tony, but do you understand that betfair controls which account has delayed api access and which one not?

    It is not me, betfair software vendor. I have api access as you, using my app key, and it is full api access.

    So if it was true, what betfair support is trying to suggest you, that my app is causing your problems, that is simply not true, because then none of my users, nor me whould have full api access. 

    Bfexplorer is asigned app key to access api, but any other restrictions are done by betfair only.

  • Stefan
    9.5.2020 16:15:28

    Betfair switches delayed api for any account with zero balance, or not activate accounts.

    Not activate account means that you did not place matched bet on betfair for more than 3 months, just do so, place a matched bet and after it is settled I believe your next login to betfair with any betfair api app will reactivate your full api access.

    Place your bet through betfair web page, on betfair exchange, of course.

  • Stefan
    4.5.2020 15:12:40

    This project had been originally posted on

    Looking for someone to help with some horse racing data analytics

    Here is my implementation.

  • Stefan
    2.4.2020 19:55:39

    I will summarize it shortly for others looking for any betfair strategy development.

    None of betfair apps can offer pre-built strategies where you just set parameters and all is done magically for you.  Such simple strategies are built exactly only for preset features, and if you need any changes or additions to these features, it is not possible to do so without changing application code.

    Some of betfair apps offer Excel integration where your strategy can be built just on betfair odds and traded volume formulas, anything else must be programmed in Visual Basic code.

    Bfexplorer offers all base bots for placing bets (back/lay bets, back/lay dutching bets) or executing trading session for required profit or loss target.  All these base bots can be used itself and you can create simple strategies just by setting bot parameters, or entry criteria.

    Anything else can be programmed using Bfexplorer BOT SDK, and such bot is automatically integrated into bfexplorer, and so can be used by all other tools bfexplorer offers, mainly by Bot Executor tools, or by Bfexplorer Console. In all these cases, bfexplorer acts like development environment, to retrieve betfair data, or any other required data for particular market.    

    Your custom built bot is available only for you it is not available publicly to all bfexplorer users.

    On the forum you can find a lot of examples, and on github you can download source code for a lot simple bot scripts.

    Contact me through support web page, or by info email, so we can discuss specification to your bot that will gather required data from live markets. I have added short video showing some data Bfexplorer BOT SDK can offer for developers, but in your case, we will use mainly meta data betfair offers (trainer and jockey names), and of course BSP on markets which are turned at in-play, and the winner of the race.

    Custom built bot code can save data in any required format, most used is plain text format of CSV file that can be open by Excel, and by other tools you will use data analyzing or building your machine learning model.

  • Stefan
    1.4.2020 17:22:30

    The question is what is your own experience in required skills?

    From your specification: “data extraction” and “data analytics”.

    If you already have this historical data then you need to create your model, where from your data you are able to take some conclusions.

    For instance by entering parameters like Horse Name, Trainer, Jockey and so on, your model can return probability values for each horse (trainer, jockey) to win a race. This probability is then taken by bfexplorer bot as trigger to initiate bet placing or not.

    So from this point of view all you need to learn in bfexplorer are those two features:

    My Strategies / Bots to Execute

    Strategy / Bot Executor