前言
繼上一次成功建立一個 GAS (Google Apps Script) 以後,我不斷思考可以做什麼應用,後來想到或許可以去撈看看加密貨幣的價格,於是發現了 Cryptowatch 開發的 Cryptofinance,能夠使用它開發好的 GAS 來實作建立一套加密貨幣價格追蹤器,覺得蠻有趣的就分享給大家試試看。
所以本次實作會使用 Google Sheet 結合 GAS 串起 Cryptofinance 提供的數據來完成一個小作品,過程中應該是不太需要寫甚麼程式,所以對沒有寫過程式的人來說應該也不會太困難。
如果有興趣的話可以先參考前一篇文章,大概瞭解如何開始使用 GAS 服務。
開啟新的專案與 GAS 程式碼佈署
選擇上方的擴充功能,點選 Apps Script 開啟這個 Google Sheet 的 .gs 專案。
而要讓它能夠順利執行,就需要讓我們的 Google 帳號授權給這個 GAS 專案,這樣它才可以把這些幣價資訊寫入到我們的資料表中。
如果看到執行完畢的話,表示執行紀錄沒有任何問題,接著就切換到 Google Sheet 那一端,我們來呼叫 GAS 中的函式吧。
Google Sheet 獲取幣價
來嘗試一下呼叫 Cryptofinance,看看有沒有值出來,最基本的呼叫方式就是直接在某一格中輸入:
=CRYPTOFINANCE("BTC/USD")
接著就會看到它花了一點時間讀取,並且獲得當下比特幣對美元的報價了。
所以使用 CRYPTOFINANCE 是很方便的,我們只需要給它一個字串,字串內容是 “加密貨幣/法定貨幣”,這樣就可以獲取對應的報價了。
我自己實測的話叫得出名字的加密貨幣都可以正常讀取,連 Likecoin 都有哦!法幣的部分大概常見的 USD, GBP, AUD, EUR, JPY 都可以用,但是新台幣跟人民幣都不行QQ。
設計 Google Sheet 表格介面-加密幣價追蹤器
做到可以取得幣價之後,再來就是靠大家的想像力去設計自己的表格功能,我這邊先舉一個最簡單的例子,就是加密幣價追蹤器:
表格第 B2 的公式是:
=if(A2 <> "", CRYPTOFINANCE(A2&"/USD"),"")
意思是如果 A2 這一格不是空白的內容,就使用 A2 填的值結合美元的報價,例如 A2 填 ETH,則 B2 就會呼叫 CRYPTOFINANCE(“ETH/USD”),而如果 A2 這一格是空白的,則 B2 也是空白的值,不會呼叫函式。
我們可以把公式往下拉,讓 B2 寫的直接成為整個 B 列的公式,這麼做的好處是未來想要多追蹤一個幣的幣價,只要在 A 列繼續往下填,隔壁的 B 列就會自動呼叫函式將幣價撈取出來,實用上就會很方便。
設計 Google Sheet 表格介面-個人加密資產統計表
或是可以設計一個加密資產的自動計算器,輸入持倉幣種以及持倉數量,表格後續設計的時候就可以寫點公式讓它自動幫你計算兌換成美金的總價值,甚至某個幣佔所有加密資產的百分比,這樣是不是很方便呢?
附上一些實作的公式(ABCD 表示第幾欄、N 表示第幾格):
CN 欄位 (當前對應美元價格)
=if(AN <> "", CRYPTOFINANCE(AN&"/USD"),"")
DN 欄位 (我們的持倉換算下來價值多少USD)
=BN*CN
EN 欄位 (各個幣佔總加密資產的多少%,百分比要另外設定,點擊上方「格式」→「數值」→「百分比」即可完成設定)
=DN/F$N
FN 欄位 (總加密資產)
=SUM(D:D)
結語
以上就是我們透過 GAS 的雲端服務,去獲取 Cryptofinance 提供的幣價數據,接著就用表格公式打造出我們自己客製化的雲端產品,開發過程中完全不需要思考如何串接資料可說是毫不費力,我想這也是這些雲端產品厲害的地方。
不過要注意的是這個免費版本的服務數據每天似乎是有撈取次數的上限,所以如果用一用突然出現 ERROR,可能是因為次數達到上限,如果發生這類問題,我自己測試後發現,過一陣子重新將表格內的資料刪除重設就能夠恢復正常,也許有更簡單的方法歡迎留言告訴我。
Cryptofinance 這組套件不只有獲取幣價的功能,還有其他功能可以撈取不同數據,如果你是希望將這個東西實作出來商品化的話,可以去研究一下
Cryptofinance Plans,在他們的文件中都有提供不同方案以及收費方式可以看看。
延伸閱讀
最後,謝謝你在百忙之中願意抽空來花時間來看我的文章,如果還喜歡這些內容的話希望能獲得你的追蹤及小額贊助支持,讓我更有繼續寫下去的動力,EVM 兼容錢包地址為 0xae1dd06d57f582999a9c50b86ba913eecd7155ce。
我們下次見嚕 o((>ω< ))o~