У меня есть функция, которая вычисляет дисперсию портфеля, но я получаю небольшую проблему, здесь ошибки с (List.sum(eachlist)) / (decimal(List.length(eachlist))
) для пояснения, я выбираю каждый список из списков списков и получаю его среднее / среднее и проходное
Error FS0001 This expression was expected to have type
'List<decimal> -> 'a'
let assetreturns = [[1M;2M;3M];[4M;5M;6M];[7M;8M;9M];[10M;11M;12M]]
let weights = [1M;2M;3M;4M]
let var = assetreturns |> List.map(fun eachlist -> eachlist
|> (List.sum (eachlist)) / (decimal(List.length(eachlist)))
|> List.averageBy (fun x -> sqr (eachlist - x)))
let weightssquared = weights |> List.map(fun x -> x * x)
let porvarleft = List.zip weightssquared var |> List.sumBy(fun (a,b) -> a * b)
let porvarright = List.zip var weights |> List.sumBy(fun (a,b) -> a * b)
let portfoliovarright = porvarright * 2M
let portfoliovariance =(porvarleft + portfoliovarright)
portfoliovariance```