現況決議
引擎目前的成本/盈虧模型假設 先買後賣(long-only):
也就是說:先賣後買(開空單→回補)目前會被當成 orphan 忽略,不報盈虧也不照洞。短期這樣是刻意的(求穩、避免成本基礎算錯)。
要討論的問題
做空在散戶對帳單裡出現的形態:
- 真做空:先 SELL SHORT 開倉,後 BUY TO COVER 平倉。盈虧方向相反(賣高買低才賺),FIFO long 模型完全不適用。
- 券商欄位:很多券商會用
SELL SHORT / BUY TO COVER 或正負股數(負持倉)標記,需在 Step 0 標準化時保留方向語意,而非只映成 BUY/SELL。
- 混合:同一檔可能先做多平倉、又反手做空,FIFO 要能處理 long/short 倉位翻轉。
可能方向
- 在標準欄位加一個
Action 的擴充:SELL_SHORT / BUY_COVER,或保留有號股數。
round_trips() 改成支援雙向 lot(持倉可正可負),方向決定 ret 的正負。
- 行為診斷各維(攤平、出場、sizing)對空單的語意要重新定義(例如「往上加碼空單」才是凹單)。
範圍界線
先確認:目標用戶有多少在做空? 若主力是 long-only 散戶,這可降優先序,維持現在的「orphan 忽略 + 提示」即可。
關聯:PR #13、issue #14。
現況決議
引擎目前的成本/盈虧模型假設 先買後賣(long-only):
round_trips()把 SELL 配對到先前的 BUY lot。positions()已加 clamp:賣量超過持有不讓股數變負(見 PR 架構 review:離線降級 crash 修復 + 分割/driver map robustness + 風格偵測研究與第一個【風格】維 #13)。orphan_sells()把「賣量 > 已知買量」的部分忽略,只在報告最後印一行資料完整性提示,不進盈虧/診斷。也就是說:先賣後買(開空單→回補)目前會被當成 orphan 忽略,不報盈虧也不照洞。短期這樣是刻意的(求穩、避免成本基礎算錯)。
要討論的問題
做空在散戶對帳單裡出現的形態:
SELL SHORT/BUY TO COVER或正負股數(負持倉)標記,需在 Step 0 標準化時保留方向語意,而非只映成 BUY/SELL。可能方向
Action的擴充:SELL_SHORT/BUY_COVER,或保留有號股數。round_trips()改成支援雙向 lot(持倉可正可負),方向決定ret的正負。範圍界線
先確認:目標用戶有多少在做空? 若主力是 long-only 散戶,這可降優先序,維持現在的「orphan 忽略 + 提示」即可。
關聯:PR #13、issue #14。