Jak liczymy średni kurs?

Od kilku lat zajmujemy się bitcoinem. Do wielu projektów programistycznych potrzebowaliśmy dane dotyczące średniego kursu na polskich giełdach. Przygotowaliśmy więc niestandardowy schemat obliczenia średniego kursu, który do naszych potrzeb okazał się odpowiedni.
Do obliczenia kursu średniego używamy trzech wartosci: najlepszej ofery sprzedaży (ask/sell), najlepszej ofery kupna (bid/buy) i ceny ostatniej transakcji (last). Użycie wszystkich 3 wartości pozwala uzyskać wiarygodny wynik nawet w przypadku dużego spreadu na giełdzie. Z tych trzech wartości obliczamy zwykłą średnią arytmetyczną.
Następnie używamy funkcji ważącej bazującej na wolumenie każdej z giełd by uzyskać średnią ważoną. Oznacza to, że giełda o większym wolumenie ma większy wpływ na końcowy wynik – średni kurs w PLN.
Skoro już mieliśmy gotowego jsona „na potrzeby własne” – po jakimś czasie dorobiliśmy przejrzysty frontend i oto jest: bitcoinaverage.pl