Kryptowaluta to cyfrowa waluta zaprojektowana do pracy jako środek wymiany. Kryptowaluty wykorzystują kryptografię do zabezpieczania i weryfikacji transakcji, a także do kontrolowania tworzenia nowych jednostek. Mówiąc najprościej, kryptowaluty to wpisy w publicznej i rozproszonej bazie danych, które można zmienić tylko na podstawie konsensusu algorytmicznego, i eliminują one potrzebę korzystania z zaufanych stron trzecich do obsługi transakcji i emisji waluty. Koncepcja bardzo przypomina sieci peer-to-peer do udostępniania plików, z algorytmiczną polityką pieniężną na czele. Jeśli chcesz dowiedzieć się więcej o kryptowalutach, zdecydowanie powinieneś obejrzeć filmy z udziałem Andreasa Antonopoulosa. Potrafi bardzo łatwo zrozumieć bardzo złożone koncepcje. Kryptowaluty są obecnie intensywnie rozwijane, aby oferować wiele innowacyjnych funkcji które będą miały destrukcyjny wpływ w nadchodzących latach, ale na razie są one głównie wykorzystywane do kupowania towarów i inwestowania. Każda transakcja składa się z ilości przekazanych monet oraz kluczy publicznych nadawcy i odbiorcy, zwanych również adresami portfela. Użyjemy tych kluczy publicznych w przykładzie dla tego rozdziału, aby śledzić, ile monet posiadamy, a także użyjemy API CoinMarketCap do śledzenia cen kryptowalut. Ponieważ będzie to złożony system, użyjemy programowania obiektowego, aby go modularyzować i zbudować część po części. Pod koniec przykładu będziemy mieli system, który można włączyć, aby rozpocząć śledzenie naszych aktywów kryptowalutowych, a także ich cen oraz zapisać dane w czasie rzeczywistym na dysku w celu późniejszej analizy. Później wykorzystamy te dane, w formie symulowanej, do opracowania różnych implementacji prostej średniej ruchomej (SMA), aby pokazać, jak można ulepszyć kod R, aby stał się szybszy i bardziej czytelny. Na koniec zobaczymy, jak stworzyć nowoczesną aplikację internetową, aby pokazać opracowane SMA, a także zebrane dane.