nonzprices

This commit is contained in:
jl777
2019-04-02 05:19:01 -11:00
parent 4c0eaa7a1f
commit fe9eb8df39

View File

@@ -2231,7 +2231,7 @@ char *komodo_pricename(char *name,int32_t ind)
return(0); return(0);
} }
int64_t komodo_pricecorrelated(uint64_t seed,int32_t ind,uint32_t *rawprices,int32_t daywindow,uint32_t *rawprices2) int64_t komodo_pricecorrelated(uint64_t seed,int32_t ind,uint32_t *rawprices,int32_t daywindow,uint32_t *nonzprices)
{ {
int32_t i,j,k,n,iter,correlation,maxcorrelation=0; int64_t firstprice,price,sum,den,mult,refprice,lowprice,highprice; int32_t i,j,k,n,iter,correlation,maxcorrelation=0; int64_t firstprice,price,sum,den,mult,refprice,lowprice,highprice;
if ( daywindow < 2 ) if ( daywindow < 2 )
@@ -2270,15 +2270,16 @@ int64_t komodo_pricecorrelated(uint64_t seed,int32_t ind,uint32_t *rawprices,int
if ( i >= daywindow ) if ( i >= daywindow )
i = 0; i = 0;
if ( n > (daywindow>>1) ) if ( n > (daywindow>>1) )
rawprices2[i] = 0; nonzprices[i] = 0;
else else
{ {
price = rawprices[i]; price = rawprices[i];
if ( price < lowprice || price > highprice ) if ( price < lowprice || price > highprice )
rawprices2[i] = 0; nonzprices[i] = 0;
else else
{ {
rawprices2[i] = price; nonzprices[i] = price;
fprintf(stderr,"(%d %u) ",i,rawprices[i]);
n++; n++;
} }
} }
@@ -2288,12 +2289,13 @@ int64_t komodo_pricecorrelated(uint64_t seed,int32_t ind,uint32_t *rawprices,int
return(-1); return(-1);
sum = den = n = 0; sum = den = n = 0;
for (i=0; i<daywindow; i++) for (i=0; i<daywindow; i++)
if ( rawprices2[i] != 0 ) if ( nonzprices[i] != 0 )
break; break;
firstprice = rawprices2[i]; firstprice = nonzprices[i];
fprintf(stderr,"firsti.%d: ",i);
for (i=0; i<daywindow; i++) for (i=0; i<daywindow; i++)
{ {
if ( (price= rawprices2[i]) != 0 ) if ( (price= nonzprices[i]) != 0 )
{ {
den += (daywindow - i); den += (daywindow - i);
sum += (daywindow - i) * ((price + firstprice*2) / 3); sum += (daywindow - i) * ((price + firstprice*2) / 3);