[CodeFactor] Apply fixes to commit 4a01f03

This commit is contained in:
codefactor-io
2026-03-11 03:35:12 +00:00
parent 4a01f03cb4
commit 567fa89465
63 changed files with 293 additions and 302 deletions
-1
View File
@@ -124,7 +124,6 @@ public sealed class Acf : AbstractBase
double oldVal = _buffer.Oldest;
_sum -= oldVal;
_sumSq = Math.FusedMultiplyAdd(-oldVal, oldVal, _sumSq);
}
// Add new value
@@ -507,5 +507,4 @@ public sealed class Cointegration : AbstractBase
return (result, indicator);
}
}
@@ -357,5 +357,4 @@ public sealed class Correlation : AbstractBase
return (result, indicator);
}
}
+8 -8
View File
@@ -117,7 +117,7 @@ public sealed class Covariance : AbstractBase
if (n >= 2)
{
// Standard covariance formula: (sumXY - sumX*sumY/n) / denom
double numerator = _sumXY - (_sumX * _sumY) / n;
double numerator = _sumXY - ((_sumX * _sumY) / n);
double denominator = _isPopulation ? n : (n - 1);
cov = numerator / denominator;
}
@@ -278,7 +278,7 @@ public sealed class Covariance : AbstractBase
double n = i + 1;
if (n >= 2)
{
double numerator = sumXY - (sumX * sumY) / n;
double numerator = sumXY - ((sumX * sumY) / n);
double denominator = isPopulation ? n : (n - 1);
output[i] = numerator / denominator;
}
@@ -309,7 +309,7 @@ public sealed class Covariance : AbstractBase
sumX = sumX - oldX + x;
sumY = sumY - oldY + y;
sumXY = sumXY - oldX * oldY + x * y;
sumXY = sumXY - (oldX * oldY) + (x * y);
bufferX[bufferIndex] = x;
bufferY[bufferIndex] = y;
@@ -320,7 +320,7 @@ public sealed class Covariance : AbstractBase
}
double n = period;
double numerator = sumXY - (sumX * sumY) / n;
double numerator = sumXY - ((sumX * sumY) / n);
double denominator = isPopulation ? n : (n - 1);
output[i] = numerator / denominator;
@@ -364,7 +364,7 @@ public sealed class Covariance : AbstractBase
double n = i + 1;
if (n >= 2)
{
double num = sumXY - (sumX * sumY) / n;
double num = sumXY - ((sumX * sumY) / n);
double den = isPopulation ? n : (n - 1);
Unsafe.Add(ref outRef, i) = num / den;
}
@@ -400,7 +400,7 @@ public sealed class Covariance : AbstractBase
var vInvDenom = Vector256.Create(invDenom);
var vZero = Vector256<double>.Zero;
int simdEnd = period + ((len - period) / VectorWidth) * VectorWidth;
int simdEnd = period + (((len - period) / VectorWidth) * VectorWidth);
int tickCount = period;
for (int i = period; i < simdEnd; i += VectorWidth)
@@ -513,9 +513,9 @@ public sealed class Covariance : AbstractBase
sumX = sumX - oldX + x;
sumY = sumY - oldY + y;
sumXY = sumXY - oldX * oldY + x * y;
sumXY = sumXY - (oldX * oldY) + (x * y);
double numerator = sumXY - sumX * sumY * invN;
double numerator = sumXY - (sumX * sumY * invN);
Unsafe.Add(ref outRef, i) = numerator * invDenom;
}
}
+15 -15
View File
@@ -150,7 +150,7 @@ public sealed class Kurtosis : AbstractBase
// Second central moment (variance): m₂ = Σ(x-μ)²/n
// = (SumSq - Sum²/n) / n
double m2Numerator = _sumSq - (_sum * _sum) / n;
double m2Numerator = _sumSq - ((_sum * _sum) / n);
if (m2Numerator < Epsilon)
{
m2Numerator = 0;
@@ -165,10 +165,10 @@ public sealed class Kurtosis : AbstractBase
// m₄ = SumQu/n - 4·mean·SumCu/n + 6·mean²·SumSq/n - 3·mean⁴
// Note: last term -4·mean³·Sum/n + mean⁴ = -4·mean⁴ + mean⁴ = -3·mean⁴
double meanSq = mean * mean;
double m4 = _sumQu / n
- 4.0 * mean * _sumCu / n
+ 6.0 * meanSq * _sumSq / n
- 3.0 * meanSq * meanSq;
double m4 = (_sumQu / n)
- (4.0 * mean * _sumCu / n)
+ (6.0 * meanSq * _sumSq / n)
- (3.0 * meanSq * meanSq);
// Population excess kurtosis: g₂ = m₄/m₂² - 3
double g2 = (m4 / (m2 * m2)) - 3.0;
@@ -184,7 +184,7 @@ public sealed class Kurtosis : AbstractBase
double denom = (n - 2.0) * (n - 3.0);
if (Math.Abs(denom) > Epsilon)
{
kurtosis = ((n - 1.0) / denom) * ((n + 1.0) * g2 + 6.0);
kurtosis = ((n - 1.0) / denom) * (((n + 1.0) * g2) + 6.0);
}
}
}
@@ -327,7 +327,7 @@ public sealed class Kurtosis : AbstractBase
{
double mean = sum / n;
double m2Numerator = sumSq - (sum * sum) / n;
double m2Numerator = sumSq - ((sum * sum) / n);
if (m2Numerator < Epsilon)
{
return 0;
@@ -342,10 +342,10 @@ public sealed class Kurtosis : AbstractBase
// Fourth central moment via raw moments
double meanSq = mean * mean;
double m4 = sumQu / n
- 4.0 * mean * sumCu / n
+ 6.0 * meanSq * sumSq / n
- 3.0 * meanSq * meanSq;
double m4 = (sumQu / n)
- (4.0 * mean * sumCu / n)
+ (6.0 * meanSq * sumSq / n)
- (3.0 * meanSq * meanSq);
double g2 = (m4 / (m2 * m2)) - 3.0;
@@ -361,7 +361,7 @@ public sealed class Kurtosis : AbstractBase
return 0;
}
return ((n - 1.0) / denom) * ((n + 1.0) * g2 + 6.0);
return ((n - 1.0) / denom) * (((n + 1.0) * g2) + 6.0);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
@@ -415,8 +415,8 @@ public sealed class Kurtosis : AbstractBase
double oldSq = oldVal * oldVal;
sum = sum - oldVal + val;
sumSq = sumSq - oldSq + valSq;
sumCu = sumCu - oldSq * oldVal + valSq * val;
sumQu = sumQu - oldSq * oldSq + valSq * valSq;
sumCu = sumCu - (oldSq * oldVal) + (valSq * val);
sumQu = sumQu - (oldSq * oldSq) + (valSq * valSq);
output[i] = CalculateKurtosisFromSums(sum, sumSq, sumCu, sumQu, period, isPopulation);
@@ -507,7 +507,7 @@ public sealed class Kurtosis : AbstractBase
var vFisherNp1 = Vector256.Create(isPopulation ? 1.0 : fisherNp1);
var vFisherAdd = Vector256.Create(fisherAdd);
int simdEnd = period + ((len - period) / VectorWidth) * VectorWidth;
int simdEnd = period + (((len - period) / VectorWidth) * VectorWidth);
int tickCount = period;
for (int i = period; i < simdEnd; i += VectorWidth)
+5 -5
View File
@@ -103,7 +103,7 @@ public sealed class Skew : AbstractBase
// Calculate 2nd moment (Variance)
// m2 = Sum((x-mean)^2) / n = (SumSq - Sum^2/n) / n
double m2Numerator = _sumSq - (_sum * _sum) / n;
double m2Numerator = _sumSq - ((_sum * _sum) / n);
if (m2Numerator < Epsilon)
{
m2Numerator = 0;
@@ -312,8 +312,8 @@ public sealed class Skew : AbstractBase
}
sum = sum - oldVal + val;
sumSq = sumSq - oldVal * oldVal + val * val;
sumCu = sumCu - oldVal * oldVal * oldVal + val * val * val;
sumSq = sumSq - (oldVal * oldVal) + (val * val);
sumCu = sumCu - (oldVal * oldVal * oldVal) + (val * val * val);
output[i] = CalculateSkewFromSums(sum, sumSq, sumCu, period, isPopulation);
@@ -349,7 +349,7 @@ public sealed class Skew : AbstractBase
{
double mean = sum / n;
double m2Numerator = sumSq - (sum * sum) / n;
double m2Numerator = sumSq - ((sum * sum) / n);
if (m2Numerator < Epsilon)
{
return 0;
@@ -422,7 +422,7 @@ public sealed class Skew : AbstractBase
var vEpsilon = Vector256.Create(Epsilon);
var vZero = Vector256<double>.Zero;
int simdEnd = period + ((len - period) / VectorWidth) * VectorWidth;
int simdEnd = period + (((len - period) / VectorWidth) * VectorWidth);
int tickCount = period;
for (int i = period; i < simdEnd; i += VectorWidth)
+1 -1
View File
@@ -237,7 +237,7 @@ public sealed class Spearman : AbstractBase
}
// Average rank: 1-based position = countSmaller + (countEqual - 1) / 2.0 + 1
ranks[i] = countSmaller + (countEqual - 1) * 0.5 + 1.0;
ranks[i] = countSmaller + ((countEqual - 1) * 0.5) + 1.0;
}
}
/// <summary>Not supported. This indicator requires two input spans.</summary>
+10 -10
View File
@@ -97,7 +97,7 @@ public sealed class Variance : AbstractBase
// Using Sum:
// Var = (SumSq - (Sum*Sum)/N) / ...
double numerator = _sumSq - (_buffer.Sum * _buffer.Sum) / n;
double numerator = _sumSq - ((_buffer.Sum * _buffer.Sum) / n);
// Handle floating point noise
if (numerator < 0)
@@ -271,7 +271,7 @@ public sealed class Variance : AbstractBase
double n = i + 1;
if (n > 1)
{
double numerator = sumSq - (sum * sum) / n;
double numerator = sumSq - ((sum * sum) / n);
if (numerator < 0)
{
numerator = 0;
@@ -310,7 +310,7 @@ public sealed class Variance : AbstractBase
}
double n = period;
double numerator = sumSq - (sum * sum) / n;
double numerator = sumSq - ((sum * sum) / n);
if (numerator < 0)
{
numerator = 0;
@@ -343,7 +343,7 @@ public sealed class Variance : AbstractBase
double n = i + 1;
if (n > 1)
{
double num = sumSq - (sum * sum) / n;
double num = sumSq - ((sum * sum) / n);
if (num < 0)
{
num = 0;
@@ -382,7 +382,7 @@ public sealed class Variance : AbstractBase
var vInvDenom = Vector512.Create(invDenom);
var vZero = Vector512<double>.Zero;
int simdEnd = period + ((len - period) / VectorWidth) * VectorWidth;
int simdEnd = period + (((len - period) / VectorWidth) * VectorWidth);
int tickCount = period;
for (int i = period; i < simdEnd; i += VectorWidth)
@@ -465,7 +465,7 @@ public sealed class Variance : AbstractBase
sumSq = Math.FusedMultiplyAdd(-oldVal, oldVal, sumSq);
sumSq = Math.FusedMultiplyAdd(val, val, sumSq);
double numerator = sumSq - sum * sum * invN;
double numerator = sumSq - (sum * sum * invN);
if (numerator < 0)
{
numerator = 0;
@@ -498,7 +498,7 @@ public sealed class Variance : AbstractBase
var vInvDenom = Vector128.Create(invDenom);
var vZero = Vector128<double>.Zero;
int simdEnd = period + ((len - period) / VectorWidth) * VectorWidth;
int simdEnd = period + (((len - period) / VectorWidth) * VectorWidth);
int tickCount = period;
for (int i = period; i < simdEnd; i += VectorWidth)
@@ -569,7 +569,7 @@ public sealed class Variance : AbstractBase
sumSq = Math.FusedMultiplyAdd(-oldVal, oldVal, sumSq);
sumSq = Math.FusedMultiplyAdd(val, val, sumSq);
double numerator = sumSq - sum * sum * invN;
double numerator = sumSq - (sum * sum * invN);
if (numerator < 0)
{
numerator = 0;
@@ -602,7 +602,7 @@ public sealed class Variance : AbstractBase
var vInvDenom = Vector256.Create(invDenom);
var vZero = Vector256<double>.Zero;
int simdEnd = period + ((len - period) / VectorWidth) * VectorWidth;
int simdEnd = period + (((len - period) / VectorWidth) * VectorWidth);
int tickCount = period;
for (int i = period; i < simdEnd; i += VectorWidth)
@@ -693,7 +693,7 @@ public sealed class Variance : AbstractBase
sumSq = Math.FusedMultiplyAdd(-oldVal, oldVal, sumSq);
sumSq = Math.FusedMultiplyAdd(val, val, sumSq);
double numerator = sumSq - sum * sum * invN;
double numerator = sumSq - (sum * sum * invN);
if (numerator < 0)
{
numerator = 0;