VirtualApi 期貨CTP TICK級本地量化交易仿真回測系統

2021-01-07 Jadely1122

VirtualApi目前支持上海期貨交易所的CTP回測,可以看做本地計算機架設了一套SIMNOW仿真環境,可用於CTP程序化交易,量化交易回測。

VirtualApi2.52版本說明:當前版本的Virtualapi是對上期CTP接口 6.3.15的仿真(包括上期SIMNOW和各期貨公司實盤都採用6.3.15版本)支持的程式語言

VirtualApi Api支持多種程式語言,包括C++、Python、Java、C#、Golang、易語言等 進行量化交易回測。

支持的作業系統

VirtualApi Api支持Windows作業系統,版本要求Windows7、Windows2008及以上。

支持的量化交易框架

VirtualApi 支持各種基於CTP接口的自編程序和框架,例如vn.py、Quicklib、海風等。

CTP Demo和Virtualapi For CTP Demo 代碼是一樣的,不同的採用了2套DLL。

為了克服現有技術存在的上述不足,VirtualApi仿真API的回測技術應運而生,它是模擬原生API來實現的。例如通過模擬原生交易API和行情API,例如通過模擬原生API的庫方法的定義、頭文件的定義等,使得回測和實盤交易代碼,簡單的將實盤代碼替換為仿真API,對底層代碼可不作改動或改動較少即可實現回測和參數優化。

升級說明:Virtualapi V2.5.2 解決了上一個版本在某些環境中查詢持倉回調不反回數據的問題。

CTP可以改為自己帳戶接實盤,Virtualapi用戶回測。

問題1:SIMNOW和Virtualapi(VirtualApi 期貨CTP TICK級本地量化交易仿真回測首頁)所有什麼不同?

Virtualapi2.52

SINNOW是上期的CTP接口仿真環境,可以註冊期貨模擬帳戶,用CTP api進行交易,SIMNO的功能主要是用於功能測試。

而Virtualapi相當於你可以在本地計算機架設一套SIMNOW的仿真結算系統,並且可以快速回訪TICK數據文件,主要用於CTP接口的量化交易回測。

問題2:支持Virtualapi的數據文件從哪裡下載?

我們維護了一套支持Virtualapi欄位順序格式的數據採集伺服器,一般每半個月到1個月會打包壓縮到網盤。

mdshare和quicklib量化交易行情數據共享中心不僅提供了網盤下載連結,還提供了可以自己部署的數據採集服務DataCollect.exe。

問題3:Virtualapi支持哪些程式語言?

Virtualapi是對CTP底層仿真,並不是程式語言框架。所以不管是你自己開發的CTP程序還是用了任何程式語言的CTP框架,都可以使用Virtualapi進行回測,只要通過替換原生DLL的方式,並指定數據文件路徑list.csv和指定手續費設置setting.ini,就可以在3分鐘內將你之前開發的CTP策略程序轉換為回測程序,在代碼上可以不做任何修改。

問題4:使用Virtualapi需要注意哪些問題?

CTP是2Tick/秒, Tick之間有0.5秒的延遲,如果你做CTP在行情接收TICK後放入緩衝區,採用另一個線程進行計算,也就是說採用的是生產者消費者模式的話,是不能用於Virtualapi的。

因為Virutlapi是快速回放TICK,如果線程之間價格不一致的話,會導致很大的隨機誤差,也許計算策略的時候已經是5分鐘之前的TICK的價格了,底層結算就會出現誤差。

您可以做一個策略,如果同一個程序用同一組數據文件進行回測,資金曲線不完全一致的話就是這種隨機誤差導致的。

為了避免這個問題的發生,請在使用Virtualapi進行回測的時候,需要在行情回調函數中直接進行策略邏輯的計算,切記不要將Tick放到另一個線程裡進行策略邏輯的計算。

行情回調函數是指以下函數:

///深度行情通知

virtual void OnRtnDepthMarketData(CThostFtdcDepthMarketDataField *pDepthMarketData) {};

問題5 :Virtualapi是免費的嗎?

Virtualapi承諾提供對所有人永久免費的版本。

問題6:Virtualapi支持的數據格式是怎樣的?

CSV數據文件欄位順序:

localtime (本機寫入TICK的時間),

InstrumentID (合約名),

TradingDay (交易日),

ActionDay (業務日期),

UpdateTime (時間),

UpdateMillisec(時間毫秒),

LastPrice (最新價),

Volume(成交量) ,

HighestPrice (最高價),

LowestPrice(最低價) ,

OpenPrice(開盤價) ,

ClosePrice(收盤價),

AveragePrice(均價),

AskPrice1(申賣價一),

AskVolume1(申賣量一),

BidPrice1(申買價一),

BidVolume1(申買量一),

UpperLimitPrice(漲停板價)

LowerLimitPrice(跌停板價)

OpenInterest(持倉量),

Turnover(成交金額),

PreClosePrice (昨收盤),

PreOpenInterest (昨持倉),

PreSettlementPrice (上次結算價),

VirtualApi誕生的技術背景

現在的量化回測軟體和方法有三類,一類是通過文華、TB、MC等商業軟體,在商業軟體中通過編寫交易指標和交易公式,或通過加載用戶自己開發的第三方策略庫進行交易策略的開發和回測;第二類是直接使用交易所、券商、API軟體服務商提供的API或券商等機構提供的行情和交易API直接開發交易策略,或通過一些回測框架調用這些原生API進行回測;第三類是利用聚寬、優礦的網站在線平臺進行回測。

若採用第一類商業軟體開發量化交易回測系統,雖然對從事量化交易的人來說,開發策略需要的工作量較少,對開發者編程能力要求不高。但缺點也是顯而易見的,除了商業軟體本身需要收費提高了交易成本以外,採用商業軟體開發交易策略不夠靈活,使得很多交易策略無法實現。

若採用第二類直接使用API開發策略或採用針對API的回測框架,例如python的各種回測框架、matlaba的各種回測框架、R語言的各種回測框架,PyAlgoTrade、Zipline等、雖然開發策略較為靈活,但缺點是開發交易策略的實盤代碼並不能直接進行回測,必須要採用引入回測框架進行回測,待回測完畢,再將回測完成的參數接入實盤策略代碼中或刪除回測框架部分的代碼接入實盤交易的API,使得量化交易回測代碼和實盤的代碼有較大的改動,增加了策略開發者的工作,也增加了量化交易愛好者時間成本,甚至對很多編程能力有限的量化愛好者來說提搞了研究難度的門檻。

若採用第三類在線回測平臺進行回測,由於需要將編寫的策略在網站指定的伺服器上運行,由於是多用戶共享一臺伺服器,所以回測性能無法得到保證、網站更傾向於採用精度不高的數據進行回測。還由於對策略開發者來說不是使用原生API進行開發策略,所以策略開發的自由度也不夠,很多想法也無法實現。更重要的是,選擇網站在線平臺的方式來開發量化交易策略,就等於默認了網站管理員可隨時查看自己辛辛苦苦開發的策略代碼,保密性讓人擔憂,從事量化交易的專業機構幾乎不會採用在線網站的回測方式。

近年來,量化交易在金融領域應用的越來越廣發,回測系統的設計是量化交易中不可缺失的一部分,但同時也暴露出一些問題,例如商業軟體成本高、自己搭建會測框架時間成本高,難度大、採用第三方回測框架難度大、回測到實盤交易的代碼改動較大、量化策略保密性不高等等。

Virtualapi可以作為期貨CTP TICK級回測的本地仿真環境,實現CTP量化交易。

VN.PY回測可以使用Virtualapi

相關焦點

  • Fooltrader量化分析交易系統
    fooltrader(trade as a fool)是一個利用大數據技術設計的量化分析交易系統,包括數據的抓取,清洗,結構化,計算,展示,回測和交易.它的目標是提供一個統一的框架來對全市場(股票,期貨,債券,外匯,數字貨幣,宏觀經濟等)進行研究,回測,預測,交易.它的適用對象包括:量化交易員,財經類專業師生,對經濟數據感興趣的人,程式設計師,喜歡自由而有探索精神的人1. 能做什麼1.1 自定義分析邏輯和視圖
  • 恒生電子量化解決方案:滿足不同機構量化、策略交易需求
    目前,國內量化市場飛速發展,市場對於量化系統的需求也變得更為迫切,尤其是針對機構投資者。恒生電子推出的量化解決方案主要以寬途開放性終端平臺為基礎,以策略交易、做市交易等工具為核心,以算法交易、策略服務為特色,提供覆蓋多個不同應用場景、多類不同用戶群體的量化解決方案。
  • 原油期貨TAS指令仿真交易下周一啟動
    本報訊 上海國際能源交易中心(簡稱上期能源)1月7日發布通知,決定自1月13日(周一)至2月7日(周五)開展原油期貨結算價交易(TAS)指令仿真交易,春節期間仿真系統暫停服務。
  • 量化交易入門
    這麼做的一個好處是可以實現回溯測試軟體與執行系統的無縫集成,甚至還可以添加一些高級的統計策略。對於HFT策略,更應該使用自主實現的系統。  在做系統回測時,一定要量化表示系統性能。定量策略的「業界標準」度量為最大資金回挫與夏普比率。最大資金回挫表示一段時間(通常一年)內帳戶資金曲線從波峰至波谷的最大跌幅,常使用百分比表示。由於大量的統計因素,LFT策略比HFT策略的資金回挫更高。
  • 一位從事量化交易的實戰者,手把手帶你入門量化交易!
    一旦確定了某個或某套策略組合,就需要根據歷史數據對其盈利能力進行測試,這就屬於回測的範疇了。回測的目的是提供證據,以證明通過上述過程確定的策略在應用於歷史數據和樣本外數據時是能獲得收益的。這就為該策略在「現實世界」中的表現設定了預期。然而,由於種種原因,回測並不能完全保證策略的成功。這或許是量化交易中最為微妙的領域了,因為這其中有許多的偏差,需要經過深思熟慮儘量消除偏差。
  • 上海國際能源交易中心發布關於開展原油期貨TAS指令仿真交易的通知
    各有關單位:上海期貨交易所子公司上海國際能源交易中心(以下簡稱上期能源)已於2020年1月7日發布《關於開展原油期貨TAS指令仿真交易的通知》 (上能發[2020] 3號),決定自2020年1月13日(周一)至2020年2月7日(周五)開展原油期貨TAS(結算價交易)指令仿真交易,春節期間仿真系統暫停服務。
  • 一位普通交易者的量化交易進階之路
    )實盤交易大賽量化組第七名、目前任杭州循道量化資產總經理的陳海洋,在本屆實盤大賽頒獎大會量化、外盤交流專場上吐露了他二十多年前的一段慘痛經歷。從資產配置到品種,再到將策略進行各個維度的分散,這就是他交易系統的核心思想。   自從有了系統後,他的交易似乎變得輕鬆了,自己也比以前清閒了,精神壓力小了很多,不會患得患失,只需要無條件執行系統。「未來行情雖然不在自己掌握之中,但是不管出現任何行情,系統都可以從容地應對。」閒下來的他不忘繼續充電,比如說參加培訓。
  • 關於量化雲,這有個6合1平臺了解下
    ;後臺打通各個應用的帳戶系統;底層則以標準量化模塊為基礎,形成時空量化雲服務平臺的架構規劃。CHRONOS量化雲平臺的主要核心功能包括數據、回測、仿真和接口等,在支持外部策略的同時,支持手工交易、籃子期現套利、做市套利、統計套利、籃子交易、TWAP籃子交易、大宗交易、跨期套利等內部策略。
  • 量化交易入門(精華必讀版)
    對於回測軟體平臺、Excel或MATLAB,我不作過多介紹。我比較推崇的是創建一個內部技術棧。這麼做的一個好處是可以實現回溯測試軟體與執行系統的無縫集成,甚至還可以添加一些高級的統計策略。對於HFT策略,更應該使用自主實現的系統。在做系統回測時,一定要量化表示系統性能。定量策略的「業界標準」度量為最大資金回挫與夏普比率。
  • 「老司機」如何建立交易系統——系統歷史回測
    交易系統歷史回測交易系統回測是在應有的交易時間框架裡把定義好的系統信號通過歷史數據做一次徹底的檢查,如果在信號中出現了問題,如:信號偏移、無信號等因素就需要對系統信號做更詳細的檢查、更改及調整,同時這一步驟也可能是最艱難的一步,需要有足夠的耐心在這一步中反覆對系統信號進行檢查和調整,而在這段時間裡也是最枯燥,乏味的時間段,但是如果要想在交易市場中賺到錢,為自己手中的帳戶負責
  • 哪個期貨交易軟體好
    而在國內期貨行情交易軟體有很多,像文華財經、博易大師、金牛財順、金字塔、交易開拓者、易盛這些都是從事期貨投資的朋友可能會接觸到的軟體系統,因行情豐富而深受投資者喜愛。文華財經軟體的興起,一是抓住了移動網際網路的時代機遇,而是抓住了期貨行業發展的階段性特點。國內期貨市場自2012年左右興起了程序化交易與量化投資的風潮,文華公司順勢升級開發了新的PC端行情交易軟體,專門應用於程序化投資交易的需求,這就是文華贏智版本的誕生。
  • 量化交易是什麼?| 金色百科
    量化交易(Quantitative Trading)類屬一種投資方法。是指藉助現代統計學和數學的方法,利用計算機技術來進行交易的證券投資方式。量化交易起源於上世紀七十年代的股票市場,之後迅速發展和普及,尤其是在期貨交易市場,程序化逐漸成為主流。
  • 吳廣奇:主成分分析法在黃金期貨量化策略中的應用
    本文以黃金期貨為例,使用主成分分析法,對影響黃金期貨價格的基本面變量數據進行降維,構建其量化交易策略。  影響黃金價格的主要因素  黃金作為一種特殊的大宗商品,具有商品、貨幣和投資避險的多重屬性。本文從黃金的供需、經濟數據、金融資產三個維度中,選一些基本面因子對黃金價格的影響進行分析。  首先來看黃金的供需。
  • 天風證券與量化交易系統LTS團隊達成重要戰略合作
    摘要 【天風證券與量化交易系統LTS團隊達成重要戰略合作】近日,天風證券與量化交易系統LTS團隊達成重要戰略合作,為了配合交易系統LTS,天風引入市場一流的量化服務團隊和一流的量化fof團隊。
  • 融合大數據,FollowQuant開創量化交易新時代
    目前,依託Followme交易社區的大數據,FollowQuant採用流處理技術可實現對千萬級實時交易訂單流與上億級的歷史交易數據進行即時可視化統計分析與監控,對交易品種的倉位變化,帳戶交易信息查詢,新開帳戶與出入金統計等均能實現實時響應。
  • 在選擇標的回測時,如何避免錯誤觸發交易信號?
    因此我們關心的是如何分辨這些交易策略的好壞,以及避免在這過程中犯下一些常見的錯誤,例如存活偏誤 (survivorship bias)、前視偏誤 (look-ahead bias)、資料窺探偏誤(Data-snooping bias)以及對交易成本的考量等,以下一一為大家介紹。下圖為量化交易的流程。
  • RQAlphaPlus股票和期貨回測引擎
    RQAlpha 是一個中國市場領先的股票和期貨的回測引擎,具備日級別的歷史數據回測,並且具有很強的可拓展性。RQAlpha 從數據獲取、算法交易、回測引擎,實盤模擬,實盤交易到數據分析,為程序化交易者提供了全套解決方案。特點易於使用: RQAlpha讓您集中於策略的開發,一行簡單的命令就可以執行您的策略。完善的文檔: 您可以直接訪問 RQAlpha 文檔 或者 Ricequant 文檔 來獲取您需要的信息。
  • 滬深300股指期權仿真交易中的套利機會
    正是由於期權這種固有的各種數學關係,才使得交易者即使沒有理論定價模型和量化數據信息,也可以通過複合關係判定獲利潛能,進而擬定合理的交易策略。目前的仿真交易系統裡有很多期權的定價違背了這些最基本的關係,因此產生了許多低風險甚至無風險的套利機會。文中給出了仿真交易系統裡幾種常見的套利機會。
  • 【python量化】期貨ML策略(一)數據獲取
    最近要開始研究期貨上的機器學習(Machine Learning)策略了。相信關注我的朋友已經多多少少知道一些有關機器學習的基礎知識了,對於機器學習的基礎知識我這邊不會介紹,只會簡單的提一下,不懂的朋友自行網上搜索資料學習。未來一段時間裡,我將會利用所學的知識開發一個期貨上的ML策略。
  • 恒生期貨交易系統是如何運作的
    恒生期貨交易系統是如何運作的?恒生交易系統,是國內高端期貨交易管理系統,滿足股指期貨開展需求,各種期貨擴展應用可進行一體化應用。恒生交易系統特點:大容量:系統支持客戶容量為50萬,日處理成交筆數百萬級。