Browse Source

修改pidV2调价公式

gufengshou1 1 year ago
parent
commit
d637075186

+ 11 - 2
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/container/PidLambdaV2Container.java

@@ -100,11 +100,20 @@ public class PidLambdaV2Container {
                     Double conversion=Double.parseDouble(cols[1]);
                     Double cpa=Double.parseDouble(cols[2]);
                     Double realCost=Double.parseDouble(cols[3]);
+                    Double yesterdayConv=Double.parseDouble(cols[4]);
+                    Double yesterdayCpa=Double.parseDouble(cols[5]);
+                    Double yesterdayRealCost=Double.parseDouble(cols[6]);
                     Double lambdaNew=1d;
-                    if(cpa*conversion!=0&&!realCost.equals(0d)){
-                        lambdaNew=(cpa*conversion)/realCost;
+                    if((conversion+yesterdayConv)!=0&&(realCost+yesterdayRealCost)!=0){
+//                        if(cpa*conversion!=0&&!realCost.equals(0d)){
+//                        lambdaNew=(cpa*conversion)/realCost;
+//                        }
+                        double yesterdayW=yesterdayConv/(yesterdayConv+2*conversion);
+                        lambdaNew=(yesterdayW*yesterdayConv*yesterdayCpa)/yesterdayRealCost
+                                +(1-yesterdayW)*(cpa*conversion)/realCost;
                     }
 
+
                     if(lambdaNew>maxLambda){
                         lambdaNew=maxLambda;
                     }else if(lambdaNew<minLambda){