剛好看到有人在詢問,是否先有tick資料,才會更新bidask的資料
這裡就來實測,順便練習一下如何取得測試資料,整理並統整出來
在測試之前要先安裝Redis,用來儲存我們盤中所要儲存的資料內容,本篇先介紹在windows上要如安裝及測試Redis
Redis官網:https://redis.io/
https://zh.wikipedia.org/zh-tw/Redis
Redis是一個非關聯式資料庫(No-SQL),因為主要是用In-memory的方式儲存資料,所以非常適合用來儲存短時間大量資料的使用場景,也就是拿來當快取cache使用。
由於Redis官方並不建議在Windows環境中使用Redis,所以官方也沒有提供Windows版本的安裝檔。若要在Windows環境中使用Redis,有兩種方式,第一個是用非官方發佈版本,這是由微軟團隊維護的版本,但目前最新版本只有3.2.100,若要使用,可至以下網址進行下載
https://github.com/MicrosoftArchive/redis/releases
安裝方式步驟,可參考以下文章:
https://www.dotblogs.com.tw/YiruAtStudio/2021/01/13/111530
另一個方式是,在Windows上,透過WSL下載並執行Redis的Docker。以下將介紹此種方式。
在安裝Docker Desktop,要先安裝並啟用WSL
按左下角的「搜尋」按鈕並輸入「power」,在「Windows PowerShell」中選擇「以系統管理員」執行
輸入「wsl --install」並按下Enter鍵進行安裝
PowerShell就會開始安裝wsl,安裝完成後,會提示須要重新開機
重新開機後,會自動在wsl中安裝Ubuntu
Ubuntu安裝完成後,會請你輸入Ubuntu中所要使用的帳號及密碼,輸入完成按Enter鍵即可
設定完成,就會出現下面這個畫面
接著,安裝Docker Desktop。首先打開下列網址,並點「Download for Windows」下載安裝檔
https://www.docker.com/products/docker-desktop
下載完成後,執行安裝程式,按「OK」進行安裝
安裝完成後,會需要登出Windows並重新登入。請先關閉其它應用程式,再進行登出動作。
重新登入後,Windows就會自動啟動Docker Desktop,第一次執行會讓你確認服務條款,這裡請勾選「I accept the terms」並按下「Accept」
然後,就可以先將Docker Desktop的視窗關閉
安裝WSL後,也不一定要安Docker Desktop才可以執行Docker服務,若要使用CLI進行安裝及設定,可參考下列文章:
https://dev.to/bowmanjd/install-docker-on-windows-wsl-without-docker-desktop-34m9
接著開啟PowerShell,並輸入「docker pull redis」下載redis的docker image
下載完成後,開啟Docker Desktop,在Image中就可以看到redis。接著按右邊的「run」啟動redis
輸入Container Name及Local Host的Port,這裡Port我們直接輸入預設的6379,最後按下「Run」
就可以看到剛才建立的redis-sj已經在執行中
首先,在console中輸入「pip install redis」安裝redis套件
接著,建立測試程式碼,範例如下:
import redis
#建立連線,port指定剛才在Docker中所設定的port,並將decode_responses設為True,讓取得資料時自動decode
r = redis.StrictRedis(host='localhost', port=6379, decode_responses=True)
r.set('myName', 'Mike') #存入key及value
r.set('中文的key', '中文的value') #存入資料,key可以是中文
print(r)
print(r.get('myName')) #輸入key值來取得剛
print(r.get('中文的key'))
redis儲存方式為key和value,用set的方式來增加或更新value,用get的方式來取得所儲存的value。若上述程式可以正常執行並取得所存入的value,就表示Redis已正常執行。