跳到主要內容

在一年免費的 Google Cloud (GCP) 上面安裝 Gekko 交易機器人,免開機就能隨時讓程式操盤



雖然之前用過 AWS EC2 來裝 Gekko,但想說還是來用一個 Google Cloud (GCP) 的來當備用,順便比較看看哪個比較好,一樣都是一年免費,Google 是採用額度制的,提供你 $300 的使用額度,所以可以選擇用更好的設備 (但可能用不到一年 $300 就花完了) 來建置 Gekko,兩者的優劣可以自己比較看看,如果還沒裝到 AWS 的不妨試試看 Google Cloud,介面算做得比較好。

Google Cloud (GCP)
官方網站 : https://cloud.google.com


選用 Google Cloud 安裝 Gekko 的原因當然是為了使用運算 (Compute Engine) 功能,但它還有非常多其他的功能,反正 Gekko 也只會占用少部分效能,不妨多去玩玩 GCP。


註冊完後就可以從主控台左邊找到 Compute Engine > VM 執行個體。


建立 VM 執行個體可以自訂自己的機器,包括 CPU、RAM、磁碟...等,還有主機所在區域可以選,基本上 Gekko 對於這些都沒有太多要求,可以用預設的甚至更低都可以,如果你有要把 Gekko 開在網頁介面記得打開 HTTP、HTTPS (SSL) 流量。


然後到這裡下載並安裝 Google Cloud SDK,這是 GCP 的指令介面,會方便我們使用虛擬主機,而且它也內含了 PUTTY。


安裝完就會自動開啟,或從開始找到 Google Cloud SDK。第一次運行會需要和 Google 同步,因此會連上 Google 取得帳號授權,然後選擇自己的 GCP 專案 (不是指 VM 個體,如果都沒新增的話應該就只有原始的那一個),最後選擇伺服器區域,這邊就照剛剛 VM 個體的區域照選就好了。


gcloud compute ssh 你的 VM 個體名稱
接著輸入上述指令且確認後續動作後就會開啟 PUTTY 的連線,之前有玩過 AWS 的人應該接下來就很熟悉了。


const CONFIG = {
  headless: true,
  api: {
    host: '0.0.0.0',
    port: 3000,
  },
  ui: {
    ssl: false,
    host: 'VM 個體的外部 IP',
    port: 3000,
    path: '/'
  },
  adapter: 'sqlite'
}

if(typeof window === 'undefined')
  module.exports = CONFIG;
else
  window.CONFIG = CONFIG;
下一步就是到 Gekko 的 GitHub 下載 Gekko 回來,並且把 gekko\web\vue\UIconfig.js 更改成如上方所示,並換成自己 VM 個體的外部 IP。 


pscp -i C:\Users\你的帳戶\.ssh\google_compute_engine.ppk -r C:\gekko GCP帳戶@VM個體外部IP:/home/GCP帳戶/
接著按 Win+R > CMD 鍵入上述指令,把改好完的 Gekko 上傳到 GCP,上面的路徑要自己更改,預設的 .ppk 檔應該是在 User\帳戶名稱\.ssh 裡,可以自己先去確認一下。


cd gekko
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash
. ~/.nvm/nvm.sh
nvm install 8.9.4
sudo apt-get install -y build-essential
npm install tulind
npm install talib
npm install --only=production
接著就能回到 PUTTY 逐一使用上述指令來安裝 Gekko 了,基本上需要的程式庫都包含在這些指令內。


Tulip、TA-Lib 也都應該可以正確安裝沒有問題。


node gekko --ui
最後就能在 GCP 開啟 Gekko 啦,如果想要 Gekko 在關閉 PUTTY 後仍然可以繼續運行,記得先使用方便的掛站指令 screen







留言

張貼留言



這個網誌中的熱門文章

WinRAR - 繁體中文版、免費版,別再破解了,老牌壓縮軟體直接免費給你用

WinRAR 應該對於所有 Windows 使用者一點都不陌生,可能也是很多人壓縮、解壓縮檔案的首選,舉凡 RAR、ZIP、7-Zip、TAR ...等檔案格式都可以處理,製作自解壓縮 (.EXE) 檔也沒問題,也算是最老牌的解壓縮軟體之一。 WinRAR 官方網站 :  https://www.win-rar.com 繁體中文版 :  https://rar.tw/download.html 永久免費簡體版 :  http://www.winrar.com.cn/download.htm 其實我也不太理解為什麼一個 WinRAR 可以有這麼多版本、不同語系的官網,畢竟在最原始的官網內也有「漢語」(簡體中文) 的選項,所以其他的國家自己的官網算代理商嗎? 如果真的要說我會比較建議到 英文版的官網 下載,畢竟這種軟體轉了一手又一手,加了什麼都不知道。

Linux (Ubuntu) 查詢硬碟容量、剩餘大小指令

在 Ubuntu Desktop 版本或有安裝 GUI 像 Xfce 的 Server 版本當然可以直接從圖形介面查看硬碟容量和已經使用的大小, 但如果是在純 CLI 版本或使用 SSH 連線時呢?那就需要用到指令了。 顯示硬碟容量、已使用、可用大小。 df -h 查詢資料夾所占硬碟的大小。 du -h 查詢檔案大小 ls -l

SQLite 的 .db 檔案怎麼開?透過 DB Browser 修改、刪除資料庫內的資料表 (修改 Gekko Datasets history)

在使用 Gekko 附屬的 SQLite 資料庫時往往從 UI 寫入資料後就不知道要從哪裡修改,匯入的歷史紀錄也沒辦法從網頁介面刪除,在做 Japonicus 遺傳演算 時可能會錯誤抓取到不想要跑的歷史數據, 那就可以用 DB Browser 來開啟 /history 內的 .db 檔案來進行修改,可以把不要的資料表直接刪除,就不必全部砍掉重抓了。 而從外部下載來的歷史資料也可以藉由同樣的方式整併到一個 .db 內。 DB Browser 官網 :  http://sqlitebrowser.org 下載並安裝完適合自己作業系統的 DB Browser 後就可以從 「打開資料庫」 中瀏覽 Gekko 資料夾中的 history,開啟想要修改的歷史紀錄。 舉例來說我開啟了 binance_0.1.db 就是先前匯入的幣安歷史數據,在這裡已經條列好每個資料表分別代表一種貨幣組合,能把你不要的組合刪除,甚至到 Browse Data 也能修改交易紀錄 (應該是沒必要啦)。