交易的定義:
當工具中的頭寸從 0 變為大小 X 時,交易打開,對於多頭/空頭頭寸可能為正/負)
當頭寸從 X 變為 0 時,交易平倉。
以下兩個動作:
正轉負
負轉正
實際上被視為:
一筆交易已關閉(倉位從 X 變為 0)
新交易已開立(倉位從 0 變為 Y)
交易只是提供信息,沒有用戶可調用的方法。
參考:貿易
class backtrader .trade.Trade(data=None, tradeid=0, historyon= False , size=0, price=0.0, value=0.0, Commission=0.0)
跟踪交易的生命週期:規模、價格、佣金(和價值?)
從 0 開始的交易可以增加和減少,如果它回到 0,則可以認為是關閉的。
交易可以是多頭(正規模)或空頭(負規模)
交易並不意味著被逆轉(不支持它的邏輯)
會員屬性:
ref: 唯一的貿易標識符status(int): Created, Open , Closed 之一tradeid: 在創建期間傳遞給訂單的分組交易 ID 訂單中的默認值為 0size(int): 當前交易規模price(float): 交易的當前價格value(float): 交易的當前價值commission(float):當前累積佣金pnl(float): 交易的當前盈虧 (gross pnl)pnlcomm(float): 當前交易損益減去佣金(淨 pnl)isclosed(bool): 記錄最後一次更新是否關閉(設置大小為 null 交易isopen(bool): 記錄是否有任何更新打開了交易justopened(bool): 如果交易剛剛開倉baropen(int): 交易開始的柱dtopen(float): 交易開始的浮點編碼日期時間- 使用方法
open_datetime獲取 Python datetime.datetime 或使用平台提供的num2date方法
- 使用方法
barclose(int): 關閉此交易的柱dtclose(float): 交易結束的浮點編碼日期時間- 使用方法
close_datetime獲取 Python datetime.datetime 或使用平台提供的num2date方法
- 使用方法
barlen(int): 此交易打開的柱數historyon(bool): 是否必須記錄歷史history(list):保存一個列表,每個“更新”事件都更新,其中包含更新中使用的結果狀態和參數歷史中的第一個條目是開幕事件 歷史中的最後一個條目是結束事件