|
|
@@ -164,7 +164,7 @@ const HandicapCalc = function (data) {
|
|
|
},
|
|
|
() => {
|
|
|
const y = g;
|
|
|
- const m = t + k2 * y;
|
|
|
+ const m = t + k4 * y;
|
|
|
const z = (k1 + k2) * m / (k1 * k5 - k2 * k6);
|
|
|
const x = (k5 + k6) * m / (k1 * k5 - k2 * k6);
|
|
|
return { x, y, z };
|
|
|
@@ -174,6 +174,14 @@ const HandicapCalc = function (data) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ * const z = g;
|
|
|
+ const m = t + k6 * z;
|
|
|
+ const x = (k3 + k4) * m / (k1 * k3 - k2 * k4);
|
|
|
+ const y = (k1 + k2) * m / (k1 * k3 - k2 * k4);
|
|
|
+ return { x, y, z };
|
|
|
+ */
|
|
|
+
|
|
|
/**
|
|
|
* 根据预期盈利计算下注金额
|
|
|
*/
|
|
|
@@ -328,14 +336,21 @@ const calcTotalProfit = (sol1, sol2, inner_base, inner_rebate) => {
|
|
|
const rebateInner = inner_base * inner_rebate;
|
|
|
const winTarget1 = fixFloat(sol1.win_average - rebateInner);
|
|
|
const winTarget2 = fixFloat(sol2.win_average - rebateInner);
|
|
|
+ Logs.out('winTarget1', winTarget1);
|
|
|
+ Logs.out('winTarget2', winTarget2);
|
|
|
const winTarget = fixFloat(Math.min(winTarget1, winTarget2));
|
|
|
|
|
|
const win1 = calcWinResultWithTarget({ inner_base, inner_rebate, win_target: winTarget1, sol1, sol2 })?.win_inner;
|
|
|
const win2 = calcWinResultWithTarget({ inner_base, inner_rebate, win_target: winTarget2, sol1, sol2 })?.win_inner;
|
|
|
+ Logs.out('win1', win1);
|
|
|
+ Logs.out('win2', win2);
|
|
|
+
|
|
|
const win_inner = fixFloat(Math.max(win1, win2), 2);
|
|
|
|
|
|
const start = Math.max(winTarget, win_inner);
|
|
|
const end = Math.min(winTarget, win_inner);
|
|
|
+ Logs.out('start', start);
|
|
|
+ Logs.out('end', end);
|
|
|
const result = [];
|
|
|
|
|
|
for (let i = start; i > end; i--) {
|