程式

用於對加密貨幣進行基於刻度的回測的 Python 庫

  • June 30, 2021

我看到並回顧了許多 python 回測庫——pyalgotrade、zipline、catalyst、backtrader 等。

似乎沒有一個提供直接的方法來執行“在 CRYPTO 上基於 Tick 或多時間幀回測”。

  • pyalgotrade 似乎只是封閉式的。
  • 滑索適用於股票。
  • 催化劑(滑索的一個分支)可以模擬 1 分鐘關閉的滴答聲,但他們用於數據攝取的數據提供者已關閉。
  • backtrader 似乎只是基於 close-based。

我想要達到的目標

我想執行回測,以便:

  1. 使用每日時間範圍數據計算的指標。
  2. 使用基於刻度的數據或至少類似於 zipline 的主循環進度(以較短的時間範圍結束,例如 1 分鐘)。

我需要以下功能二:

  • 能夠模擬止損,即在燭身或陰影內 - 不僅在蠟燭收盤時。
  • 能夠回測柱內策略,因此它可以模擬單個柱體內的進入和退出。

提前致謝。

backtrader 的數據回放功能,正是我想要的。因此,您需要做的就是以下幾點:

  1. 創建一個 1 分鐘時間範圍的 CSV 數據文件。
  2. 將數據載入到 backtrader 的 CSV 數據饋送中。
  3. replaydata使用實用程序將數據饋送傳遞給 cerebro(反向交易者的引擎) 。
  4. 最後,添加策略和其他步驟。

要使用的程式碼範例replaydata如下所示:

cerebro.replaydata(minuteDataFeed,
                  timeframe=TimeFrame.Days,
                  compression=1)

您是否嘗試過使用ccxt?該庫在 GitHub 上可用,並提供了您正在尋找的*大部分內容。*它提供了來自幾十個交易所的詳細蠟燭數據以及一個很好地實現指標的回測框架。我不確定他們是否提供蠟燭內策略,但他們的功能支持您在其他方面尋找的內容。

引用自:https://quant.stackexchange.com/questions/60910