跳到主要內容

Gekko 比特幣 (Bitcoin)、加密貨幣交易機器人 (Trading Bot) 教學 - 如何用 Backtest 以過往數據測試策略?



直接要拿真的資金讓機器人 (Trading Bot) 操盤聽起來有點可怕,何況在對策略制定還不熟悉的時候更是,好在 Gekko 有 Backtest 的功能,它可以直接導入各個交易所的歷史交易線圖來供你測試制定的策略,而且你大可以一次導入好幾種不同貨幣,針對不同活潑程度的線形去測試,時間也可以直接拉很的長來增加參考性,因為它只需要電腦計算跑完就會出現機器人的交易紀錄了。

至於如何安裝 Gekko 以及大致的介紹在上一篇有提到了,這邊就不多提。

Gekko 教學 - 免費的比特幣 (Bitcoin)、加密貨幣自動交易機器人 (Trading Bot),支援幣安 Binance、Poloniex、Bitfinex...等交易所
在 Local data 介面中如果你之前已經有導入歷史交易就會顯示在 Available datasets,如果要導入新的就按 Go to the importer!


導入的紀錄可以選交易所和指定交易幣種,時間預設是四個月,我會建議就讓它慢慢載完這四個月,因為從 11 月到現在經歷牛、熊市交替,你可以根據在兩種不同市場熱度的情況下這個策略表現得如何。


基本上是會需要好一陣子啦,你也可以多開幾個 Gekko 網頁讓它一次多下載幾個歷史交易紀錄,免得花太多時間在這裡。


不必等它跑完就可以先玩玩看 Backtest 了,先選好要用哪筆紀錄來玩以及可以自訂時間區段。


建議先用 noop (無操作) 跑一次,看看本身市場的漲跌如何再來去和機器人操作結果比較,因為如果市場本身就漲了 40% 結果機器人只賺 30% 那也還是算虧錢啊。


我選的區段比較不好,空操作市場就漲了 90%,不過還是來看看機器人有沒有辦法超越 90%。



大概測試了幾個都滿難比 90% 更高的,要調到滿極端的情況才能大於這個數字,所以可以看到即便在一個多月的時間也只有 3 次進出場,而且獲利也才 99.8%,這種情況下最好的策略真的是 HODL 擺著不要動阿。


而且在熊牛市不同下,其實會需要擬定不同的策略,Gekko 絕對不是你把它開著就能幫你爽賺的機器人 (我相信也沒這種機器人),而且有非常多貨幣並不適合用機器人來交易,基本上一定要選交易量、市值夠大的才有技術分析的價值,否則很多小幣就是單純的 P&D 而已,不要說機器看不懂,我看大部分人也看不懂......。至少 Gekko 有提供 Backtest 這種沙盒功能讓使用者去玩,大可以試出相對穩定的策略後再實戰,但我是還沒找到啦,有興趣的可以參考官網 Custom Strategy 的教學。


Gekko 討論社群 :



留言



這個網誌中的熱門文章

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

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

吃光硬碟讀寫的大怪獸 - Superfetch 是什麼?可以關嗎?

Superfetch 是 Windows 內建的硬碟快取功能,它會預先將檔案讀取起來到 Ram 裡方便稍後做使用,所以常常在工作管理員內都可以看到 Superfetch 往往占掉了不少的硬碟使用量,那這樣的情形是好的嗎?其實理論上並不會有太大影響,畢竟 Superfetch 只是將等會要讀取的內容先預置在 Ram 中,如果不趁硬碟負載小的時候優先讀取,之後反而可能忙不過來呢。當然如果你是使用 SSD 的話可能會為使用壽命擔心, 高頻率的讀取可能加速固態硬碟老化,那在讀取速度原本就很快的 SSD 當然就相對的沒有必要開啟 Superfetch 了。 Superfetch 在電腦待機時吃掉大部分硬碟使用量是很常有的事。 要關閉也很簡單, Win+R > services.msc 打開「服務」,找到 Superfetch。 右鍵 > 內容,將它更改為「 已停用 」後確定即可。

TLS / SSL 金鑰轉檔,「.crt / .key」如何轉成「.pem」?( OpenSSL 教學)

不管是哪個 Certificate Authority (CA) 發的憑證多半金鑰檔都是給「.crt / .key」格式的檔案,像是「ca_bundle.crt」、「 certificate.crt」和「.private.key」這種檔案, 但是在實際使用 (Nginx、Apache...等伺服器) 卻會需要的是「.pem」檔 ,那要怎麼轉換呢?其實可以直接使用 OpenSSL 這個軟體和幾行指令來達成。 OpenSSL 官方網站 :  https://www.openssl.org 下載頁面 :  https://www.openssl.org/source sudo apt-get install openssl 以 Linux (Ubuntu / Debian ...等) 為例,可以直接使用 apt-get 指令下載安裝 OpenSSL,如果是其他系統可以參考官方網站的說明。 openssl rsa -in private.key -text > private.pem openssl x509 -inform PEM -in certificate.crt > certificate.pem openssl x509 -inform PEM -in ca_bundle.crt > ca_bundle.pem 以前述所提到的「ca_bundle.crt」、「 certificate.crt」和「.private.key」三個檔案為例,就可以用上方的指令完成轉檔,其實同副檔名的轉檔指令都相同,所以兩個「.crt」的指令其實是重複的,也要記得套換成自己的檔案名稱。 如果需要申請免費的 SSL 憑證也可以參考之前介紹過的 SSL For Free ,它是使用「Let's Encrypt」核發的憑證,以及如果覺得申請憑證和定期更新太麻煩,也可以考慮自動化的 Caddy Server 能自動幫網站升級 HTTPS。