feat(technicals): add technical analysis microservice with indicator engines, pattern detectors, and strategies

This commit is contained in:
2026-08-24 21:36:05 +02:00
parent 12e7b57b16
commit f43ce2b7e9
36 changed files with 6792 additions and 0 deletions
@@ -0,0 +1,69 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace FinlyticTechnicals.Migrations
{
/// <inheritdoc />
public partial class AddMonitoredUniverseTable : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<DateTime>(
name: "UniverseEnteredAtUtc",
table: "fta_technical_setups",
type: "timestamp with time zone",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "UniverseSource",
table: "fta_technical_setups",
type: "character varying(20)",
maxLength: 20,
nullable: true);
migrationBuilder.CreateTable(
name: "fta_monitored_universe_assets",
columns: table => new
{
Isin = table.Column<string>(type: "character varying(20)", maxLength: 20, nullable: false),
Symbol = table.Column<string>(type: "character varying(30)", maxLength: 30, nullable: true),
Source = table.Column<string>(type: "character varying(20)", maxLength: 20, nullable: false),
Priority = table.Column<int>(type: "integer", nullable: false),
AddedAtUtc = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
ExpiresAtUtc = table.Column<DateTime>(type: "timestamp with time zone", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_fta_monitored_universe_assets", x => x.Isin);
});
migrationBuilder.CreateIndex(
name: "IX_fta_monitored_universe_assets_ExpiresAtUtc",
table: "fta_monitored_universe_assets",
column: "ExpiresAtUtc");
migrationBuilder.CreateIndex(
name: "IX_fta_monitored_universe_assets_Source",
table: "fta_monitored_universe_assets",
column: "Source");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "fta_monitored_universe_assets");
migrationBuilder.DropColumn(
name: "UniverseEnteredAtUtc",
table: "fta_technical_setups");
migrationBuilder.DropColumn(
name: "UniverseSource",
table: "fta_technical_setups");
}
}
}