回覆列表
  • 1 # 自可樂

    用 Python 在 QuantConnect 中實現基本交易演算法是比較容易的,我們要做的是遵循一定的模板格式,關注於交易演算法本身,其他的事情 QuantConnect 的 LEAN 引擎會為我們管理好。下面是在 QuantConnect 中實現一個交易演算法的基本模板:

    class BasicTemplateAlgorithm(QCAlgorithm):

    """交易演算法繼承自 QCAlgorithm 類。"""

    def Initialize(self):

    """在此函式中初始化資料、資金、交易時間和交易頻率等相關資訊。"""

    pass

    def OnData(self, data):

    """交易演算法的主要入口。可以在其中完成你的交易演算法。

    data: 一個 Slice 物件,其每一個鍵對應此鍵表示的股票資料。

    """

    pass

    從以上模板可以看出,你的演算法一般是繼承自 QCAlgorithm 類(或者其子類)的。QCAlgorithm 類提供了一個交易演算法的基礎結構以及很多輔助的屬性和方法。下面是 QCAlgorithm 類提供的與交易相關的一些主要屬性和方法:

    class QCAlgorithm:

    self.Securities # Array of Security objects.

    self.Portfolio # Array of SecurityHolding objects

    self.Transactions # Transactions helper

    self.Schedule # Scheduling helper

    self.Notify # Email, SMS helper

    self.Universe # Universe helper

    # 初始化函式,建立資料、資金、交易時間等資訊

    def Initialize:

    # 其他事件處理函式

    def OnData(self, slice):

    def OnEndOfDay(self, symbol):

    def OnEndOfAlgorithm():

    我們在上一個模板交易演算法中只實現了 Initialize 和 OnData 方法,這是完成一個交易演算法最基本的要素,你還可以根據需要實現 OnEndOfDay,OnEndOfAlgorithm 等其他方法。

  • 中秋節和大豐收的關聯?
  • 海蝦怎麼保鮮最好?