fix: 处理策略config字段双层转义的问题

This commit is contained in:
claw_bot 2026-03-10 05:45:07 +00:00
parent 02c0864393
commit bd7f4d2a3d

View File

@ -51,7 +51,14 @@ public class PortfolioService : IPortfolioService
// 风险平价策略
if (strategy.Type?.Equals("risk_parity", StringComparison.OrdinalIgnoreCase) == true)
{
var config = System.Text.Json.JsonSerializer.Deserialize<RiskParityConfig>(strategy.Config);
// 处理可能的双层转义
string configJson = strategy.Config;
if (configJson.StartsWith("\"") && configJson.EndsWith("\""))
{
// 去掉外层的引号和转义
configJson = System.Text.Json.JsonSerializer.Deserialize<string>(configJson);
}
var config = System.Text.Json.JsonSerializer.Deserialize<RiskParityConfig>(configJson);
if (config?.Assets != null)
{
foreach (var asset in config.Assets)