Article

Evaluating Price History – New Trigger Bot

From Bet Angel forum: Automation - Is there a way to place back bet when at the top of recently traded range?

Is there a condition that can be used to place a back bet when the price is at the top of its recently traded range? Which could then be paired up with WOM condition to trigger trading bot?

Bfexplorer Solution:

In my previous post I showed how to use price history data to calculate traded volume and then trigger action bot on the selection with the lowest traded volume.

Now, I will show how to present evaluated data on ladders. From user’s specification he wants to trigger his bot when the price is at the top of its recently traded range.

What does it mean?

We have to take price traded history in set time interval, and then find the highest and lowest traded price, compare this price to the latest traded price, and if price difference is lower to the highest traded price then our criteria are fulfilled.

My today’s bot shows this traded range in set interval, and as well the volume weighted price, because first we need to judge this strategy, what time interval to use and mainly how to judge that price is at the top of the range, that can be simply evaluate by odds/price difference in ticks, so the action bot will be triggered only when this odds difference is in allowed range.

Trigger Bot

Our trigger bot will evaluate the following values from price time series: ProbabilityChange, Slope Volume, LowPrice, ValuePrice, HighPrice, PriceRange, DifferenceFromLowPrice, DifferenceFromHighPrice, DifferenceFromValuePrice

So when executing trigger bot on a race the bot evaluate data and calculates our values reporting them in sorted table, adding selection name, price/ods, and factor value:

Scorpion Black: 8.40 | 1.000 ~ -1.25 | 0.020 | 2106.29 ~ 6.60 | 7.20 | 8.40 ~ 9 | 9 | 0 | 6

Razoul: 15.50 | 0.500 ~ -0.96 | 0.041 | 1242.84 ~ 13.50 | 14.50 | 16.00 ~ 5 | 4 | 1 | 2

Vastonea: 19.50 | 0.500 ~ -1.12 | 0.151 | 498.00 ~ 16.00 | 17.00 | 20.00 ~ 8 | 7 | 1 | 5

Latchet: 4.00 | 0.333 ~ 1.19 | 0.001 | 10609.30 ~ 3.80 | 4.00 | 4.30 ~ 7 | 4 | 3 | 0

Roman Seera: 19.50 | 0.250 ~ -0.43 | 0.021 | 718.07 ~ 18.00 | 20.00 | 23.00 ~ 7 | 3 | 4 | -1

Jon Ess: 5.80 | 0.200 ~ 1.62 | -0.011 | 5555.68 ~ 5.40 | 6.00 | 6.60 ~ 9 | 4 | 5 | -2

Institution: 16.00 | 0.167 ~ 0.19 | -0.078 | 909.27 ~ 14.50 | 16.00 | 19.00 ~ 9 | 3 | 6 | 0

Uluru Park: 18.50 | 0.143 ~ 3.23 | -0.385 | 1520.97 ~ 18.50 | 24.00 | 48.00 ~ 22 | 0 | 22 | -7

As we have seven different values we can evaluate, each value is normalized and depending on set sorting, to each value is assigned is normalized value, and total factor value is calculated.

In my example about  I selected only DifferenceFromHighPrice factor to be sorted ascending, and so the horse Scorpion Black difference from highest traded price was 0, the horse is first in the list, following by other horses with 1, 1, 3, 4 ... ticks of difference from their highest traded prices.

The trigger bot allows sorting total factor values as well, so it is possible to create any combination of triggering criteria.

The trigger bot takes the first selection in sorted list by default, but there is another parameter StartCriteria. When set the bot evaluates these additional criteria (it can be any combination of named parameters forming the boolean formula).

In my case I set StartCriteria parameter to: [DifferenceFromValuePrice] <= 0, so instead of Scorpion Black, the Latchet was chosen and the action bot was executed on this horse, the 2 ticks back trading bot.

It is clear that when using StartCriteria depending on what criteria you set none of selections can be chosen.

What are your thoughts about this bot trigger, what you would add or implemented the other way?

Comments ( 1 )


  • Betfair Bot
    14.4.2019 18:48:42

    Today's results running the bot fully automatically using Bot Executor tool: