using System.Collections.Generic;
public decimal Ema12 { get; set; }
public decimal Ema26 { get; set; }
public decimal Ema { get; set; }
public decimal ADL { get; set; }
static double RSquared(IEnumerable<double> s) {
public static void Main() {
new CalculationData { Ema12 = 1, Ema26 = 2, Ema = 3, ADL = 4 },
new CalculationData { Ema12 = 21, Ema26 = 2, Ema = 3, ADL = 4 },
new CalculationData { Ema12 = 21, Ema26 = 52, Ema = 63, ADL = 4 },
new CalculationData { Ema12 = 21, Ema26 = 52, Ema = 63, ADL = 4 },
new CalculationData { Ema12 = 41, Ema26 = 52, Ema = 63, ADL = 74 },
var properties = typeof(CalculationData).GetProperties();
var results = properties.Select((p) => {
var series = list.Select((data) => (double)(decimal)p.GetValue(data));
RSquared = RSquared(series)
foreach(var item in results) {