|
|
@ -43,20 +43,32 @@ uint64_t Ridqids[128]; |
|
|
|
|
|
|
|
int32_t LP_statslog_parsequote(char *method,cJSON *lineobj) |
|
|
|
{ |
|
|
|
int32_t i,destvout,feevout,duplicate=0; bits256 desttxid,feetxid; struct LP_quoteinfo Q; uint64_t ridqid; |
|
|
|
double qprice; int32_t i,destvout,feevout,duplicate=0; char *base,*rel; uint64_t txfee,satoshis,destsatoshis; bits256 desttxid,feetxid; struct LP_quoteinfo Q; uint64_t ridqid; |
|
|
|
memset(&Q,0,sizeof(Q)); |
|
|
|
if ( LP_quoteparse(&Q,lineobj) < 0 ) |
|
|
|
{ |
|
|
|
printf("quoteparse_error.(%s)\n",jprint(lineobj,0)); |
|
|
|
LP_parse_errors++; |
|
|
|
return(-1); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
char str[65]; |
|
|
|
base = jstr(lineobj,"base"); |
|
|
|
rel = jstr(lineobj,"rel"); |
|
|
|
satoshis = j64bits(lineobj,"satoshis"); |
|
|
|
if ( base == 0 || rel == 0 || satoshis == 0 ) |
|
|
|
{ |
|
|
|
printf("quoteparse_error.(%s)\n",jprint(lineobj,0)); |
|
|
|
LP_parse_errors++; |
|
|
|
return(-1); |
|
|
|
} |
|
|
|
txfee = j64bits(lineobj,"txfee"); |
|
|
|
destsatoshis = j64bits(lineobj,"destsatoshis"); |
|
|
|
desttxid = jbits256(lineobj,"desttxid"); |
|
|
|
destvout = jint(lineobj,"destvout"); |
|
|
|
feetxid = jbits256(lineobj,"feetxid"); |
|
|
|
feevout = jint(lineobj,"feevout"); |
|
|
|
qprice = ((double)destsatoshis / (satoshis - txfee)); |
|
|
|
//printf("%s/v%d %s/v%d\n",bits256_str(str,desttxid),destvout,bits256_str(str2,feetxid),feevout);
|
|
|
|
ridqid = (((uint64_t)desttxid.uints[0] << 48) | ((uint64_t)destvout << 32) | ((uint64_t)feetxid.uints[0] << 16) | (uint32_t)feevout); |
|
|
|
for (i=0; i<sizeof(Ridqids)/sizeof(*Ridqids); i++) |
|
|
@ -71,7 +83,7 @@ int32_t LP_statslog_parsequote(char *method,cJSON *lineobj) |
|
|
|
if ( duplicate == 0 ) |
|
|
|
{ |
|
|
|
Ridqids[LP_numridqids % (sizeof(Ridqids)/sizeof(*Ridqids))] = ridqid; |
|
|
|
printf("%10s ridqid.%-16llx -> %d %s/v%d\n",method,(long long)ridqid,(int32_t)(LP_numridqids % (sizeof(Ridqids)/sizeof(*Ridqids))),bits256_str(str,desttxid),destvout); |
|
|
|
printf("%10s ridqid.%-16llx -> [%d] %.8f %s -> %.8f %s %.8f\n",method,(long long)ridqid,(int32_t)(LP_numridqids % (sizeof(Ridqids)/sizeof(*Ridqids))),dstr(satoshis),base,dstr(destsatoshis),rel,qprice); |
|
|
|
LP_numridqids++; |
|
|
|
} |
|
|
|
} |
|
|
|