新手疑難雜症,幫你解答對於 TQuant Lab 的所有問題。

新手疑難雜症
Photo by Kelly Sikkema on Unsplash

前言

在使用 TQuant Lab 進行回測和策略分析時,新手可能會遇到一些技術上的挑戰和問題。本文將提供一些解決方法和技巧,幫助使用者更順利地進行策略開發和回測,提升效率與準確度。希望這些資訊能夠對大家有所幫助,解決各位的新手疑難雜症。

常見問與答

若已經從虛擬環境安裝 zipline-tej 卻還是無法使用 TQuant Lab,該怎麼辦?

若已經按照技術手冊 – TQuant Lab 內的方法安裝,但依然無法正常運行的話,可以按照 Google Colab 運行 TQuant Lab 使用教學及常見錯誤  進行安裝,主要是將 pandas 以及 dask 降版。

如果我要將外部資料匯進去 Pipeline 跑回測,該怎麼做?

可以使用 CustomDataset,利用此函式可以將資料庫中的內容導入 Pipeline 中,方便後續回測使用,範例策略可以參考 TQuant Lab F-score 策略,找出被低估的優質股票

四大函式的功能大概是什麼,每次回測都一定要寫這些函式嗎?

四大函式各有不同的功能,分別可以設定回測環境,常見用於設定滑價或手續費,或是設定交易策略、下單與紀錄交易資訊,以及用於回測後視覺化策略績效與風險,最後則是進行回測,也不一定每次策略都是使用一樣的函式,依照策略的需求跟使用者的偏好而有所不同,詳細介紹可以參考TQuant Lab 新手上路

執行 run_algorithm() 後得出的 dataframe 每個欄位是什麼?

這邊僅列出幾個較重要的欄位,全部欄位介紹可以參考TQuant-Lab/lecture/TSMC buy and hold strategy

  • benchmark_return: 當日的 benchmark 報酬率,若是由 set_benchmark() 設定,則計算方式為 ( 當日 benchmark 收盤價 / 前一日 benchmark 收盤價 ) – 1。
  • benchmark_period_return: 累積的 benchmark 日報酬率。計算方式:np.nancumprod ( 1 + benchmark_return Series ) – 1。
  • benchmark_volatility: benchmark 日報酬率的年化波動率,至少需有兩期的報酬率才進行計算。計算方式:(benchmark_return Series).expanding(2).std(ddof=1) * np.sqrt(252)
  • max_drawdown:投資組合累積報酬率從過去的峰值下跌的最大跌幅百分比。
  • sharpe:年化夏普比率,衡量每承擔1單位風險,可以獲取多少的報酬。
  • sortino:年化索提諾比率,衡量承擔單位下方風險,可以獲取多少的報酬。
  • alpha:年化 alpha,衡量投資組合創造超額報酬的能力。
  • beta:衡量投資組合相對於整體市場的波動性。

另外,對 run_algorithm() 輸出的資料表使用 get_transaction_detail 可以取得更細部的訂單、交易及部位資料,使用方法如下:

from zipline.utils.run_algo import get_transaction_detail
positions, transactions, orders = get_transaction_detail(result) # 假設 run_algorithm() 回傳的資料表為 result
  • positions: 持倉狀態
  • transactions: 交易紀錄
  • orders: 訂單紀錄

如何調用 TQuant Lab 內建的技術指標,比如: SMA? 或是只能利用外部的 numpy, talib 進行計算?

TQuant Lab 有許多內建的技術以及價格因子,包含 SMA、布林通道、RSI 等等。可以省去許多自己刻技術指標的時間,詳細內建因子的選單以及介紹跟使用方式可以參考TQuant-Lab/lecture/Pipeline built-in factors。

TQuant Lab 是否可以自行設定以開盤價或是收盤價進場?

zipline 為求最大化避免前視偏誤,若策略當天有訊號要進場時,會以隔天的收盤價進場,詳情可以查看 results 的 orders 欄位,至於開盤價成交機制,目前 zipline-tej 已更新至 2.1.0 版本,已新增此機制,詳細說明可以參考 zipline 2.1.0、tej tool api 1.2.0 版本更新.md

結論

透過本文提供的新手疑難雜症解決方法和技巧,使用者能更順利地解決 TQuant Lab 運行過程中的各種技術挑戰。從安裝到資料的處理,希望這些資訊能提升使用者的效率與準確度,成功寫出自己的第一支策略。

【TQuant Lab回測系統】解決你的量化金融痛點

全方位提供交易回測所需工具

延伸閱讀

TQuant Lab 新手上路

Google Colab 運行 TQuant Lab 使用教學及常見錯誤

返回總覽頁
Procesing