User Comments

  • Stefan
    15.10.2020 16:30:30

    You correctly identified bots to use in your strategy. Your strategy involves following steps to be executed:

    Evaluating entry conditions

    Placing lay bet

    Staking plan

    The entry criteria (conditions) are:

    Favourite traded between 2.0 and 3.0, and minimum number of runners 4.

    All bfexplorer bots offer Setup dialog with two panels: Strategy / Bot Parameters and Entry criteria. The first panel defines bot parameters for bet placing or trading, and the second panel defines entry criteria.

    If some entry criteria are defined and when market does not fulfil these entry criteria the bot is not executed. The evaluation of these entry criteria can be set to be executed just one time, by setting the parameter: EvaluateEntryCriteriaOnlyOnce.  Otherwise the bot will repeat evaluation till criteria evaluation returns true value.

    As your strategy needs to use two bots the question is to which bot parameters we need to set entry criteria. Well yes, we can set them to both bots, there is no problem with such approach, but on the other hand we should create bot settings to be reusable. Such general reusable bot settings can be bot settings to lay set stake amount by taking what is offered.

    And as we need such “Place Bet” bot settings we can create “Place Bet” setting parameters:

    OfferMyBet: False (unchecked)

    BetType: Lay

    Stake: 2

    The rest of bot parameters we can leave with the default settings.

    We can name the bot settings: “Lay 2 Euro”, of course you can name the bot settings like you want to.

    The rest of bot strategy is about staking plan. Bfexplorer standard bot for applying staking plan is named: “Execute Till Target Profit”. Unfortunately this bot uses profit or loss target, not number of wins or losses in row.  From your strategy definition, you do not care about target profit, but as this parameter is mandatory we must set it to some reasonable number, so I set it to 100. The TargetLoss parameter is set to 9, as your stake liability from allowed odds range is maximal 4 from 2 stake amount.

    We need to set following parameters:

    BotName: Lay 2 Euro

    TargetProfit: 100

    TargetLoss: 9

    ResetStakingPlan: 10

    StopExecutionAtTime: -00:00:05

    SortSelectionsBy: Last price Traded

    ExecuteOnSelection: 1

    EvaluateEntryCriteriaOnlyOnce: True (checked)

    And the Entry Criteria:

    NumberOfSelections Is greater or equal to 4

    LastPriceTraded Is between 2 and 3

    (Applying And Boolean operation)

    Finally we name this bot setting: My lay strategy

    Now it is time to test it in Practice Mode. We can open greyhound racing market and execute the bot manually. As the favourite was out of allowed odds range, no lay bet was placed, so I change LastPriceTraded Is between 2 and 5, and executed the bot again. The bot correctly identified the favourite and placed the lay bet.

    To execute this strategy fully automatically we need to use the tool “Strategy / Bot Executor”.

  • Stefan
    18.9.2020 15:49:07

    Sir, please read bfexplorer T&C:

    Simply said, you/bfexplorer user creates subcsription using your paypal account. When you do not want to use bfexplorer anymore then you must cancell your subscripition on your paypal account.

    Nor bfexplorer but paypal automatically takes subscription payments till you cancel it.

    Just common sense, how could I know that you do not want to use bfexplorer anymore? Well, yes I cannot know it, only you know it. 

    When looking for active subscription by your email: I could not find any entry, so really only you muist cancel your susbcription on your paypal account, or you must give me more personal detials to find your subscription nd cancel it.

  • Stefan
    17.8.2020 14:44:59

    I have just extended "Execute Till Target Profit" bot to be able to use "Place Dutching Bets" bot as the action bot.

    I have open results data to be accessed by console script, something like here:

    Save Market Data or Your Trading Results

  • Stefan
    17.8.2020 11:26:26

    The only requirements for action bot are to use StakeType: Stake option.

    Did you restart bfexplorer?

    Because bot “Execute Till Target Profit” records all results, and what you describe seems to be like bot used all previous results profit/loss not resetting previous results.

    For now, please do run strategy in practice mode only, to better understand what is going on. I think the Stake requirement is clear.

    As I mentioned before if you did not test this martingale strategy before for a longer period, then you should be aware of risk taken, because for couple days you can get fine results, but then will favorites start will in row and you can take big losses.

  • Stefan
    16.8.2020 15:14:09

    “Place Bet” bot settings:

    You actually mentioned a lot of parameters which have no meaning for your strategy, but you did not list the one I asked, so I believe you left default settings for StakeType, which is Stake by default, and you must use this setting in your strategy.

    Another default parameter is OfferMyBet which is set to True (checked), so your bot offers your bet, does not take what is offered.

    You run your strategy by Bot Executor, right? So in fully automated mode, then PlaceBetAtTime settings is redundant.

    “Execute Till Target Profit” bot settings:

    ExecuteAtTime is redundant. Yes, StopExecutionAtTime makes sense in this settings, because if previous bet is still not yet settled, it does not makes sense to continue waiting for bet settling after some time. On the other hand what you set there? And on what markets you run this strategy?

    I believe you mentioned greyhounds racing, and well you set StopExecutionAtTime to 00:01:00, so 1 minute after official race start time, and we both know that greyhounds racing are not in-play markets.

    SortSelectionsBy and ExecuteOnSelection do not make sense in your settings. This bot executes the action bot, what is “Place Bet” bot in your case, and this bot is already instructed to place lay bet on the favourite.

    So my question again, what you set for the parameter: StakeType? This is the only parameter settings which can influence stake amount. For instance if you set it to Liability, then your stake amount is calculated: stake / (price - 1.0)

  • Stefan
    16.8.2020 12:41:36

    What did you set for StakeType? That is the only problem you could make, because when you set StakeType to whatever else the Stake, your lay bet payout is different value, that is common sense.

  • Stefan
    16.8.2020 9:00:41

    The TargetLoss parameter stops bot execution when required loss is reached. It means that no bet will be placed.

    In your previous comment you said: “…but im unsure why im getting the results im getting. if i win the lay bet after losing a lay bet it takes my sum to breakeven, which i dont believe should be right? if my initial stake is $10 and it loses, then ill be down x amount of dollars but if the next bet wins it should stake accordingly to cover the loss plus add the additional stake …”

    So I made that video showing that staking plan is correct, as you can see in my video that third bet was losing on, loss -3.28, and the next bet won 5.28, so it means the lay bet was placed with stake amount: 5.28, so it covered previous loss 3.28 and added original stake 2.0. It means that staking plan is working correctly, and not the way you think/said, it works!

  • Stefan
    14.8.2020 13:46:16

    Here is video from my test, as you can see after loss, it is placed lost amount and default stake set by action bot, in my case it was 2 Euro.

    Just one hint, when you want to filter messages generated for exact market. Click right mouse button on selected market in Bot Executor, and from context menu click on “Show Output Messages”. This way you can simply see market messages and so what stake was used to place lay bet.

  • Stefan
    13.8.2020 18:45:47

    Yes, it is taken your action bot stake and as well lost amount in allowed streak (the parameter ResetStakingPlan) multiplited by MartingaleStakeFactor.

    So it is not taken entire lost amount, as staking plan is rest after consecutive loses defined by the parameter: ResetStakingPlan.

    Here is piece of my code:

    placeBetParameters.Stake <- placeBetParameters.Stake + addToStake

  • Stefan
    13.8.2020 13:29:52

    Do you understand what multiplication means in mathematics?

    If your stake is 10, and you want to add 10% to new stake then 10.0 * 1.1 = 11.0

    If you set that parameter to 10.0, then 10.0 * 10.0 = 100.0


  • Stefan
    13.8.2020 12:12:38

    Any MartingaleStakeFactor > 1.0 gives you stake bigger than previous loss, and as the winning lay bet payout is equal to your stake it is really up to you what that factor value you set.

    Sir, I have got really bad feeling that you actually do not know what is your strategy about. Do you know what risk martingale strategy involves?   

  • Stefan
    12.8.2020 19:56:46

    English is foreign language for me. I speak Slovak as my native language, I understand Czech, Polish, Russian and English, so from English dictionary – factor

    A number or quantity that when multiplied with another produces a given number or expression.

    "an amount that exceeds it by a factor of 1000 or more"

    So translating MartingaleStakeFactor is the number you can multiply by your total loss giving the stake amount in the next martingale bet.

    As 1 * 1 = 1, the default value for MartingaleStakeFactor means that your next stake is increased by your loss amount only.

    ResetStakingPlan means that after x losses in row (the default value is set to 3) the martingale staking plan is reset to original bet stake amount placed by your action bot.

    I actually attached illustration image found on the Internet, to illustrate what your strategy looks like in used staking plan, it is called: martingale.   

  • Stefan
    12.8.2020 11:10:58

    When selecting above parameters in the Add/update bot dialog, the following descriptions are displayed.

    For MartingaleStakeFactor : Add previous loses to my stake. The default value is 1.0

    For ResetStakingPlan: Reset the staking plan after loses. The default value is 3.

    What cannot you understand from above sentences?

  • Stefan
    12.8.2020 11:02:15

    Yes, you can do so. Always create “Execute Till Target Profit” settings with unique name for each strategy you will execute.

  • Stefan
    9.8.2020 20:14:46

    Yes, you can execute this strategy using “Place Bet” bot, and “Execute Till Target Profit” bot, create two bot settings using “Execute Till Target Profit” and name them differently, because it is clear that this bot must check your results, and it creates result service/s by assigning them name of the bot to distinguish among different result market queues.

    To execute your strategy in full automated mode use the tool: “Bot Executor”.

  • Stefan
    9.8.2020 7:58:42

    You must clearly express your intention.

    Is your profit target meant to be generated by closing bet position on one market, so trading?

    Or is it your target profit generated by continues betting or trading on more markets?

    You instruct bots to automate your strategy by setting bot parameters, or just by putting more bots in continue execution. Just a common sense dictates that computers do not think yet, only execute set of exact instructions. You do not declare exact instructions yet from your description.

  • Stefan
    8.8.2020 17:05:28

    There are maybe zillions of different betfair strategies one could execute, but it does not mean that for any such betfair strategy you need dedicated bot, program executing such strategy.

    Just think about it what does it mean lay favourite?

    We know that lay bet will be placed.

    We know that the lay bet must be placed on the favourite.

    Bfexplorer offers general bot named “Place Bet”.

    What such bot can do, just by judging from its name?

    Well, of course it can place bet, set by parameter: BetType.

    In our case we need to set this parameter to Lay.

    We need to place such bet on the favourite, so setting the parameter SortSelectionsBy to “Last Price Traded” will sort market selections by price/odds, the favourite will have index 1, the second favourite 2, and so on.

    As we are instructing the “Place Bet” bot to do what we want in our strategy, what is missing?

    Of course the selection on which the lay bet will be placed, and the parameter to set is: ExecuteOnSelection. As the favourite has index 1, we set the parameter ExecuteOnSelection to 1.

    And that is all we need. Of course all bfexplorer bots where the above parameters make sense, so BetType, SortSelectionsBy and ExecuteOnSelection have such parameters.

    Now we can save the bot settings naming it: “Place lay bet on favourite”. Naming the bot settings and saving it, adds the bot to the list of “My Strategies / Bots to Execute”, and such bot settings become general use for any case we need to lay favourite on the market.

    Of course bfexplorer bots offers a lot of different parameters, each of them just from naming suggests for what they can be used, and there is parameter description provided as well, so just read the screen.

    The above bot settings does not define any entry criteria, so if your strategy have any such criteria you can set them on Entry Criteria of the bot settings dialog.

    When I mentioned “general bot settings” or “action bot” settings I mention in many blog posts, then even if your strategy is super complicated trigger, or machine learning algorithm triggering bet placing, then any time in such complicated strategy you need just simple “Place Bet” bot.

    Well yes, I said simple “Place Bet” bot, but it actually is not so simple program, as it manages bet placing and updating not matched bets when odds moves and odds are still in allowed odds range to place a bet, or cancel unmatched bet when bet placing is not allowed at in-play, the parameter: AllowPlacingBetInPlay, and so on.

  • Stefan
    8.8.2020 13:09:11

    There is no need for any programming if your strategy can be executed by setting pre-built bfexplorer bots:

    If your bot strategy needs programming up to 30 – 60 minutes of my time, then I do such bespoke bot scripts for free. On the forum you can find a lot of such scripts:

    And of course for more complicated bot strategies you must pay for my work, it starts from 150 GBP, what represents 5 hours of my work.

  • Stefan
    5.8.2020 10:05:14

    The OfferedAmountToLay takes 3 best offered prices and calculates sum of offered volume. The BestOfferedAmountToLay takes just bets offered price volume. It is similar for ToBack properties.

  • Stefan
    7.7.2020 8:09:52

    You can use any paypal account. When you subscribe there is only one requirement:

    You must enter valid “Betfair username”, because your subscription on paypal is used to activate betfair api access for enter account.