quant版自動(dòng)復(fù)權(quán)、映射、換倉(cāng)用于股票的小bug
作者:開(kāi)拓者 TB 來(lái)源:cxh99.com 發(fā)布時(shí)間:2020年11月02日
-
咨詢內(nèi)容:
在學(xué)習(xí)TbQuant版關(guān)于除權(quán)換月的處理的文檔時(shí),有個(gè)文件名字叫《除權(quán)換月的后復(fù)權(quán)處理——系統(tǒng)函數(shù)便捷處理》,里面介紹了三個(gè)系統(tǒng)函數(shù)設(shè)置后復(fù)權(quán)、映射和自動(dòng)換倉(cāng)。
但是在進(jìn)行股票自動(dòng)換倉(cāng)試驗(yàn)時(shí)發(fā)現(xiàn)如下問(wèn)題,招商銀行換倉(cāng)后還是持有100股,而300755,復(fù)權(quán)自動(dòng)換倉(cāng)后變成了持倉(cāng)200股。
先貼試驗(yàn)用的代碼
用于招商銀行
用于另外一只股票
出現(xiàn)以上問(wèn)題,我猜測(cè)主要是由于自動(dòng)換倉(cāng)的系統(tǒng)函數(shù)采納了《除權(quán)換月的后復(fù)權(quán)處理——后復(fù)權(quán)數(shù)據(jù)》中的代碼,如下
lots=Max(1,Round(Abs(CurrentContracts*Rollover/Rollover[1]),IIF(Category==0,-2,0)));
該代碼通過(guò)四舍五入的方法取整百股數(shù),然而在實(shí)盤(pán)的股票交易中,如果某賬戶持有的該股票送的股數(shù)不足100股,是可以產(chǎn)生零頭股數(shù)的。那么如果在回測(cè)中交易某股票的股數(shù)較少,就可能與實(shí)盤(pán)交易的結(jié)果產(chǎn)生較大誤差。就像上圖招商銀行的情況,而另一只股票由于期間是10送8,因此四舍五入由100股持倉(cāng)在除權(quán)后變成了200股持倉(cāng)。
請(qǐng)技術(shù)人員指正。
附件: 你需要登錄才可以下載或查看附件。沒(méi)有帳號(hào)?注冊(cè) ?
?來(lái)源:CXH99.COM
-
TB技術(shù)人員:
是的,你所說(shuō)的情況是存在的。目前的規(guī)則,沒(méi)有太好的辦法去規(guī)避這種因?yàn)榱泐^的計(jì)算最后四舍五入而導(dǎo)致的偏差。。
放大信號(hào)持倉(cāng)倍數(shù),則可以體現(xiàn)出10送8.
?
-
TB客服:
小米 發(fā)表于 2020-3-3 09:05
是的,你所說(shuō)的情況是存在的。目前的規(guī)則,沒(méi)有太好的辦法去規(guī)避這種因?yàn)榱泐^的計(jì)算最后四舍五入而導(dǎo)致的偏 ...
明白了,謝謝。