Files
QuanTAlib/lib/statistics/linreg/LinReg.Validation.Tests.cs
T
Miha Kralj 13d7c1215d Refactor code formatting and improve consistency across various test files
- Removed unnecessary blank lines in multiple test files to enhance readability.
- Ensured consistent spacing and formatting in the `Trima`, `Usf`, `Vidya`, `Wma`, and `Atr` test classes.
- Updated comments for clarity and consistency in the `Atr` and `Adl` classes.
- Adjusted project files for better structure and maintainability.
2025-12-28 17:44:08 -08:00

62 lines
1.6 KiB
C#

using System;
using System.Linq;
using System.Runtime.CompilerServices;
using Xunit;
using Skender.Stock.Indicators;
using OoplesFinance.StockIndicators;
using OoplesFinance.StockIndicators.Models;
using System.Collections.Generic;
namespace QuanTAlib.Tests;
public sealed class LinRegValidationTests : IDisposable
{
private readonly ValidationTestData _data;
public LinRegValidationTests()
{
_data = new ValidationTestData();
}
public void Dispose()
{
_data.Dispose();
}
[SkipLocalsInit]
[Fact]
public void Validate_Against_Skender_Slope()
{
var period = 14;
var skender = _data.SkenderQuotes.GetSlope(period).ToList();
var linreg = new LinReg(period);
var slopeSeries = new TSeries();
foreach (var item in _data.Data)
{
linreg.Update(item);
slopeSeries.Add(new TValue(item.Time, linreg.Slope));
}
ValidationHelper.VerifyData(slopeSeries, skender, x => x.Slope, tolerance: ValidationHelper.DefaultTolerance);
}
[SkipLocalsInit]
[Fact]
public void Validate_Against_Skender_RSquared()
{
var period = 14;
var skender = _data.SkenderQuotes.GetSlope(period).ToList();
var linreg = new LinReg(period);
var r2Series = new TSeries();
foreach (var item in _data.Data)
{
linreg.Update(item);
r2Series.Add(new TValue(item.Time, linreg.RSquared));
}
ValidationHelper.VerifyData(r2Series, skender, x => x.RSquared, tolerance: ValidationHelper.DefaultTolerance);
}
}