normalization of methods

This commit is contained in:
Miha Kralj
2026-02-10 21:33:16 -08:00
parent 915d7a007b
commit 6d6259a47d
527 changed files with 10525 additions and 2123 deletions
+6 -6
View File
@@ -268,7 +268,7 @@ public class CcvTests
{
ts.Add(new TValue(times[i], close[i]));
}
var batchResult = Ccv.Calculate(ts, 20);
var batchResult = Ccv.Batch(ts, 20);
Assert.Equal(iterativeResult, batchResult[batchResult.Count - 1].Value, 1e-8);
}
@@ -286,7 +286,7 @@ public class CcvTests
ts.Add(new TValue(times[i], close[i]));
}
var result = Ccv.Calculate(ts, 20);
var result = Ccv.Batch(ts, 20);
Assert.Equal(100, result.Count);
Assert.True(double.IsFinite(result[result.Count - 1].Value));
@@ -301,10 +301,10 @@ public class CcvTests
ts.Add(new TValue(DateTime.UtcNow.AddMinutes(i), 100 + i));
}
Assert.Throws<ArgumentException>(() => Ccv.Calculate(ts, 0));
Assert.Throws<ArgumentException>(() => Ccv.Calculate(ts, -1));
Assert.Throws<ArgumentException>(() => Ccv.Calculate(ts, 5, 0));
Assert.Throws<ArgumentException>(() => Ccv.Calculate(ts, 5, 4));
Assert.Throws<ArgumentException>(() => Ccv.Batch(ts, 0));
Assert.Throws<ArgumentException>(() => Ccv.Batch(ts, -1));
Assert.Throws<ArgumentException>(() => Ccv.Batch(ts, 5, 0));
Assert.Throws<ArgumentException>(() => Ccv.Batch(ts, 5, 4));
}
[Fact]
+8 -1
View File
@@ -299,7 +299,7 @@ public sealed class Ccv : AbstractBase
/// <summary>
/// Calculates CCV for entire series.
/// </summary>
public static TSeries Calculate(TSeries source, int period, int method = 1)
public static TSeries Batch(TSeries source, int period, int method = 1)
{
if (period <= 0)
{
@@ -448,4 +448,11 @@ public sealed class Ccv : AbstractBase
output[i] = double.IsFinite(result) ? result : 0.0;
}
}
public static (TSeries Results, Ccv Indicator) Calculate(TSeries source, int period, int method = 1)
{
var indicator = new Ccv(period, method);
TSeries results = indicator.Update(source);
return (results, indicator);
}
}