是的,這是其他 StrategyQuant (SQX) 用戶也曾經遇到的已知問題。通常是由
記憶體管理問題(Java 堆空間)、
臨時檔案損壞或
與系統資源工具衝突引起的。
以下是造成這些問題的最常見原因以及解決方法。
1. 記憶體(RAM)分配限制(最常見)
StrategyQuant 是一個基於 Java 的應用程式。如果它達到分配給它的最大記憶體限制,Java 虛擬機器 (JVM) 可能會崩潰,導致軟體消失或立即退出,且不會彈出任何警告對話框。
- 解決方案:
- 開放策略量化。
- 進入配置(齒輪圖示)->內存。
- 增加最大記憶體(RAM)設定。如果您的電腦有 16GB 內存,請嘗試為 SQX 分配 12GB 或 14GB。
- 重啟 StrategyQuant 以使變更生效。
- 注意:如果您運行的是大規模最佳化(例如,對龐大族群進行複雜的遺傳進化),則仍可能達到限制。請嘗試在專案設定中降低「族群規模」或「資料庫容量」。
2. 檢查“HS_ERR”Java崩潰日誌
當 Java 嚴重崩潰時,通常會在主安裝資料夾(通常是 C:\StrategyQuantX)中留下特定的錯誤檔案。
- 解決方法:尋找名為 hs_err_pidXXXX.log 的檔案(其中 XXXX 為數字)。開啟此文字文件,搜尋「記憶體不足」或「存取衝突」。這可以確認是記憶體問題還是驅動程式衝突。
3. 損壞的臨時文件
有時,先前的當機會在臨時資料夾中留下損壞的文件,導致 SQX 在嘗試讀取這些文件時退出。
- 解決方案:
- 關閉 SQX。
- 導覽至您的安裝資料夾,例如 C:\StrategyQuantX\user\tmp\。
- 刪除 tmp 資料夾中的內容(不要刪除資料夾本身,只需刪除其中的檔案)。
- 另外,請檢查 C:\StrategyQuantX\user\log\ 資料夾,如果資料夾過大,請清除舊的日誌檔案。
4. StrategyQuant 監督/檢查服務
SQX 內建了一個“監視程式”,旨在應用程式無回應時重新啟動或關閉它。但有時這項服務過於激進。
- 解決方法:嘗試使用安裝資料夾中的StrategyQuantX_nocheck.exe檔啟動軟體,而不是使用標準的 .exe 檔案。這樣可以繞過一些可能導致程序過早退出的內部健康檢查。
5. 過熱(筆記型電腦/高效能設定)
如果在長時間高強度測試後(例如 2-3 小時)出現退出,則可能是 CPU 降頻,或者係統因過熱而觸發了應用程式進程的安全關閉。
- 解決方法:監控CPU溫度。如果是筆記型電腦,請確保其通風良好。
待解決問題的總結清單
- 檢查日誌:檢視 C:\StrategyQuantX\user\log\StrategyQuant\MainLog.log(或類似檔案)中當機前的最後一筆記錄。
- 增加記憶體:在 SQX 設定中分配更多記憶體。
- 清除臨時資料夾:刪除使用者/tmp 資料夾中的檔案。
- 安全模式:嘗試透過 StrategyQuantX_nocheck.exe 啟動。