067 張遠獨立建模

字數:4276   加入書籤

A+A-


    陳帆的手指還懸在鼠標上方,盯著主屏右下角那條剛剛彈出的警告信息。係統判定新一輪基差機會出現,信號清晰,邏輯閉環完整。他正要開口,張遠卻先動了。
    沒有提加倉,也沒問要不要再跑一遍流程。張遠調出後台數據流,把過去七十二小時的所有套利記錄導了出來,連同曆史價差波動曲線、成交密度分布圖一起拖進分析窗口。他的動作很穩,但敲擊鍵盤的節奏比平時快半拍。
    “我想試試看,能不能找出規律。”他說。
    李陽從代碼界麵抬眼:“什麽規律?”
    “不是單次操作的節奏,是整個過程的共性。”張遠指著屏幕上三組並列的折線,“每次偏離發生時,市場狀態其實不一樣。有的流動性差,有的機構持倉突變,有的是政策預期擾動。但我們每次都用同一套邏輯應對。我在想,能不能反過來——先判斷環境,再決定是否介入。”
    陳帆靠向椅背,沒打斷。他知道張遠的意思。跨市場套利的成功讓他們看到了係統的價值,但也暴露了一個問題:策略模塊太依賴預設條件,缺乏對“何時不該出手”的識別能力。
    “你想建個篩選器?”陳帆問。
    “更像是一個前置模型。”張遠點頭,“隻盯上證50成分股,結合估值、動量和股東結構,提前判斷哪些時候容易出現定價偏差。”
    李陽皺眉:“三個因子?怎麽加權?你有回測數據支撐嗎?”
    “還沒有。”張遠坦然承認,“但我可以試。”
    陳帆看了他一眼:“那就做。先把框架搭出來,我們一起來調。”
    接下來兩天,張遠幾乎沒離開過操作台。他把係統裏所有與個股相關的底層模塊拆解了一遍,參考了波動率計算層的時間序列處理方式,也借用了MACD背離檢測中的滑動窗口邏輯。但他沒照搬,而是重新定義了輸入變量。
    第一個因子是“估值分位數”,取每隻股票近五年市盈率所處的曆史位置;第二個是“動量斜率”,不采用簡單漲跌幅,而是通過線性回歸擬合最近二十個交易日的價格趨勢線,提取斜率值;第三個是“機構持倉集中度”,用前十大流通股東持股比例之和,剔除大股東後計算變動率。
    初版模型運行結果並不理想。第一次輸出名單裏,出現了好幾隻基本麵疲軟、短期被炒作的標的。李陽立刻指出問題:“動量因子權重過高,你在追高。”
    “我知道。”張遠沒反駁,“是因為窗口期選得太短,反應滯後。我打算改用動態周期——當價格突破布林帶上軌且成交量放大時,自動縮短觀察區間,增強敏感性。”
    “那你得加上衰減機製。”李陽提醒,“不然容易反複打臉。”
    張遠記下建議,當晚就把算法重寫了一遍。他在趨勢判定部分引入了陳帆在國債分析中使用的“持續性驗證”邏輯:隻有連續兩個周期方向一致,才確認趨勢成立。同時為每個因子設置置信區間,低於閾值的直接過濾。
    第三天清晨,新版本模型首次跑通回測。測試範圍是過去兩年內上證50成分股中漲幅進入前10%的個股,共47隻。模型成功覆蓋其中31隻,準確率66%,顯著高於隨機選擇。
    更關鍵的是,它避開了大部分“偽強勢”行情。比如某白酒股在一季度末因渠道囤貨導致短期放量上漲,傳統動量策略會誤判為啟動信號,但該模型因估值已處98%分位而自動排除。
    “可以試實盤了。”張遠說。
    李陽仍持保留意見:“樣本量不夠大,而且沒經曆極端行情檢驗。萬一遇到暴跌或停牌呢?”
    “那就小規模驗證。”陳帆開口,“用社團資金5%,建個模擬組合。不下實單,隻走全流程,看信號穩定性。”
    三人達成一致。係統接入實時行情後,模型開始每日掃描。第一天無提示,第二天觸發兩隻備選,均因流動性不足被自動過濾。直到第三日早盤,屏幕中央跳出一條醒目標記:
    【三因子模型信號激活】
    標的:浦發銀行(600000)
    當前評分:8.3/10
    觸發原因:估值位於曆史低位(23%分位),動量斜率由負轉正持續兩日,機構持倉集中度環比上升4.7個百分點
    “這隻股最近很安靜。”李陽盯著K線圖,“一個月沒大漲,也沒消息。”
    “正因為安靜。”張遠指著資金流向圖,“北向資金連續三天淨買入,昨天券商席位掛出大買單,但股價沒動。說明有人在吸籌。”
    “可財報還沒出。”李陽堅持,“現在買等於賭業績。”
    “不是賭。”張遠搖頭,“是概率博弈。模型不保證一定漲,但告訴我們現在這個位置,上漲的可能性大於下跌。”
    陳帆沉默片刻,點了頭:“按計劃執行。全程監控,七日內若未啟動則清零信號。”
    賬戶權限開放後,虛擬組合立即生成。係統將5%資金劃入獨立單元,鎖定浦發銀行為唯一持倉目標,等待最佳買入時機。
    當天下午兩點十八分,盤口出現變化。賣一檔掛單量驟減,買二、買三迅速補位,形成階梯式托單結構。同時成交量溫和放大,換手率從0.3%升至0.6%。
    “量價配合不錯。”張遠調出委托隊列,“不像砸盤出貨。”
    “像有人在接。”李陽補充,“但規模不大,可能是自營盤。”
    就在此時,係統自動標記:“晨星形態確認”。這是K線組合中常見的底部反轉信號,通常出現在下跌末端,由一根長陰線、一根低開十字星和一根陽線構成。模型將其納入輔助驗證條件,一旦匹配,立即提升優先級。
    倒計時三分鍾後,買入指令發出。虛擬倉位完成建倉,成本價12.47元。
    接下來兩天,股價小幅震蕩上行。第五日開盤,交易所發布上市公司信息披露提示函,提及多家銀行即將披露季度財報。午後,財經媒體傳出風聲,稱部分股份製銀行業績超預期。
    收盤前半小時,浦發銀行突然放量拉升,一筆三千手的大單直接掃掉上方所有賣單。股價衝上漲停板,封單堅決。
    龍虎榜尚未公布,但所有人都明白發生了什麽。
    “淨利潤同比增17%。”張遠看著新聞快訊,“今天剛審計完,明天正式公告。”
    李陽盯著屏幕上的收益曲線,緩緩吐出一口氣:“提前三個交易日抓到,這不算運氣了。”
    陳帆打開模型文檔,一頁頁翻閱張遠提交的技術說明。從因子選取依據,到權重分配邏輯,再到異常值處理方案,條理清晰,可追溯性強。最關鍵的是,整個架構留有擴展接口,未來能接入更多維度。
    他合上文檔,轉向張遠:“你出師了。”
    然後調出資金管理界麵,在權限列表中新增一條記錄:張遠,賬戶級別A,操作限額30%,風控規則同步生效。
    張遠沒說話。他重新打開了回測程序,把測試周期延長到三年,加入了2008年四季度和2015年股災階段的數據段。光標停留在參數調節欄,手指微動,一點點調整動量因子的衰減係數。
    李陽站到他身後,看著副屏上滾動的輸出結果。“你準備加入波動率修正嗎?”他問。
    “已經在寫了。”張遠回,“如果市場整體波動超過閾值,動量信號應該降權。”
    李陽點點頭,轉身走向自己的終端。“那我把這部分代碼結構調整一下,提高運算效率。”
    陳帆坐在主控台前,目光掃過三個屏幕。左側是國債期貨的基差監控,中間是情緒因子模塊的實時評分,右側則是剛剛生成的“三因子上證50”全樣本回測報告。
    服務器風扇穩定運轉,指示燈綠光流轉,行情數據流持續刷新。
    張遠敲下回車,新一版模型開始加載。