AutoBets - A tool for intelligent players
Automatic strategies mechanism
The Automatic strategies mechanism, implemented in the program, is about the creation of an unlimited number of strategies based on several basic strategies with a specific operation algorithm of work and advanced functionality for implementing various options for trading and betting strategies. There is a certain general functional model, according to which the program operates. You only adjust the parameters of the work according to your desire. Thus, each created strategy is an array of settings that is saved under its own name and operates independently. Let us consider the main and the most functional basic AutoBets automatic strategy. The general model of the strategy’s operation consists of several stages.
Stage 1. Markets search
In the beginning, you need to select the markets where you plan to implement the strategy. To do this, you need to set a number of parameters by which the markets will be included in the selection. Then the included markets will be processed according to the algorithm specified in further parameters.
Markets search parameters
It is recommended to select parameters sequentially, from top to bottom, since the content of some parameters depends on the previously selected values.
- Types of sports. Sports for which the markets must be searched.
- Countries. Countries where the competition takes place. All countries are searched if the country is not specified.
- Venue. Venue – location, hippodrome. Actual only for horse and dog races. All hippodromes are searched if venue is not specified.
- Competitions. Competitions, tournaments. All competitions are searched if the competition is not specified.
- Market types. The possible market types depend on the sports. Many sports have their own peculiarities. For example, there are types of markets in the horse races: WIN (Winner), Place (Prizetaker) and others. Football has its own types. There are much more of them: MATCH_ODDS, OVER_UNDER, CORRECT_SCORE and many more. Attention! The search is performed in all market types if the market types are not specified.
- WIth BSP support. Search markets with Starting Price support only.
- With the In-Play support. Searching only for markets where the market is planned to be open to betting during the game (In-Play).
- Already switched to In-Play. Searching only for markets that have already switched to In-Play mode at the time of the search.
- Minimum/maximum amount in a pair. The volume of accepted bets on the market at the time of the search. 0 – without limits.
- Minimum/maximum selections number. Minimum/maximum selections number in the market. 0 – without limits.
- Search period. During each search, the program is looking for markets starting from the current moment and at the specified Search period. The screenshot above shows the information for 1 hour ahead.
- Filter. Additional text filter. Only markets and competitions containing this line will be found it that filter is specified.
- Search frequency. Markets search repeat frequency.
- Maximum markets number. The maximum markets number to add to search results. This parameter can be useful for strategies testing. 0 – without limits.
- Minimum/maximum market number ending. A filter for random markets selection for its number ending (ID). The default is from 0 to 99 – all markets.This parameter can be useful in the case of launching one strategy on several accounts – for random division of the markets between accounts.
- Minimum/maximum minute of the market start hour. A filter for selection of markets starting at specific minutes of the hour. The default is from 0 to 59 – all markets.This parameter can be useful in the case of launching one strategy on several accounts – for classifying markets between accounts by start time.
- General market data update period. The frequency of the general market data update. The most important thing is the market start time.The parameter is actual especially for tennis matches, where the markets start time often changes – postponed to a later time.
Stage 2. Markets Processing
All found markets are constantly monitored by the program “in a circle”. In each market, the program places bets according to a given algorithm.
- Virtual Bets. The program will “see” the so-called virtual (mirror) amounts in the markets if the checkbox is activated. Learn about the details here: ссылка
- Processing frequency. The frequency with which the program will request markets data and implement further actions if necessary.
- Process In-Play markets. If this parameter is activated, bets will also be placed on In-Play, otherwise – only before the market transition to In-play (Pre-In-Play). Attention! Search options “Already moved to In-Play” and “With In-Play support” only affect adding markets to search results. At the same time, only the parameter “Process In-Play markets” decides whether bets will be placed on In-Play.
- Betfair fee(%). The fee applied to your account. It is only needed to calculate the strategy operation results on the Statistics tab.
- Transaction counter. Limit of bets (transactions) per hour. The exchange holds a fee for exceeding the limit of 5000 transactions per hour. The Period (minutes) parameter is the length of the segment within an hour (in minutes) for which transactions will be limited. For example, if 1 is mentioned, then a limit of 5000 per hour means 5000/60 * 1 = 83 per minute; if 15 minutes are mentioned, then a limit of 5000 per hour means 5000/60 * 15 = 1250 in 15 minutes. If 60 minutes are mentioned, then the program will not limit transactions within an hour, only the general limit will be in effect – 5000 per hour. The rest of the transaction parameters are not edited, they display the transactions number made in the current period of time. The “Total transactions” parameter shows the transactions number made since the start of the strategy.
Stage 3. Betting filters
As mentioned above, the program requests data from the exchange and places bets according to a given algorithm for all found markets with a given frequency. First, markets and selections in these markets are checked against the specified filters – conditions. If both the market and the selection pass all filters, bets are placed, otherwise the market is skipped and re-processing follows the next time the data is received.
Let us consider these conditions:
- Minimum/Maximum Overround (%). Overround – the sum of reverse odds in the market multiplied by 100. For example, if the market has the best odds for Back betting: 1.7 / 3.5 / 5.5, Overround = (1/1.7 + 1/3.5 + 1/5.5) * 100 = 105.58%. If the current market Overround does not fit within the given limits, no initial bets are made on the market. 0 is without limits as a default. Attention! For markets with several winners (for example, Place in a horse race), the overround is also set: within the range of 100, but 100 is multiplied by the winners number during the calculation. If setting from 105 to 110, then suitable markets will be with an overround of 205 to 210 in markets with two winners; from 305 to 310 – in markets with three winners.
- Minimum / Maximum ratio between the odds of the two favorites. The market contains the selections with the lowest odds. Let us consider that these are selections with 3.5 odd (Favorite 1) and 4.5 odd (Favorite 2). Further, the odd of the favorite 2 is divided by the odd of the favorite 1, that is: 4.5 / 3.5 = 1.28 – this is the desired ratio.
- For horse races only: Minimum/Maximum race track length. The race track length is set as: XmYf, for example, 1m6f. Two characters may be present, for example 6f or 1m. No initial market bets are made if the market length does not fit within the specified range.
- For horse races only: Hurdles. Playable options:- All markets – without limits;- Only with hurdles – bets are placed only on those markets where the Chs or Hrd designations are present in the market name;
– Only without hurdles – bets are placed only on those markets where the Chs or Hrd designations are not present in the market name.
- For horse races only: Trap numbers. The numbers of the traps from which the horses start, separated by commas. For example: 1,2,6,7. There are no restrictions if the parameter is not set.
- Trend. Playable options: – Any – Falling – Growing – Horizontal. The trend is calculated on the basis of three prices: the selection average, the weighted average (taking into account the matched amounts) and the current price.The percentage of change in the weighted average price relative to the average price is calculated (it is considered that the weighted average is later, that is, more objective), and if this percentage is greater than the percentage specified in the “Change percentage during the trend calculation” parameter, then there is a trend. If not, then it is “Horizontal”.
- Maximum selections number in the market. If the parameter is set, then the program will place bets on a maximum of the specified suitable selections number, even if the parameters match more. 0 – without limits.
- Selection names (separated by comma). If the selections names are indicated, then bets will only be placed on the specified selections. For example, 0 – 0, Draw, Over 2.5 Goals. The names must be specified on the same language in which the program receives data. The Russian or English can be set in the program general settings. You can see the exact name of a particular selection by opening the desired market in the program.
- Selections from the file. It is possible to set the name of a text file from which the program will read the selections and place bets only on them. Each selection name should be written on a separate line in the file. The file will be re-read at the specified frequency in the next parameter.
- Minimum / Maximum spread at the selection (in ticks). A spread is the difference between the BACK and LAY market odds. 0 – without limits.
- For football: minimum/maximum minute of the match. 0 – without limits.
- For football: score filter. If the score filter is set, then the program will place bets only during the listed scores. Attention! Sometimes providers block the Betfair service from which the program receives the scores.In this case, the logs will show errors of score receipt and the corresponding filters will not operate (neither by score, nor by the minute of the match). To make sure that your provider is not blocking the service, open any In-Play market and check if it displays the score and the minute of the match.
Stage 4. Betting
The bets are made after setting the “Market search and processing” parameters and betting filters.
- Base odd calculation algorithm. Firstly, it is nececssary to calculate the base odds, according to which the program will calculate the odds. Possible base odd calculation options: – With all matched amounts. The base odd is calculated in accordance with the volumes of all transactions in the market according to the following algorithm: a) for each selection, the weighted average odd is calculated for all matched amounts according to the formula: (odd * odd amount) / (total amount for all odds); b) the odds for all selections are converted into probabilities (1 / odds), summed up, proportionally brought to one and converted back into odds. Note: a situation when the sum of the probabilities of the weighted average odds will greatly differ from one.If it is more than 1.2 or less than 0.8, the program considers that such an error is too large and the base odds will not be calculated. c) thus a base odd equal to “net” or “fair” is obtained for each selection. – With the matched amounts from the moment of entry. The calculation algorithm is similar, but only the amounts matched after the market was found are taken into account. The base odds will be calculated as soon as some sums are matched for all the selections. – Consider the current market odds as basic. The program considers the current market odds as basic. Moreover, for LAY bets, the odds “Right” are taken – that is, those available for LAY bets, and “Left” odds are taken for BACK bets – that is, those available for LAY bets. – Consider the current opposite odds as basic. The program considers the current market odds as basic. Moreover, for LAY bets, the odds “Right” are taken – that is, those available for LAY bets, and “Left” odds are taken for BACK bets – that is, those available for BACK bets. – Consider the last matched odds as basic. The program considers the last matched odds on the selection to be base.
- The minimum amount of the odd “visibility” on the market. When determining the current odd in the market (with the established calculation algorithm from the current ones), those odds where the amounts are less than the specified parameter will be ignored. For example, there is a following situation on some selection on the market: 1.56 ($ 1500) – 1.57 ($ 2300) – 1.58 ($ 10). If we place 20 on this parameter, then 1.57 will be taken as the current odd, and if 10 or less – then 1.58.
- “Visibility” amount search depth in ladder (ticks). 3 is the standard number of odds in the market, among which the amount of visibility is sought by default. If you increase it, then the program will search for the visibility amount not only among the best three odds, but among a specified number.
- Bet Types. Possible options: Back or Lay.
- Bets amount. The amount is specified in the account currency. The bet amount is counted from the specified option: – Payout – Bet Amount = Specified Amount / Odd; BetAmount (“Bet Amount”) – Bet Amount = Specified Amount; Liability – Bet Amount = Specified Amount / (Odd – 1).
- Margin from the base odd. The margin is specified in ticks as a percentage of the odds (in fact, the probability increase percentage) or as a percentage of the odd value – 1. If it is in ticks, then the bet odd will be decreased (for Lay bets) / increased (for Back bets) from the base odd by the specified number of ticks. If it is a percentage, the original bet odd will be decreased (for Lay bets) / increased (for Back bets) from the base odds by the specified number of percent and rounded to the nearest correct price. For example, if we place lay bets, then a bet will be placed with a base odd of 1.5 and a margin of 10%, with the odd: 1.5 * (100 – 10) / 100 = 1.35.If it is a percentage of (odd – 1), the original bet odd will be decreased (for Lay bets) / increased (for Back bets) from the base odd by a specified number of value percent (odd – 1) and rounded to the nearest correct price. For example, if we place LAY bets, then the bet will be placed then with a base odd of 1.5 and a margin of 10% with the odd: (1.5 – 1) * (100 – 10) / 100 + 1 = 1.45.
- Minimum / Maximum bet odds. If the calculated odd falls within the specified range, then bets will be placed, otherwise – no.
- Bets with the Betfair starting price. If the checkbox is set, bets will be placed not with the calculated odd from the base odd but with the Betfair Starting Price. If the “SP odd is no worse” parameter is set, then the SP rate will be set, but with a limit at the specified odd.
- Life span. If it is set, then the bet will be canceled after the specified time after its placement if it is not matched.
- Improve the bid position if possible. If the margin is set at -1 tick from the current market odds, that is, the bets are placed ahead of all in the market, if the checkbox is set, the bet will be canceled if competing rates in the market were canceled. For example, the odds on the market are “left” 1.2 – 1.25 – 1.3. The strategy placed a bet “Lay 1.31”. If the amount 1.3 disappears from the market, then the 1.31 bet will be canceled and will be placed again, but the odd will already be 1.26.
- Maximum number of bets on the selection. 1 by default – only one bet is made on one selection. You can set any number, then if the number of bets on the selection does not reach the maximum after the bet matching, another bet will be placed according to the same rules, but possibly already during a new market situation.
- Cancel not the best bets on the market. If the margin is set at -1 tick from the current market odds, that is, the bets are placed ahead of all in the market, then the bets will always be transposed to the best positions. However, if the market odd is no longer within the acceptable range, then the bets will naturally not be transposed, but will remain “hung”. Setting this parameter will cancel the bets in such situations.
- Leave in In-Play. It the parameter is set, bets will be placed with the “Leave in In-Play” checkbox. In this case, you must set the “With In-Play support” checkbox in the search parameters.
Stage 5. Reverse bets
- Place reverse bets. When the checkbox is set, each accepted bet will “generate” a reverse bet.
- With the “Leave in In-Play” value. When the checkbox is set, reverse bets will be left in In-Play. In this case, the “With In-Play support” checkbox must be set in the search parameters.
- Reverse bets margin. The value in ticks or percent by which it is necessary to increase/decrease the reverse bets odd.
- Transpose in case of partial matching. If the checkbox is set, the matched amounts will be reversed each time the data on the matching is received, that is, with the frequency specified in the “Market processing frequency” parameter. If the parameter is not set, then the bet will be reversed only when it is fully accepted.
Stage 6. Markets closure
Markets closure means equalizing the results for all selections.
- Cancel all bets after the market transition to In-Play. If the parameter is set, all bets will be canceled after transition of the market to In-Play.
- Close markets. If the parameter is set, then at some point in time, depending on the specified closure type, it stops placing bets on the market according to the algorithms described in the previous stages, cancels all bets and tries to equalize the results for all selections with a specified frequency. The equalization takes place according to the “Before the best” odds. For example, if the market is “left” 1.5, “right” 1.55, then the closing bet BACK will be placed with the odds of 1.54, and the closing bet LAY – with the odds 1.51.
- Markets closure type. Possible options – By time before the start – it means that the moment of closure occurs when the specified time in the “Closure time (before the start of the event)” parameter remains before the start of the market. Also in this closure type, in the “Instant closure time (before the event start)” parameter, it is possible to specify the time for which the market must be equalized by market odds; – By the number of accepted bets in the market – it means that the moment of closure occurs as soon as the specified number of bets is accepted on the market (in the “Accepted bets number”) parameter; – Upon reaching the Target profit – it means that as soon as the program detects a situation on the market in which an instant closure (that is, by market odds) will bring the specified profit (in the “Target profit” parameter), the market will be closed and equalized; – By time after market transition to In-Play – it means that the moment of closure will come after the time specified in the “Closure time after switching to In-Play” parameter.
- Use mirror closure. If the parameter is set, the program will choose the selection on which it is more profitable to bet when placing closing bets on two-selection markets. For example, instead of BACK betting with odd of 1.2, it is more profitable to place a LAY bet with odd of 5.6.
- Only cancel bets. If the parameter is set, then the program will cancel all bets at the closure time, but it will not place closing bets.
- Keep closing bets in In-Play. If the parameter is set, closing bets will be placed with the “Leave in In-Play” checkbox
- Inaccuracy of totals during the equalization. Allowable difference in the selections totals during the equalization. For example, if you bet 1 cent, the program will try to equalize the results for all selections until their difference exceeds 1 cent, although this is often impossible. The program will consider the market equal as soon as the difference in the results for all selections is less than the specified amount.
- Minimum closing bets amount. No equalization bets will be made for less than this amount. It is made for transactions saving.
- Minimum/Maximum closing Back/Lay bets odd. It is possible to limit the closing bets odds, if desired. Closing bets will not be placed with odds outside the specified ranges.
- Increase percentage. The percentage by which the next bet is increased on the basis of market, day or hour recalculation.
- Recalculation period: Market. If it turns out to be negative after the market recalculation, then the program increases the bet amount by the specified percentage on the next market (related parameter: “Increase percentage“). If the market turns out to be zero after recalculation, then the bet amount does not increase (default setting); Hour. The decision about the bet amount increase by the specified odd is made at the end of the hour; Day. The decision about the bet amount increase by the specified odd is made at the end of the day.
- A limiting martingale odd. The maximum odd by which the bet amount will be increased.
- In the “Alerts” parameters, it is possible to set the name of the sound file played when bets are accepted, if the corresponding checkbox is set.
- Autostart – the strategy will always be launched within the time interval specified in the Start time and Stop time parameters when the Autostart checkbox is set. If the start time and stop time are set as 00:00:00, the strategy will run continuously without stopping.
- Stop betting when profit/loss is reached – if these parameters are set to values other than zero, the strategy will stop betting if the profit / loss exceeds the specified value as a result of the strategy’s operation. Strategy profit/loss is reset to zero when the strategy is stopped. Thus, it is possible set the maximum losses/profits based on the day results and stop or start the strategy once a day using the Start time and Stop time parameters.