Hi. Love using Ipposnif, it's a really fantastic piece of software.
I would like to test a strategy that is based around laying in play, but can't quite figure the SQL strings. My selection criteria for example would be:
Races longer than 7F (if converted to meters then this would be races >=1500m) GB and Ireland only. Price of runner at 1 minute before the off is <=4.0. Trigger to lay is run if price of horse in running hits >=8.5.
Hi, welcome to the forum. I think this strategy can have an educational purpose for those who want to start creating their own in-play strategies, so I will develop and publish it here, explaining also how I have done it. Cu soon
This kind of strategy requires a fast PC and a fast internet connection, because the strategy needs to monitor the price of the favorite (or of the first two favorites), and as soon as the runner seems to have lost the race (by the odd), the strategy must place a bet. Not all the bets are matched, because we enter the market when the price is between 8.5 and 14, but the price could drift above 14. The competition between BF users in in-play markets is strong, and most of them are following the short prized runners. So it is advised to not run this strategy on a slow VPS.
If you have a fast PC, you can speed up Ipposnif for this strategy from the Options > API Configuration > change the parameter like in the picture below.
I've tested the strategy for a few races, and it seems that the current parameters need some adjustments, especially the price range. But this is up to you The current bet size is a test bet of 2 euros of liability. Before increasing capital and size I suggest running the strategy for a few days and monitoring it.
This strategy produces trades with only one bet each. This is the trigger condition for the bet, and it is added to all the filters/conditions we have set in the other strategy's criteria:
dbo.fn_RaceProperty(@id_race, 'distance', 0) >= 1500 AND dbo.fn_RaceHorseProperty(@id_race, @id_horse, 'rec_back_price', 1) <= 4 AND dbo.fn_TradeCount(@id_race, 0, @id_strategy, 'OFC', 0) = 0
fn_RaceProperty returns properties of the market. In this case, we want to know the distance in meters of the race. It must be equal to or greater than 1500 to place a bet.
fn_RaceHorseProperty returns properties of the combination market-runner. In this case, we want to know the 'recorded back price' of the runner at 1 minute at the start. It must be equal to or lower than 4.
fn_TradeCount returns the count of trades in a specific status. In this case, we count the trades in the same race, for the same strategy, of any runner, in any of the following statuses: O=Open F=Finished C=Cancelled. The count must be zero to place a bet. Basically, it means that once a bet is placed on the race, no other bet is allowed on the same race.
All three conditions must be true (AND).
@id_race, @id_horse, and @id_strategy are Index variables, in our case they mean: getting the requested properties from the actually checked race, the actually checked horse, the actually checked strategy.