Skip to content

Commit c64ff87

Browse files
committed
use Spectre.Console to format analyst output
1 parent f1f234d commit c64ff87

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

src/AiHedgeFund.Console/ConsoleOutputFormatter.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,12 @@ public static void PrintAgentReport(string agentKey, string modelName, string ri
1010
{
1111
string Colorize(string text, string color)
1212
{
13-
return $"[{color}]{text}[/]";
13+
return $"[{color}]{EscapeMarkup(text)}[/]";
14+
}
15+
16+
string EscapeMarkup(string text)
17+
{
18+
return text.Replace("[", "[[").Replace("]", "]]");
1419
}
1520

1621
var displayName = agentKey.ToDisplayName();
@@ -24,7 +29,7 @@ string Colorize(string text, string color)
2429
foreach (var report in reports)
2530
{
2631
AnsiConsole.WriteLine(); // blank line
27-
AnsiConsole.MarkupLine($"[Ticker: {Colorize(report.TradeSignal.Ticker, "green")}]");
32+
AnsiConsole.MarkupLine($"[[Ticker: {Colorize(report.TradeSignal.Ticker, "green")}]]");
2833
AnsiConsole.MarkupLine($"{Colorize("------------------------------------------------------------------", "gray")}");
2934
AnsiConsole.MarkupLine($"Signal : {Colorize(report.TradeSignal.Signal, "white")} (Confidence: {report.TradeSignal.Confidence})");
3035
AnsiConsole.MarkupLine($"Reasoning : {Colorize(report.TradeSignal.Reasoning, "white")}");

src/AiHedgeFund.Console/Program.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ private static async Task Main(string[] args)
2828
services.AddSingleton<IValuationEngine, DefaultValuationEngine>();
2929
services.AddSingleton<IHttpLib, OpenAiHttp>();
3030
services.AddSingleton<TradingInitializer>();
31+
services.AddSingleton<DataFetcher>();
3132
services.AddSingleton<IAgentRegistry, AgentRegistry>();
3233
services.AddSingleton<BenGrahamAgent>();
3334
services.AddSingleton<CathieWoodAgent>();

0 commit comments

Comments
 (0)