模擬仿真引擎是一個獨立的模塊,它在歷史運行時數據上測試新的交易理念,但不實際執行交易。在交易理念開發的早期階段,常常使用Matlab或者Excel來編程,但模擬引擎與之不同,它在對交易理念進行測試時常使用與最終產品一樣的語言(c++或是Java)。
當產品代碼編寫完成之後,首先將模擬引攀在較長時間的歷史數據上運行一遍,也就是進行回顧測試。此時,我們可以對模擬引擎進行完善,以改進系統並且修復漏洞。一旦回顧測試的表現令人滿意,系統將切換到實時數據,也就是產品系統的輸人數據。然而這時系統仍然處於測試狀態,系統還不能實際發出交易指令。作爲替代,我們將所有要發給經紀自營商的指令都記錄到一個文本文件裏。系統在實時數據上的測試階段也稱爲“紙交易”(paper-trading)。
如果紙交易的表現令人滿意,並且與回顧測試結果相吻合,紙交易就轉爲實際交易。系統還需要連續不斷的人力監督,以確保系統免受惡意侵害,比如計算機病毒或者模型沒有計人的市場事件等。然而正常情況下,交易員的作用應當僅限於確保系統的表現處於特定範圍之內。一旦邊界被突破,交易員應有權停止當天交易或者直至導致邊界突破的問題得以解決。