feat(Core): update DTOs and shared models
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace FinlyticCore.Models.Analyzer;
|
||||
|
||||
public class AssetRecommendationDto
|
||||
{
|
||||
[JsonPropertyName("mode")]
|
||||
public string Mode { get; set; } = "AUTO_SCREENER";
|
||||
|
||||
[JsonPropertyName("timestamp")]
|
||||
public DateTime Timestamp { get; set; } = DateTime.UtcNow;
|
||||
|
||||
[JsonPropertyName("recommended_asset")]
|
||||
public RecommendedAssetInfo RecommendedAsset { get; set; } = new();
|
||||
|
||||
[JsonPropertyName("rationale")]
|
||||
public RecommendationRationaleInfo Rationale { get; set; } = new();
|
||||
|
||||
[JsonPropertyName("action_required")]
|
||||
public string ActionRequired { get; set; } = "PROMPT_USER_FOR_MANUAL_TRADE"; // "PROMPT_USER_FOR_MANUAL_TRADE" | "NO_ACTION"
|
||||
}
|
||||
|
||||
public class RecommendedAssetInfo
|
||||
{
|
||||
[JsonPropertyName("symbol")]
|
||||
public string Symbol { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("company_name")]
|
||||
public string CompanyName { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("isin")]
|
||||
public string Isin { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("market")]
|
||||
public string Market { get; set; } = "US_EQUITIES";
|
||||
|
||||
[JsonPropertyName("bias")]
|
||||
public string Bias { get; set; } = "BULLISH"; // "BULLISH" | "BEARISH" | "NEUTRAL"
|
||||
|
||||
[JsonPropertyName("confidence_score")]
|
||||
public double ConfidenceScore { get; set; }
|
||||
|
||||
[JsonPropertyName("timeframe")]
|
||||
public string Timeframe { get; set; } = "1D";
|
||||
}
|
||||
|
||||
public class RecommendationRationaleInfo
|
||||
{
|
||||
[JsonPropertyName("pattern_detected")]
|
||||
public string PatternDetected { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("vix_context")]
|
||||
public string VixContext { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("key_technical_levels")]
|
||||
public KeyTechnicalLevelsInfo KeyTechnicalLevels { get; set; } = new();
|
||||
|
||||
[JsonPropertyName("summary")]
|
||||
public string Summary { get; set; } = string.Empty;
|
||||
}
|
||||
|
||||
public class KeyTechnicalLevelsInfo
|
||||
{
|
||||
[JsonPropertyName("support")]
|
||||
public List<double> Support { get; set; } = new();
|
||||
|
||||
[JsonPropertyName("resistance")]
|
||||
public List<double> Resistance { get; set; } = new();
|
||||
}
|
||||
Reference in New Issue
Block a user