private static double GetRatio(TwoWayOdd twoWayOdd) { var ratio = ((double)twoWayOdd.Player1Odd) / twoWayOdd.Player2Odd; ratio = (int)(10 * System.Math.Log((ratio < 1 ? 1 / ratio : ratio))); return(ratio); }
private static TwoWayOdd Convert(TwoWayOdd twoWayOdd) { var sum = 100d / twoWayOdd.Player1Odd + 100d / twoWayOdd.Player2Odd; return(new TwoWayOdd( twoWayOdd.EventDate, null, null, twoWayOdd.MarketId, (uint)(twoWayOdd.Player1Odd * sum), (uint)(twoWayOdd.Player2Odd * sum), twoWayOdd.Player1Id, twoWayOdd.Player2Id, twoWayOdd.Player1Name, twoWayOdd.Player2Name, twoWayOdd.OddsDate)); }
private static int GetProfit(TwoWayOdd odd, Result result) { var div = (1d * odd.Player1Odd / odd.Player2Odd); if (div > 1) { return(result.WinnerId == odd.Player2Id ? (int)odd.Player2Odd - 100 : -100); } else { div = 1 / div; return(result.WinnerId == odd.Player1Id ? (int)odd.Player1Odd - 100 : -100); } }
private static double GetPremium(TwoWayOdd twoWayOdd) { var sum = 100d / twoWayOdd.Player1Odd + 100d / twoWayOdd.Player2Odd; return(((Math.Max(1, sum) - 1) * 1000) + 1); }