手機震動停下的瞬間,陳帆抬手合上筆記本蓋,屏幕熄滅前最后一行日志還停留在“信用風險事件響應機制_v0.1 已激活”。他站起身,背包拉鏈閉合的聲響驚動了李陽,后者立刻從椅子上直起背,手指松開U盤接口。
“走嗎?”李陽問。
陳帆點頭,沒說話。張遠抓起桌角半空的可樂瓶晃了晃,咕噥一句“總算能喘口氣”,把瓶子扔進垃圾桶。三人收好設備,穿過走廊走向實驗樓東側的競賽中心。服務器指示燈仍在閃爍,風扇低鳴未斷,數據采集腳本照常運行。
賽場入口排著長隊,各校隊伍陸續進場。剛走到簽到處,幾個穿深灰夾克的學生迎面攔住去路。為首那人掃了一眼他們胸前的參賽牌,嘴角一揚:“你們就是用Access跑實時系統的?”
李陽皺眉,張遠剛要開口,陳帆已經往前半步:“是。”
“Access?”對方像是聽到了什么笑話,“你們知道現在主流數據庫都用SQL Server了嗎?不是我說,連我們大一實訓項目都不拿這玩意兒做后臺。”
“我們不需要主流。”陳帆聲音平穩,“只要結果準。”
“那待會兒比完再說。”那人冷笑一聲,轉身走向內場,背影上印著“清華預備隊”字樣。
張遠咬牙:“這群人怎么這么沖?”
“別理。”陳帆拉開背包,確認移動硬盤在內側夾層,“他們的優勢是資源,我們的優勢是效率。”
檢錄完畢,四人組被分配到C區第七工位。主控臺是一臺統一配置的Pentium II電腦,系統預裝Visual Basic 6.0和Access 2000。陳帆插上自己的U盤,導入本地環境模板,三分鐘后完成基礎調試。
比賽倒計時還有五分鐘,全場安靜下來。突然,主屏幕閃出提示:【網絡連接中斷,局域網異常】。
周圍隊伍開始騷動。張遠猛地抬頭:“是不是他們搞的?”
陳帆沒回應,迅速打開命令行窗口,執行ping測試。請求超時。他轉向李陽:“查路由表,看是不是ARP欺騙。”
李陽接入交換機端口,幾秒后說:“IP沖突,有設備在廣播虛假MAC地址。”
“手動綁定。”陳帆遞過一張寫有參數的紙條,“用備用通道。”
李陽快速輸入指令,重啟網卡。三分鐘后,連接恢復,延遲穩定在22毫秒。
“修好了。”他說。
陳帆沒松勁,立即調出緩存數據流——過去七十二小時銅、鋁、鋅三種金屬期貨的日線與分鐘級成交記錄,全部來自第52章爬蟲程序抓取的財經網站公開信息。他在Access中建立臨時關聯表,準備應對可能的數據預測類賽題。
鈴聲響起,賽題發布。
【任務:基于近三個月國內期貨交易所公布的金屬價格數據,構建預測模型,估算次日收盤價。評分標準:誤差率占70%,響應時間占30%。提交截止:90分鐘內。】
全場鍵盤聲驟起。
清華隊那邊,一人直接打開C 開發環境,另一人調用外部API加載歷史數據包。他們的主機明顯經過優化,啟動速度比普通機器快一倍。
“他們用的是定制框架。”李陽盯著對面屏幕角落閃過的一行路徑,“帶GPU加速。”
“不管別人。”陳帆敲下第一行代碼,“我們只拼邏輯密度。”
他放棄通用回歸模型,轉而提取系統內部積累的銅市波動特征庫——包括季節性庫存變動規律、主力合約換倉周期、以及現貨升貼水傳導延遲等非公開統計規律。這些數據源自過去兩個月人工錄入的行業簡報與交易所公告,經由第53章的風險分析模塊驗證過有效性。
“張遠,讀第三列驗證集。”陳帆邊說邊重寫VB中的矩陣運算函數,“李陽,監控內存占用,超過80%就提醒。”
張遠開始報數:“04-12,收盤58730,預測值58690……偏差40。”
“調整權重系數。”陳帆刪去冗余校驗層,將迭代次數壓縮至三次,“再試。”
時間一分一秒推進。第43分鐘,初步模型誤差率降至0.81%,但響應耗時仍高出清華隊0.9秒。
“不行。”張遠盯著計時器,“他們已經提交過一次測試了。”
“最后一次重構。”陳帆新建模塊,剝離圖形渲染部分,僅保留核心計算引擎,“改用滑動窗口加權法,跳過協方差矩陣求逆。”
李陽忽然出聲:“內存峰值在上升,再這樣下去會溢出。”
“清緩存。”陳帆按下快捷鍵,強制釋放非必要進程,“用靜態數組替代動態集合。”
第82分鐘,新版本編譯通過。測試用例跑完,誤差率0.67%,響應時間比清華隊最新記錄快0.3秒。
“提交。”陳帆點擊上傳按鈕。
系統顯示:【文件接收成功,等待評審】。
全場進入最后十分鐘倒計時。評委席低聲討論片刻,主裁判突然拿起話筒:
“鑒于本次比賽出現極端性能表現,評委會決定追加一輪現場演示環節——接入模擬行情流,實時生成趨勢判斷。每隊需在五分鐘內輸出未來十五秒的價格走向箭頭,連續七次匹配為優。”
規則突變,全場嘩然。
清華隊立刻切換備用程序,但不到兩分鐘,其中一臺機器藍屏重啟。
陳帆卻沒動。他拔下U盤,插入主機,啟用一個未在文檔中記錄的功能模塊——這是第52章爬蟲程序衍生出的輕量級流式處理器,專為解析不規則網頁文本設計,恰好能處理JSON格式的模擬報文。
“準備接收。”他說。
信號接入,數據流開始滾動。
第一秒,系統解析字段;第五秒,完成模式匹配;第十秒,首條趨勢箭頭出現在副屏上——藍色向上。
實際價格曲線隨后抬升。
第二輪,藍色向下,價格應聲回落。
第三輪,橫盤震蕩判斷準確。
直到第七次,紅線與藍線同步劃出拐點,全場靜默。
主持人遲疑幾秒,宣布:“冠軍——來自本校的‘金融洞察’團隊。”
清華隊一名成員站起身查看得分明細,突然指著屏幕:“他們用的還是Access?這怎么可能實時處理流數據?”
沒人回答。李陽默默拔下U盤,塞進內袋。張遠想說話,被陳帆抬手止住。
“回去再復盤。”陳帆關閉所有窗口,但未關機。屏幕上,預測腳本仍在運行,光標不斷刷新新的時間戳。
李陽低聲說:“他們電腦藍屏三次。”
張遠咧嘴笑了下,伸手去碰顯示器邊緣,指尖留下一道模糊印跡。
陳帆摘下耳機,聽見遠處有人議論:“那個Access……好像真能跑實時。”
他沒回頭,只將移動硬盤重新鎖進背包夾層。
主機風扇持續低鳴,散熱口飄出一絲微熱氣流,拂過桌面殘留的打印紙一角,紙頁輕輕顫動。