feat(ta): dynamic settings, IFinlyticLogger, live log streaming, and EF migration

This commit is contained in:
2026-08-15 21:30:05 +02:00
parent a94c36a878
commit 1522c3480f
9 changed files with 494 additions and 89 deletions
@@ -0,0 +1,26 @@
using FinlyticCore.Models.Settings;
namespace FinlyticTechnicalAnalysis.Util;
public static class SettingKeys
{
// --- Logging-Kanäle ---
public static readonly SettingKey<bool> TechnicalAnalysisChannel = new("Logging.Channel.TechnicalAnalysis", true);
public static readonly SettingKey<bool> MqttChannel = new("Logging.Channel.MQTT", true);
public static readonly SettingKey<bool> HealthPingChannel = new("Logging.Channel.Health", true);
// --- Indikator-Konfiguration ---
public static readonly SettingKey<int> RsiPeriod = new("Indicators.RsiPeriod", 14);
public static readonly SettingKey<int> MacdFastPeriod = new("Indicators.MacdFastPeriod", 12);
public static readonly SettingKey<int> MacdSlowPeriod = new("Indicators.MacdSlowPeriod", 26);
public static readonly SettingKey<int> MacdSignalPeriod = new("Indicators.MacdSignalPeriod", 9);
public static readonly SettingKey<int> EmaShortPeriod = new("Indicators.EmaShortPeriod", 50);
public static readonly SettingKey<int> EmaLongPeriod = new("Indicators.EmaLongPeriod", 200);
public static readonly SettingKey<int> BollingerBandsPeriod = new("Indicators.BollingerBandsPeriod", 20);
public static readonly SettingKey<double> BollingerBandsStdDev = new("Indicators.BollingerBandsStdDev", 2.0);
public static readonly SettingKey<int> AtrPeriod = new("Indicators.AtrPeriod", 14);
// --- Cache & Performance ---
public static readonly SettingKey<int> CacheDurationMinutes = new("Cache.DurationMinutes", 60);
public static readonly SettingKey<bool> EnableAutoCache = new("Feature.EnableAutoCache", true);
}