Article

Bot Trigger - Miro Bot Executor

Miro asked for a bot to trigger execution of many different bots depending on clicked odds and bet type on a ladder, so here there is MiroTriggerBot.
To use this bot trigger you need to add action bots to My Bots, and then create CSV file with triggered odds and bet type, action bot name, and addition bot parameters if you want to change them when the bot is executed.


Mandatory parameters are: Odds, BetType, Bot Name following by additional bot parameters in pair of parameter name and value. Use ; to separate parameters in CSV file:


5.0;Back;Place bet;Stake;55.55
2.0;Back;Trade 2 ticks


For now there are supported BetType, Boolean and Float values for additional bot parameters.


To use this bot trigger, click on Add a new bot and select Execute Trigger Bot. Enter TriggerParameters in this format: CsvFile:F:\Temp\MiroTestData.csv, then enter TriggerFilePathName, for instance I have got this trigger bot in the folder:

F:\Projects\Bfexplorer\Development\BetfairFramework\

And the bot trigger file name is: MiroBotTrigger.fs, so TriggerFilePathName in my case is:

F:\Projects\Bfexplorer\Development\BetfairFramework\MiroBotTrigger.fs


In Miro’s bot trigger specification he said that he will set different bot settings for every odds on ladder, and twice as he wants to set different triggers for back and lay bet clicks on ladder, so totally 350 * 2 = 700 rows in CSV file.


I think this bot trigger could have some potential for other users, so I change implementation of this bot to execute triggered bot if CSV file contains trigger settings for exact bet type and odds, and if no bot is found then default action bot is executed, if BotName parameter is set for Execute Trigger Bot.

Download “MiroBotTrigger” script if you want to test it or build your own script from it.

Comments ( 19 )


  • Stefan
    8.8.2015 10:18:55

    I said: For now there are supported BetType, Boolean and Float values for additional bot parameters.

    10 is the full number, the interger.

    10.0 is the floating point number (float).

  • Mir.
    8.8.2015 10:49:21

    Ohh, I see...
    I must create CSV file correctly

    ---------------

    I change CSV file (name-TriggerParameters) but bot still works with the old one.

  • Stefan
    8.8.2015 11:12:44

    Bot Trigger caches csv file, so you must restart bfexplorer.

  • Mir.
    8.8.2015 12:57:21

    For example:

     

    5.70;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.60;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.50;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.40;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.30;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.20;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.10;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    5.0;Lay;PlaceBetCP;Stake;2.37;Profit;1.0;Loss;2.0
    4.90;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.80;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.70;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.60;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.50;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.40;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.30;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.20;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.10;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    4.0;Lay;PlaceBetCP;Stake;2.37;Profit;2.0;Loss;3.0
    3.95;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.90;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.85;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.80;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.75;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.70;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.65;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.60;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.55;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.50;Lay;PlaceBetCP;Stake;2.37;Profit;3.0;Loss;4.0
    3.45;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.40;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.35;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.30;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.25;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.20;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.15;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.10;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0
    3.05;Lay;PlaceBetCP;Stake;2.37;Profit;4.0;Loss;5.0

     

    ----------------------------------------

    Where is mistake?

    PlaceBetCP = Place Bet and Close Selection Bet Position bot

  • Stefan
    8.8.2015 18:57:23

    Sometimes, all you really need is just to use common sense. In our countries we say you should use zdravý sedliacky rozum, zdravý selský rozum.


    Any bot offers some parameters, and those parameters are grouped to quickly find them or organize them, so you can find named groups in bot parameters: Bet Attribute, Bet, Stake, Time, Selection and so on.


    Place Bet and Close Selection Bot Position bot is made from two bots, as the name of this bot could suggest. It means that bot offers quite a lot of parameters.


    You can actually see it in the bot editor that Bet Attribute group is actually made by two bot setting data: PlaceBetParametersData and ClosePositionParametersData, and so to access Place bet bot parameters in bot parameter setting you must append OpenBetPosition name.


    I already mention such fact in my article: Case Study 1 - Back a list of horses and green up at a % offset


    http://bfexplorer.net/Articles/Content/74


    So in your CSV additional parameters, you must add:

    CloseBetPosition.Profit
    CloseBetPosition.Loss

  • Stefan
    8.8.2015 19:03:31

    Not to confuse others, you must append OpenBetPosition to all parameters which influence Place Bet bot functionality (in this trading bot: Place bet and close selection bet position), and CloseBetPosition to parameters which influence Close selection bet position bot behavior.

  • Mir.
    9.8.2015 14:40:18

    Are you serious?
    I asked twice, how to use syntax... Answer is:

     

    Just to use common sense.


    I thought that forum is place for help. Especially for beginners (for me too). Maybe.
    But without common sense - nothing for new customers.

     

    ++++++++++++++++++++++++++++++++++++++++++++++++

    For example this concrete syntax works fine.

    But if you prepare data in Excel and export to CSV file, you must save in UTF-8 (open in Notepad -> save as [UTF-8] file)

    ---------------------------------------------------

    3.75;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;3.00;CloseBetPosition.Loss;4.00
    3.70;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;3.00;CloseBetPosition.Loss;4.00
    3.65;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;3.00;CloseBetPosition.Loss;4.00
    3.60;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;3.00;CloseBetPosition.Loss;4.00
    3.55;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;3.00;CloseBetPosition.Loss;4.00
    3.50;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;3.00;CloseBetPosition.Loss;4.00
    3.45;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;4.00;CloseBetPosition.Loss;5.00
    3.40;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;4.00;CloseBetPosition.Loss;5.00
    3.35;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;4.00;CloseBetPosition.Loss;5.00
    3.30;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;4.00;CloseBetPosition.Loss;5.00
    3.25;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;4.00;CloseBetPosition.Loss;5.00
    3.20;Lay;PlaceBetCSBP;OpenBetPosition.Stake;4.37;CloseBetPosition.Profit;4.00;CloseBetPosition.Loss;5.00

    ---------------------------------------------------

    PlaceBetCSBP = Place Bet Close Selection Bet Position bot

     

     

  • Mir.
    10.3.2016 14:48:18

    Can I use "Entry Criteria" in CSV file?

    And how?

    ---------------------------------

    For example:

    Entry Criteria

  • Stefan
    10.3.2016 15:05:28

    There is no support for entry criteria to be read from CSV file, on the other hand you can develop your custom bot or bot trigger, so then your bot will use whatever features you will program to betfair bot.