29 lines
1.3 KiB
C#
29 lines
1.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace FinlyticCore.Dtos.TechnicalAnalysis;
|
|
|
|
public record PatternPointDto(
|
|
[property: JsonPropertyName("time")] DateTime Time,
|
|
[property: JsonPropertyName("price")] decimal Price
|
|
);
|
|
|
|
public record BreakoutSignalDto(
|
|
[property: JsonPropertyName("time")] DateTime Time,
|
|
[property: JsonPropertyName("direction")] string Direction, // "BUY" or "SELL"
|
|
[property: JsonPropertyName("triggerPrice")] decimal TriggerPrice,
|
|
[property: JsonPropertyName("targetPrice")] decimal TargetPrice,
|
|
[property: JsonPropertyName("potentialPercent")] decimal? PotentialPercent = null
|
|
);
|
|
|
|
public record ChartPatternDto(
|
|
[property: JsonPropertyName("type")] string Type, // "AscendingTriangle", "DescendingTriangle", "SymmetricalTriangle", "DoubleBottom", "DoubleTop", "HeadAndShoulders"
|
|
[property: JsonPropertyName("description")] string? Description,
|
|
[property: JsonPropertyName("upperLine")] List<PatternPointDto> UpperLine,
|
|
[property: JsonPropertyName("lowerLine")] List<PatternPointDto> LowerLine,
|
|
[property: JsonPropertyName("apexTime")] DateTime? ApexTime,
|
|
[property: JsonPropertyName("breakoutSignal")] BreakoutSignalDto? BreakoutSignal,
|
|
[property: JsonPropertyName("confidencePercent")] decimal? ConfidencePercent = null
|
|
);
|