mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-08-23 21:18:04 +00:00
normalization of methods
This commit is contained in:
@@ -415,7 +415,7 @@ public class HlvTests
|
||||
const int dataCount = 50;
|
||||
var barSeries = GenerateTestData(dataCount);
|
||||
|
||||
var result = Hlv.Calculate(barSeries, period: 10);
|
||||
var result = Hlv.Batch(barSeries, period: 10);
|
||||
|
||||
Assert.Equal(dataCount, result.Count);
|
||||
}
|
||||
@@ -599,7 +599,7 @@ public class HlvTests
|
||||
{
|
||||
var bars = GenerateTestData(100);
|
||||
|
||||
var result = Hlv.Calculate(bars, period: 14);
|
||||
var result = Hlv.Batch(bars, period: 14);
|
||||
|
||||
Assert.Equal(100, result.Count);
|
||||
Assert.True(double.IsFinite(result[result.Count - 1].Value));
|
||||
@@ -610,9 +610,9 @@ public class HlvTests
|
||||
{
|
||||
var bars = GenerateTestData(10);
|
||||
|
||||
Assert.Throws<ArgumentException>(() => Hlv.Calculate(bars, period: 0));
|
||||
Assert.Throws<ArgumentException>(() => Hlv.Calculate(bars, period: -1));
|
||||
Assert.Throws<ArgumentException>(() => Hlv.Calculate(bars, period: 10, annualize: true, annualPeriods: 0));
|
||||
Assert.Throws<ArgumentException>(() => Hlv.Batch(bars, period: 0));
|
||||
Assert.Throws<ArgumentException>(() => Hlv.Batch(bars, period: -1));
|
||||
Assert.Throws<ArgumentException>(() => Hlv.Batch(bars, period: 10, annualize: true, annualPeriods: 0));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
||||
@@ -192,7 +192,7 @@ public class HlvValidationTests
|
||||
}
|
||||
|
||||
// Batch calculation
|
||||
var batchResult = Hlv.Calculate(bars, 14);
|
||||
var batchResult = Hlv.Batch(bars, 14);
|
||||
|
||||
// Compare last values
|
||||
Assert.Equal(batchResult.Last.Value, streamingHlv.Last.Value, 8);
|
||||
|
||||
@@ -335,7 +335,7 @@ public sealed class Hlv : AbstractBase
|
||||
/// <param name="annualize">Whether to annualize.</param>
|
||||
/// <param name="annualPeriods">Periods per year.</param>
|
||||
/// <returns>A TSeries containing the volatility values.</returns>
|
||||
public static TSeries Calculate(TBarSeries source, int period = 20, bool annualize = true, int annualPeriods = 252)
|
||||
public static TSeries Batch(TBarSeries source, int period = 20, bool annualize = true, int annualPeriods = 252)
|
||||
{
|
||||
var hlv = new Hlv(period, annualize, annualPeriods);
|
||||
return hlv.Update(source);
|
||||
@@ -344,7 +344,7 @@ public sealed class Hlv : AbstractBase
|
||||
/// <summary>
|
||||
/// Calculates HLV for a TSeries (treats values as pre-computed Parkinson estimators).
|
||||
/// </summary>
|
||||
public static TSeries Calculate(TSeries source, int period = 20, bool annualize = true, int annualPeriods = 252)
|
||||
public static TSeries Batch(TSeries source, int period = 20, bool annualize = true, int annualPeriods = 252)
|
||||
{
|
||||
if (period <= 0)
|
||||
{
|
||||
@@ -474,6 +474,14 @@ public sealed class Hlv : AbstractBase
|
||||
}
|
||||
}
|
||||
|
||||
public static (TSeries Results, Hlv Indicator) Calculate(TBarSeries source, int period = 20, bool annualize = true, int annualPeriods = 252)
|
||||
{
|
||||
var indicator = new Hlv(period, annualize, annualPeriods);
|
||||
TSeries results = indicator.Update(source);
|
||||
return (results, indicator);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Batch calculation from pre-computed Parkinson estimators.
|
||||
/// </summary>
|
||||
@@ -548,4 +556,4 @@ public sealed class Hlv : AbstractBase
|
||||
output[i] = volatility;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user