2022/09/30

Chomebook和Linux上跑盈透證券IBKR的TWS – Trader Workstation

肥叔叔用盈透證券IBKR(Interactive Brokers)至今應該有七、八年了,一直都是把盈透桌面終端TWS(Trader Workstation或中譯《交易者工作站》)裝到Mac OS和Windows 10的電腦上面──始終桌面版TWS依然有好幾組未有在其他版本上出現的功能。

最近在試玩用Win/Mac以外的操作Linux桌面系統,包括「真正」的Linux系統:Linux Mint和建基於Linux之上的Google ChromeOS,而TWS也有供Linux的版本可以下載安裝使用,當然下個來試試。

下載和安裝Linux版的TWS 和Windows、Mac的版本不太一樣,Linux版本的TWS「雖然」也是在IBKR網頁上下載,但下載回來的卻只是一個安裝腳本(installation script),而不是一個完整的安裝檔,所以不是單純在桌面雙擊打開再點十次八次「下一步」完事。

要用上命令列……

TWS的下載點是在IB網站〔交易/Trading〕、〔平台/Platform〕,下載區在頁面底部。下載時可能會被IB網站誤認為Windows系統,所以得在頁底點開「其他操作系統的下載」,再選Linux 64-bit(機型較舊、RAM不足的就32-bit)下載。

先聲明,筆者是在Linux Mint 21的Cinnamon版本上安裝的,沒有試過其他的Linux系統版本或者桌面環境,不過現代Linux的話,大致都差不多。硬件是Rock Pi X(對…我又在這單板機上換了系統),4 GB的RAM和64 GB的eMMC閃存。

在Linux Mint上安裝盈透證券IBKR的TWS

和在Linux Mint上安裝所有東西一樣,都要以sudo成為管理員身份再進行。

下載後會有安裝說明,正常的情況下,按說明就沒有大問題。

假設下載的是穩定版的Linux TWS,安裝腳本的下載資料夾是用戶自己的下載資料夾「Downloads」,先打開終端機「Terminal」程式後輸入:

cd ~/Downloads

或者cd到安裝腳本下載後的在所資料夾。

以管理員身份sudo去修改安裝腳本的屬性權限:

sudo chmod u+x tws-stable-linux-x64.sh

如果在用的身份是管理員身份/root用戶,或者系統可以容許在自己權限下進行相關操作,則不用sudo

屬性權限修改後,再「執行」安裝腳本

./tws-stable-linux-x64.sh

要權限的話就在前再加sudo吧…

這時,腳本會先下載和安裝TWS所需的Java runtime和其他相關的套件,然後再下載和安裝TWS。

完成後,桌面會生成TWS的圖標,雙擊打開。同樣地,也會在開始選單(Start Menu)的程式庫裡面,或者直接用搜尋功能查找打開。

在ChromeOS上安裝盈透IBKR TWS

Google ChromeOS本身就是一個Linux系統,只是套在Google的Material UI後,大家不怎麼能看出它是Linux。現時,多數X86處理器、RAM多於或等於4 GB的Chromebook或Chrome OS電腦上面,都可以支援Linux沙盒環境,也就是說,可以安裝Linux版的TWS。

所以筆者才打算試試,反正早前不就買了部新的舊(?!)Chromebook嘛~

安裝前先要啟用ChromeOS的Linux終端,並有最少1至2 GB的儲存空間供TWS安裝和使用。

同樣是在盈透官方網站下載,在用ChromeOS上的Chrome時,可能會被誤認成Windows系統,選擇想要下載的版本後可以再選擇不同的系統,所以不用慌。

完成安裝腳本下載後,要確保下載資料夾能夠讓ChromeOS上的Linux看到,要分享下載資料夾給Linux

打開Linux終端。

然後去下載資料夾:

cd /mnt/chromeos/MyFiles/Downloads

安裝前先改變安裝腳本的屬性權限:

chmod u+x tws-stable-linux-x64.sh

然後執行安裝腳本

./tws-stable-linux-x64.sh

安裝完成後,可以直接打開。這時可以刪除安裝腳本和關掉Linux終端。

即使跑安裝腳本時有一大堆錯誤,但安裝程式的界面還是打開了。
安裝後,TWS的圖示會生成並置於「Linux apps資料夾」,日後點擊就能打開。

同時,在ChromeOS的Launcher裡面的Linux Apps目錄也會出現Trader Workstation程式的圖示,日後使用TWS時,只需要保持開發人員模式中的Linux沙盒是啟用狀態,不需要先行打開Linux終端打命令,直接點擊TWS的圖示即可。

後話

雖然IBKR的官方指南上寫有TWS對硬件的要求「不特別高」,但實際操作時,對系統的能力、速度還是有一定要求。

第一個實例──在Rock Pi X / Linux Mint 上跑TWS真心不行,不論是在安裝、使用上也是折磨,不過應該跟TWS和Linux的關係不大,更像是硬件問題,還真不知道問題是出在RAM不夠、ATOM處理器太弱雞還是eMMC太慢……還是All of the above:以上皆是。

第二例在Chromebook G8EE上的ChromeOS跑TWS倒是不錯,雖然第一次打開時、還有是從IBKR的伺服器上下載了桌面設定,再把桌面TWS的界面與筆者在其他系統上的位置喜好好用安排好、的確比在家裡的M6/Win10和Macbook Air上要花上一點時間。在使用上還算可以,反應比Rock Pi X / Linux Mint是有一點快,但比新入手的m6/Win10就有明顯差異了。

在ChromeOS上,TWS的視窗不能改變尺寸,也不能移動…

而且,在Chrome OS的Linux沙盒下的Linux版TWS的視窗大小被系統固定了,不能拖拉到別處,也不能放到最大,改變TWS主視窗的高度或者寬度也不可以,只有「固定大小/在畫面正中」和「縮小收納到工作列」兩個選擇,大概是ChromeOS的Linux沙盒的限制?

結論就是,「如果」要用Linux或者ChromeOS作為「交易者桌面工作站」的話,在這兩個實例的測試下,在超級廉價的硬件上跑Linux版本TWS是「可行」的,但體驗上還有很大機會比不上Win10/Mac,試試還好。

雖然…如果真要科學一丁點的話,可能是要來一次同樣硬件規格下不同作業系統上跑TWS的橫向對比…嗯…

參考:IBKR盈透證券官方Linux TWS安裝指南