/// <summary> /// Gets current average back and lay bets for every runner /// </summary> /// <returns></returns> public AsynBetStatus[] GetCurrBets() { AsynBetStatus[] retVal = new AsynBetStatus[currBets.Count()]; for (int i = 0; i < currBets.Count(); i++) { retVal[i] = new AsynBetStatus(); retVal[i].bAmount = currBets[i].bAmount; retVal[i].bAvgPrice = currBets[i].bAvgPrice; retVal[i].lAvgPrice = currBets[i].lAvgPrice; retVal[i].lAmount = currBets[i].lAmount; retVal[i].selId = currBets[i].selId; } return(retVal); }
/// <summary> /// Constructor /// </summary> /// <param name="username">Bf username</param> /// <param name="password">Bf password</param> /// <param name="marketId"> Market id</param> /// <param name="checkTimeMilliseconds">Time between checks of market</param> /// <param name="noOfRunners">Number of runners in the market</param> public ProfitAndLossAsync(String username, String password, int marketId, int checkTimeMilliseconds, int noOfRunners) { noOr = noOfRunners; Username = username; Password = password; MarketId = marketId; CheckTimeMilliseconds = checkTimeMilliseconds; currBets = new AsynBetStatus[noOfRunners]; for (int i = 0; i < noOfRunners; i++) { currBets[i] = new AsynBetStatus(); currBets[i].bAmount = currBets[i].bAvgPrice = currBets[i].lAmount = currBets[i].lAvgPrice = 0; currBets[i].selId = 0; } }
public void Start() { Api = new BetFairApi(); Api.LoginNonFree(Username, Password); Api.ManualySetMarketId(MarketId); //Random rnd = new Random(); MarketRunners[] runners = Api.GetMarketRunners(); for (int i = 0; i < noOr; i++) { retVal[i] = new AsynBetStatus(); retVal[i].bAmount = 0; retVal[i].bAvgPrice = 0; retVal[i].lAmount = 0; retVal[i].lAvgPrice = 0; retVal[i].selId = runners[i].SelectionId; } while (true) { try { //CurrentPL[] retVal = Api.GetCurrentMatchedPL(); AsynBetStatus[] retVal = GetCurrPlManual(); Report Rpt = new Report(delegate() { for (int i = 0; i < retVal.Count(); i++) { PALC.currBets[i].bAmount = retVal[i].bAmount; PALC.currBets[i].bAvgPrice = retVal[i].bAvgPrice; PALC.currBets[i].lAmount = retVal[i].lAmount; PALC.currBets[i].lAvgPrice = retVal[i].lAvgPrice; PALC.currBets[i].selId = retVal[i].selId; } }); Rpt.Invoke(); } catch { } System.Threading.Thread.Sleep(CheckTimeMs); } }