Mismatch between the API and website

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • OzPunter
    Junior Member
    • Apr 2009
    • 161

    #1

    Mismatch between the API and website

    Not sure is this is an issue or not, but I have noticed several times that the prices and bet values shown on the Betfair website are not always the same as what is reported in the API's listMarketBook.

    Yesterday I noticed a runner at one price and the website showed a price $0.30c above the price my program was reading from ListMarketBook.

    The bets on the website were well above the minimum bet limit so the API and website should agree.

    Has anyone else noticed this??
  • LiamP
    Junior Member
    • Oct 2015
    • 284

    #2
    Website shows cross matching orders, did you have it enabled on your API request?

    Comment

    • LetsGo
      Senior Member
      • Oct 2018
      • 112

      #3
      Originally posted by LiamP View Post
      Website shows cross matching orders, did you have it enabled on your API request?
      LiamP, do find that "cross matching" is beneficial when using the API?

      Comment

      • LiamP
        Junior Member
        • Oct 2015
        • 284

        #4
        Originally posted by LetsGo View Post

        LiamP, do find that "cross matching" is beneficial when using the API?
        Nope, I always have it off, it hides lots of opportunities.

        Comment

        • OzPunter
          Junior Member
          • Apr 2009
          • 161

          #5
          Thanks Liam & LetsGo,

          This is the request my program is making,

          '"priceProjection":{"virtualise":false,"priceDa ta" :["EX_BEST_OFFERS"],"rolloverStakes":false},' + '"orderProjection":"ALL","currencyCode":"AUD"}, "id ":"1","jsonrpc":"2.0"}'

          I gather when you say "Cross Matching" you mean Virtual Bets. I haven't used Virtual bets before, from what I've read in the docs, I'm not sure if this extra information would be beneficial. You would understand that since what I have is working, I'm reluctant to make a change.

          What I need to do is to place lay bets at the lowest price that can be matched by an opposing bettor and as quickly as possible. What I saw in my example was that the website showed an available Back price $0.30c higher than the price the API was returning to my program, meaning that if my program placed a LAY bet at the price it had there would be no chance of it getting matched because the website price was $0.30c higher.

          As you say, Liam, having virtualise set to True would hide other available prices, but if you can't get matched at those prices there's little use, other than knowing the depth of the market and potential bets that may become available.

          On the other hand, would using Virtual bets provide a quicker way to get a bet matched?

          Has anyone done a comparison between Virtual and best offers?




          Comment

          • geoffw123
            Senior Member
            • Mar 2014
            • 250

            #6
            Hi

            I find virtual price and cross matching confusing, so here is a naive question. If turning on virtual prices is going to offer me potentially some higher back prices and lower prices to lay, why wouldnt I want to take that opportunity and switch on virtual prices ? I am likely missing something obvious here.

            Regards

            Comment

            • LiamP
              Junior Member
              • Oct 2015
              • 284

              #7
              Turning on Virtual bets means you have them returned in the MarketBook request, you would still get matched when placing an order (assuming the cross matcher is on). You would have to disable best pice execution (account level) in order to prevent getting matched at a better price.

              Comment

              • OzPunter
                Junior Member
                • Apr 2009
                • 161

                #8
                Ok, I remain confused on this Virtual Bets thing. What exactly are the advantages or disadvantages of having Virtualise set to True or False ?

                If having it in one state or the other allows my program to reference offers that it can't get matched at then that state needs to be avoided.

                In reference to my original post, I saw on the website the lowest priced runner listed as $4.10 where my program was setting a LAY bet at the price it was referencing, $3.80. I had Virtualise False in my program, so if that causes my program top reference prices that it can't get matched at then Virtualise needs to be set to True.

                While setting it to true might fix that particular instance, what effect would it have on the rest of the trading day?

                The objective is to get a LAY bets matched at the lowest possible price in the shortest possible time and not to sit idle while the market rationalizes and all listed prices become "match-able" .

                Comment

                Working...
                X