public VolumeGraph(VolumeContext context, NetworkGraph networkGraph, PriceGraph priceGraph) { Context = context; NetworkGraph = networkGraph; PriceGraph = priceGraph; Meta = networkGraph.Meta; _dN.BuildData(PriceGraph.PairsByNetwork); var id = "VolumeGraph".GetObjectIdHashCode(); if (context.FlushVolume) { VolumeDbProvider.Clear(id); } VolumeDbProvider = new VolumeDbProvider(id); _volume = GetAllVolumeData(); ApplyBtc(); FilterVolume(_dN.PairsByNetwork); VolumeExceptionCheck(); }
public PriceGraph(PricesContext context, NetworkGraph networkGraph) { PricesContext = context; NetworkContext = networkGraph.Context; NetworkGraph = networkGraph; _dN.BuildData(networkGraph.PairsByNetworkN); Refresh(); }
public void Confirm(NetworkGraph graph) { ForApi = Networks.Select(network => new NetworkApiPair(network, Pair, graph)).ToList(); var bad = ForApi.Where(x => x.Pair == null).ToList(); if (!bad.Any()) { return; } ForApi = ForApi.Where(x => x.Pair != null).ToList(); Networks = ForApi.Select(x => x.Network).ToList(); }
public PriceGraph(PricesContext context, NetworkGraph networkGraph) { PricesContext = context; NetworkContext = networkGraph.Context; NetworkGraph = networkGraph; _dN.BuildData(networkGraph.PairsByNetworkN); var source = _dN.DeNormalise(NetworkGraph.PairsByNetworkRaw); _pricesByNetwork = PopulatePriceGraph(source).ToDictionary(x => x.Key, y => y.Value.AsReadOnlyList()); RemoveEmptyPricing(_pricesByNetwork); _dN.BuildData(_pricesByNetwork.ToDictionary(x => x.Key, y => y.Value.Select(x => x.Pair).AsReadOnlyList())); _prices = _pricesByNetwork.Values.SelectMany(x => x).ToList(); _pricesByPair = _prices.GroupBy(x => x.Pair).ToDictionary(x => x.Key, y => y.AsReadOnlyList()); }
public NetworkApiPair(Network network, AssetPair pair, NetworkGraph graph) { Network = network; Pair = graph.GetOriginalPair(network, pair); }