29 lines
730 B
C#
29 lines
730 B
C#
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using FinlyticCore.Models.Analyzer;
|
|
|
|
namespace FinlyticAnalyzer.Services;
|
|
|
|
public interface IVixTrackerService
|
|
{
|
|
/// <summary>
|
|
/// Gets the current VIX value.
|
|
/// </summary>
|
|
decimal GetCurrentVix();
|
|
|
|
/// <summary>
|
|
/// Gets the current market regime based on VIX.
|
|
/// </summary>
|
|
VixMarketRegime GetCurrentRegime();
|
|
|
|
/// <summary>
|
|
/// Updates the VIX tracker with a new tick value.
|
|
/// </summary>
|
|
void UpdateVixFromTick(decimal vixValue);
|
|
|
|
/// <summary>
|
|
/// Polls the VIX asynchronously and returns its value.
|
|
/// </summary>
|
|
Task<decimal> PollVixAsync(CancellationToken cancellationToken = default);
|
|
}
|