User Comments

  • Stefan
    10.4.2018 14:18:03

    You can see PriceTrend value on each ladder, under selection name. It is calculated from local minimal or maximal reach price (odds) and the current price.

    Book value is 100% and higher, for back prices and under 100% for lay prices.

    OfferedAmountToBack/ToLay is calculated from 3 best offered prices.

  • Stefan
    6.4.2018 10:39:19

    Let’s say you have got a strategy running on football markets, you execute it on match odds market because decision to trigger bots is done by match time and/or score.

    You setup your action bots, and then two bots to be open on associated markets using the bot: "Execute On Associated Market", on Under/Over 1.5 and Under/Over 2.5, so you will setup: one bot setting with MarketName: OVER_UNDER_15, and the other one with OVER_UNDER_25.

    So you have got two bots to be executed when your trigger criteria are met on “Football Bot”, but as you already noticed “Football Bot” takes only one bot name in the parameter: BotName.

    Open “Add a new bot” dialog, and type Execute in Search box, what bots are listed? Six bots starting with Execute .., what do you think the bot: “Execute Bots” could do?

    Well, yes exactly what the name of bot says, it will execute bots, defined by parameter: BotNames, so you can add there your two bots to execute your strategy on Under/Over 1.5 and Under/Over 2.5 markets, and you name such new bot, “My football action bots”.

    Now you have got one bot, which can be added to “Football Bot” parameter BotName, and when triggered it will open two associated markets, and execute your action bots on them.

    I would really suggest you to read bot names and description of bot parameters this is all what you need to understand.

    Bot setting is your instruction to be executed, that is all, similar like in programming code where lines of code express instructions of code execution.

  • Stefan
    5.4.2018 12:16:45

    Bots like “Football Bot” or “Execute On Associated Market” just execute action bot set by parameter BotName, nothing more!

    If your bot places “tons of bets” as you say, then you should check bot settings of bot/s which place bets.

    What you could make wrong is as well to add in sequence of your bots execution the same bot, which takes execution in recursion, therefore I asked you to make short video showing your bots settings (just sample if you think someone would steal your strategy this way), and how you use it.

    You did not make such video so it means you have basically problems to use any software, right?

    Well, I cannot help you anymore to understand how any windows software is used. It is really only up to you, learn and if not understand just try again.

    In bfexplorer when you construct your bot strategy by setting more bots, you should check each bot settings in practice mode and see what bot does when executing, that is the only way how to check if all works fine.

  • Stefan
    4.4.2018 10:21:10

    If you have no software for making screen recording, then please install ShareX:

    Make a short video showing how you set you bot and post it on youtube, so I can see what you actually do when setting up your bots.

    You must setup one “Execute On Associated Market” bot per each MarketName, if this bot would supported execution of BotName on many associated markets then parameter name would be plural MarketNames, and not singular: MarketName,  do not you think so?

    You can execute more bots by bot named: “Execute Bots”, where in the parameter: BotNames, you can see plural, so suggesting that you can enter more than one bot.

  • Stefan
    26.3.2018 21:45:09

    What do you mean “by your bots”? Did I make you some custom built bot? If yes, then I should have rebuild bot assembly, contact me by email. If not then just recreate your bot settings, it could happen that version of bot settings data serialization changes, so it fails loading old version of data.

  • Stefan
    26.3.2018 18:24:36

    I added "Execute At Time" bot.

  • Stefan
    25.3.2018 16:46:42

    "Cancel Bots On Selection" bot stops its execution immediately, so adding "Stop At Time" does not make a sense. In your case you trigger this bot using “Football bot”, so what is actually important is time of execution.

  • Stefan
    23.3.2018 16:13:58

    Have a look at “Fill or Kill” bot parameter named: Odds. Read what description for this parameter says: “The odds you want to place your bet at. Set to 0 if you want to offer your bet at best offered odds.”

    What does it mean?

    Bot either places a bet at required odds, or offers bet. If there is no offer on back side and you asked to place Lay bet, then bot will waits till some offer appears because bot does not know at what odds you want to place a bet.

    Just to test bot functionality set your bot to place lay bet at 1.01 odds, and you will see that all works fine.

  • Stefan
    22.3.2018 21:03:55

    Of course I tested it.

    You can open two instances of bfexplorer and do the same what you do with geeks toy.

    Actually if you open the market in bfexplorer and market is active then you will see bets even in one running instance of bfexplorer, because active market is updated immediately after you switch it to be active one.

    On markets with small liquidity and on markets where market data are not updated so frequently your bot can be executed with very big update time interval when market is in passive mode, because market data are updated really only when there some changes, this is the behavior of streaming api technology.

    If you switch to normal mode, then passive mode updates, and so bots execution is really executed each time set by update time interval for passive markets.

    Switch bfexplorer to streaming api, open market and watch for changes, on markets with small liquidity you can simply see that market shows no changes for minutes!

    So if you operate on markets with small liquidity then use normal mode, not streaming, but then you are limited to number of open markets you can monitor simultaneously.

    I hope you are able to use your common sense in this case.

  • Stefan
    22.3.2018 17:02:42

    Please make short video showing your problems, because what you say make no sense for me.

    When bet/s is/are placed on betfair market, the same way like market data are updated, bets are updated as well, I mean loaded to app model.

    So if you see bets on ladder, they are correctly loaded to market data, My Bets view is just other visual representation of your bets, like on ladders is another visual representation of the same market bets.

  • Stefan
    22.3.2018 11:50:05

    The “Fill or Kill” bot works fine, and it does not matter by which trigger bot it was executed.

    I already mentioned how a bot is executed on betfair markets, but it seems you do not understand it. Bot is a program/code but its execution time is limited to time when market data are updated only.

    Bfexplorer offers two types of market data updating, using streaming technology or simply calling api method for updated market/s at preset time interval, keep in mind that there are two update intervals, for active and for passive markets.

    When using streaming api to update market data, the data are really updated only when changes are detected on betfair servers, so it means even if you set your update interval for passive market to 10 seconds, you will not get updated data if no updates are made in 10 seconds interval on betfair servers.

    In such cases, betfair streaming api offers “heartbeat” so each 60 seconds there is triggered update procedure, so chance to execute a bot as well, but I implemented it only for monitoring active market, for passive markets bot is really executed only when there are detected changes on the market/s.

  • Stefan
    17.3.2018 19:01:17

    This is more about understanding of English language:


    a series of things connected or following in succession: a chain of events.


    a continuous or connected series: a gruelling sequence of exercises.

    English is foreign language for me, so from your misunderstanding of the term: "Chain Execution", we can use following bot names, describing bot functionality:

    Execute Bots

    Execute Bots in Sequence (instead of using term: Chain Execution), or better: Sequence Execution?

  • Stefan
    12.3.2018 21:05:50

    You need custom built bot, so either send me specification with your budget, or have a look at bfexplorer bot sdk, and program your bot yourself.

  • Stefan
    10.3.2018 19:22:27

    When a market is suspended, you cannot place a bet, update or cancel a bet, so common sense says, there is no need for bot execution during market suspension. Bots cannot do anything, any action on suspended markets.

    When a market suspension is a trigger for some action, then you need a bespoke bot to be developed, but I cannot see any use for such bot.

  • Stefan
    10.3.2018 11:03:46

    Yes, bot does not cancel bets, and why should it do? The bot purpose is offer a bet to be the first in queue, and bot ends its execution only after bet amount it offers is fully matched. Bot can operate in allowed odds range set by Minimum/MaximumOdds when PlaceBetInAllowedOddsRange is checked (set to True) and in allowed odds difference range set by Maximum/MinimumOddsDifference.

    So you set allowed odds range and when odds changes and are not in allowed range, bot stops updating bet. When your bot operates on in-play market after goal is scored the bet is cancelled, if you left the parameter AtInPlayKeepBet unchecked (set to False).

    If you want to cancel bet placed by the bot, and so stop your action bot execution, then you can use on football markets the bot “Football Bot” and trigger the bot: “Cancel Bots On Selection”.

  • Stefan
    9.3.2018 18:39:55

    “Be The First In Queue bot” always offers a bet, and as the name of bot suggests places a bet to: “Be The First In Queue”.

    What does it mean? As a bet is always offered the bot needs a gap more than one tick between best offered back and lay price, otherwise placed bet would be immediately matched, it would not be offered. If there is no gap between offered prices, the bot: “Be The First In Queue” waits for such gap in offer, otherwise a bet is not placed.

    To be first in queue you must place a bet on odds without any offer!

    Bfexplorer offers different bots, and all those bots offer different functionality/behavior when placing bets.

    I already mentioned, setup any bot and run it in practice mode to see how a bot behaves, so this way you will understand/learn the bot functionality.

    You have got Place Bet bot which can offer your bet as well, when parameter OfferMyBet is set to True (checked), but that does not guarantee your bet will be the first in queue, only the bot: “Be The First In Queue bot”, can do so.

  • Stefan
    9.3.2018 11:47:49

    Please read it twice or more: “Be The First In Queue”.

    To be the first in queue the bet must be offered, so it does not make sense to implement OfferMyBet parameter for this bot, because “Be The First In Queue bot” works only by offering bet, so OfferMyBet is always True.

    Your second request can be done only by custom bot.

  • Stefan
    8.3.2018 17:18:39

    Bfexplorer BOT SDK is available to PRO subscribers, so you have got access to it by request. First I would suggest you to watch some videos or read some articles about it, because you must be familiar with programming in F# or C# to use BOT SDK.

  • Stefan
    8.3.2018 10:28:05

    If you do not want to offer your bet, but take what is offered, then set parameter: OfferMyBet to False (unchecked.)

    There are two other parameters: Minimum/MaximumOddsDifference you could use to detect whether there is offer on both sides (back and lay). If there such offer on both sides then of course there is odds difference, minimal one of course is 1 tick.

    I would suggest you to test any bot settings you create, just switch to Practice Mode and run you bot to check if the4 bot operates as you expected from the bot settings.

    Associated market name, the parameter: MarketName must be exact name of market you want to open, as you can see it in Event Browser My Bet Event dialog, Market types parameter, so one of these text there, for instance: OVER_UNDER_25 when you want to open Over/Under 2.5 Goals market.

    Associated market is open in bfexplorer, and as it is not active market open in Bet Event view its market data are monitored with update interval set by parameter in Settings dialog/Update Interval/Passive market.

    If you use market streaming, then keep in mind, that streaming sends market updates only, and bots are executed only when market changes are detected on a market, when no market updates are detected then market gets “heart beat” event every 60 seconds, and so bot is then executed every 1 minute.

    Finally when we talk about bots and its features, when you find anything missing in bfexplorer bots, then you can develop your own bot with set of features required by your betting or trading strategy. Have a look at Bfexplorer BOT SDK. If you are not able to program your bot, then write your bot specification and sent it to me.

  • Stefan
    6.3.2018 10:19:58

    If you want to place a bet in allowed odds range, so parameter PlaceBetInAllowedOddsReange is True (checked), then setting Minimum/MaximumOdds sets allowed odds your bet can be placed. Bot check offered price defined by BetType and places bet only when set parameters are met.