Савчук Олександр Васильович,
студент, Національний університет «Острозька академія»
спеціальність: економічна кібернетика
Науковий керівник: Коцюк Ю. А.,
к. пс. н., ст. викл. кафедри економіко
-математичного моделювання
АНАЛІЗ РИНКУ КРИПТОВАЛЮТИ З ВИКОРИСТАННЯМ СЕРЕДОВИЩА ПРОГРАМУВАННЯ R
Постановка проблеми. Постійний розвиток науково-технічного аспекту суспільства, світових торгових систем та глобалізація зумовили появу нового інструменту, що дозволяє значно спростити сучасний процес купівлі-продажу товарів та послуг, а також знизити існуючі при цьому ризики. Цим інструментом є криптовалюти – децентралізовані конвертовані цифрові валюти, засновані на математичних принципах, що захищені з допомогою криптографічних методів. Окрім цифрової природи та використання алгоритмів шифрування, характерними особливостями криптовалют є децентралізоване функціонування, анонімність, конвертованість та неможливість скасування угод. Зараз існує більше тисячі найменувань електронних грошей, усі вони створюють світовий ринок криптовалюти. Аналіз цього ринку, як і ринку звичайної валюти, дозволить передбачити та вжити заходів щодо його впливу на світову економічну систему. А з допомогою спеціальних пакетів середовища програмування R, цей процес значно спрощується.
Аналіз останніх досліджень та публікацій. Проблематиці аналізу криптовалют присвятили свої роботи велика кількість науковців. В основному, їх характер полягає у аналізі самого явища криптовалюти та оцінці його можливих впливів на поточне світове економічне становище. Тому, слід виділити таких дослідників як М. Сакамото, Е. Джонсон, К. Дугана, А. Істоміна, М. Бресета, Б. Абнера та інших. Усі вони займались дослідженням цієї тематики з різних точок зору. Дослідження ж ринку криптовалюти з допомогою мови програмування R відбувається завдяки існуючим пакетам програми, тому неможливо виділити перелік дослідників, що цим займаються.
Мета і завдання дослідження. Метою дослідження є узагальнення існуючих засобів та методів оцінки стану ринку криптовалюти у програмному середовищі статистичних обчислень та аналізу даних R.
Виклад основного матеріалу. Криптовалюта – це новий, експериментальний тип грошей, цифровий актив, облік та емісія якого є децентралізованими. Вона є надійно захищеною від підробок завдяки алгоритму хешування, а уся інформація про транзакції є доступною цілодобово. Криптовалюта заснована на математичних алгоритмах та працює на програмному забезпеченні з відкритим ходом, підключаючись до глобальної мережі через інтернет [1].
Як і будь-яка інша валюта, криптовалюта здатна обмінюватись на будь-яку іншу валюту за поточним курсом. Тобто, криптовалюта має свою ціну та кількість. Саме на ці характеристики опираються, здійснюючи аналіз стану її ринку.
R – потужна функціональна мова програмування та середовище аналізу наборів статистичних даних. Вона має можливості здійснення статистичних аналізів, включаючи лінійну та нелінійну регресію, класичні статистичні тести, аналіз часових рядів, кластерний аналіз та ін. Також, вона містить набір пакетів, з допомогою яких можна здійснити аналіз поточного стану ринку криптовалют. До них відносять [2]:
- coinmarketcapr, crypto – пакети, що здійснюють імпорт та підключення статистичних даних криптовалют [3];
- googleVis – пакет для графічного відображення функцій [4];
- formatR, yaml, knitr, httr, RCurl – пакети для побудови математичних функцій.
Для того, аби використовувати ці пакети, їх для початку слід підключити:
library(coinmarketcapr)
library(formatR)
library(yaml)
library(googleVis)
library(knitr)
op<-potions(gvis.plot.tag=”chart”)
Далі використовується функція get_market_ticker_all, що відобразить загальну інформацію про топ криптовалют (рис. 1):
top_cc<-get_marketcap_ticker_all()
kable(head(top_cc))
Рис. 1. Загальна інформація про криптовалюти.
Як видно на рисунку, не уся інформація є числовою. Тому, для її подальшої обробки, слід перевести до формату double. Для цього користуються функцією:
for(i in c(4:ncol(top_cc))) {
top_cc[,i]<-as.double(top_cc[,i])
}
Для відображення гістограми, яка покаже розподіл цін 15 основних криптовалют (рис. 2), слід скористатись наступним кодом:
mark<-gvisColumnChart(top_cc[1:15, ], “name”, “market_cap_usd”, options = list( title=”Market Cap Of Leading Cryptocurrencies”, legend = “left”))
plot(mark)
Рис. 2. Поточні ринкові ціни основних криптовалют.
Для відображення більш детальної інформації про відсоткову зміну ціни (рис. 3), слід скористатись наступним кодом [5]:
var<-gvisColumnChart(top_cc[1:15, ], “name”, c(“percent_change_1h”, “percent_change_24h”, “percent_change_7d”), options=list(title=”% change of prices”, legend=”top”))
plot(var)
Рис. 3. Відсоткова зміна криптовалют за 1 год, 24 год та 7 днів.
Для найбільш детального відображення статистичних характеристик криптовалют та відображення їх з допомогою інтерфейсу, який буде взаємодіяти з користуваем (рис. 4), скористаємось наступним кодом:
coins<-crypto::listCoins()
kable(head(coins))
data1<-crypto::getCoins(coin=c(“Bitcoin”, “Etherum”, “Ripple”, “Bitcoin Cash”, “Cardano”))
p=gvisAnnotationChart(data1, idvar=”name”, “date”, “market”, options=list( title=”Market Cap Trend”, legend=”top”))
plot(p)
Рис. 4. Інтерфейс взаємодії з користувачем.
Висновки. Здійснивши загальний аналіз пакетів середовища програмування R, нами було виділено набір тих, з допомогою яких можна імпортувати статистичні дані про криптовалюти, відобразити графічно розподіл їх цін, їх відсоткову зміну та створити повноцінний інтерфейс, що дозволить напряму взаємодіяти з користувачем, у якому відображатимуться основні статистичні дані. Таким чином, середовище програмування є простим у використанні та корисним інструментом, з допомогою якого можна здійснювати загальний аналіз ринку криптовалют.
Список використаних джерел.
1. Любшина Д. С., Золотарюк А. В. Криптовалюта как инновационный инструмент мировой торговли // Intractive science – 2016. – №10, с. 145-146.
2. Гнатюк В. Вступ до R на прикладах: підручник. – ХНЕУ. 2010. – 107 с.
3. Coin Market Cap Data. URL: https://coinmarketcap.com/api/ (дата звернення 18.02.2018).
4. Робота з пакетом R googleVis. URL: https://goo.gl/Jg26GP (дата звернення: 20.02.2018).
5. R Programming Language Escapades. Investigating Cryptocurrencies (Part II). URL: https://goo.gl/xG7Tjz (дата звернення: 20.02.2018).