選股回測選日資料跟還原日結果一樣???

  •   785 
  • 最後發表   charlie1234  2022 二月 25
charlie1234 發文於   2022/02/18

今天在做選股的時候(2/18 20:00~21:00),出現一個很怪的狀況,發現採用日資料跟還原日出來的結果竟然會是一樣

這是在回測XQ這篇文章發生的狀況,停損利都是10%

感覺上應該是日資料的回測,被用還原日資料來做運算,以下圖的南亞跟台泥來看,其出場價格都沒有到10%,但報酬率有將近10%,這種情況應該是因為採用了還原日資料,中間又遇到除權息,還原之後,剛好有到獲利點10%,所以出場,但下表是採用日資料,正常來說,日資料的狀況,出場價格應該要是進場價的+-10%,然後加計除權息後,計算報酬率

附加檔案有採用日資料跟還原日的兩個回測報表,請小幫手看看,結果都是一樣的,這很不正常

附加文件

排序方式: 標準 | 最新
XQ小幫手 發文於   2022/02/21

Hello charlie1234,

 

就小幫手所知,雷達和選股中心回測的系統內建停損停利一律都是先納入除權息後再判斷價格是否達到出場限制。

並不是一般日會先用價格判斷出場後才納入除權息。

您可以參考雷達的回測報告說明

裡面有提到報酬率是依據交易分析中的進場點和出場點計算所得出的每筆交易的報酬率(股票會納入除權息再投資,期貨會去除換月價差影響)

charlie1234 發文於   2022/02/21

小幫手好

照您所說,那為何又會有一般日跟還原日的選項呢? 差異又在哪呢? 為何回測報告會完全無差異?

charlie1234 發文於   2022/02/21

再補充下,以這篇網友的反應,一般K跟還原日K跑出來的結果是不同的,以該篇文章出來的時間,自動交易模組還沒出來,所以應該是用雷達回測的,也可證明一般K跟還原日K兩個的計算方式是不同的

裡面也提到,兩個方式用的參考價是不同的,一般K是會扣掉除權息值,也算是我們平常會看的K棒,而還原日K,這邊可以很確定的是已經加了除權息值,所以停損利就會是設定的值

但是在一般日K上,XQ的說明就沒那樣清楚了,但在出場的計算上,並沒有說是會先加上除權息還是出場後再加上

這邊的報酬率也只說了每筆交易的報酬率股票會納入除權息再投資,但這個是用參考價去計算停損利後,在加上除權息,還是參考價先加除權息報酬再去計算出場點(但這不就是還原日K??),就沒有去說明了

 

總之,之前不管是選股還是雷達,用一般日K跟還原日K所出來的結果會是不同的,但現在測了幾個選股策略,竟然都相同,肯定是問題,煩請儘速了解,這個影響有點大啊,大家用一般日K回測,結果出的結果是用還原日K,可後續選股或自動交易還是用一般日K.......



XQ小幫手 發文於   2022/02/23

Hello charlie1234,

 

您可以先參考一下關於 還原價格 的說明。

簡單的總結一下,還原價格是把除權息的部分納入考量,並在原始價格上做調整的價格,其目的大多是為了能夠簡單算出報酬率。

重要的是這並不是真正能夠交易的價格,回測如果要盡量貼近實際狀況的話,到最後也應該是要轉回一般日的價格作進出場計算。

且回測時一般日資訊一樣會把除權息納入考量,所以兩者結果會相同,只是還原價格把除權息的部分反應在股價上,而一般日的價格沒有而已。

charlie1234 發文於   2022/02/23

小幫手好

我的問題點一直不在還原日,是一般日的個股報酬計算有問題

照您上面的說法,那在自動交易上回測不就也該一樣,但我回測起來又不相同,這又怎摸回事呢?

您隨便拿一個策略回測,都是不一樣的

難道一般日跟還原日回測算法在自動交易跟選股回測上還搞一國兩制?

 

您說到

還原價格把除權息的部分反應在股價上,而一般日的價格沒有而已。

照您所說,一般日在計算出場價格時,就應該是沒有加入除權息的部分,假設100進場,10%出場,就應該是110出場

而下面這句

一般日資訊一樣會把除權息納入考量

所謂的一般日把除權息納入考量,是不是在上面方式出場後才計入,所以報酬會是10%+除權息的報酬

 

以下圖震旦行為例,出場為正負10%,上面是一般日、下面是還原日

一般日的進場時93.2,出場是83.8,   不就等於剛好-10%,但報酬為-4.69%,不就是我上面寫的,用進場價去計算出場點,但除權息報酬後加所造成的,上面有位網友的案例,您們不也是這樣回應? 但現在選股的回測,一般日K似乎忽略了除權息這部分,沒有加入這部分的報酬率

 

而還原日的進場為76.76, 出場為84.86,報酬為10.13%,也是設定的10%出場,這個沒爭議,因為該價格已經加了除權息的部分

 

 Ps : 如小幫手覺得沒問題,煩請提供個股報酬率的算法公式,並提供個範例,如進場100, 獲利10%出場,有遇到配息5塊,最終在一般日的出場價格會是多少,報酬率會是多少?如何算出來的

我想這樣比較容易驗證是否有錯,謝謝

 

XQ小幫手 發文於   2022/02/25

Hello charlie1234,

 

首先關於自動交易策略回測跟選股回測,目前的機制下兩者應該不會完全相同。

因為選股中心回測的進場價格會是當天的收盤價和隔天的開盤價,而這兩個價格在自動交易裡面是很難被觸發的,尤其是隔天的開盤價自動交易目前應該是無法辦到。

策略雷達和選股中心若設定相同的話,兩者就可以產出一模一樣的報表。(參考附圖)

 

小幫手認為您下面的附圖應該是因為交易腳本中撰寫了用價格和庫存成本 (close & filledavgprice) 判斷10%出場,而造成兩者的差異。

須注意在這邊是只有用取得的價格去計算並判斷進出場。

一般日的價格並不會把除權息的影響納入考量,而只是單純用當下的價格去做判斷。

所以您可以看到震旦行買進賣出價格是符合腳本裡撰寫的 10%,但後面的報酬率因為是系統計算,所以會將除權息納入考量,因而導致出來的報酬率不是10%左右而是4.69%。

再看到還原日的部分,因為還原日的 價格 本身就是針對除權息調整過,所以您用價格和庫存成本去計算10%出場時,價格和報酬率都會是落在10%左右%。

 

至於策略雷達和選股中心的部分,由於控制停利停損的部分並不是用 價格和庫存成本 在腳本中計算,而是系統裡計算的,所以不論是用還原價格還是一般價格,系統在計算報酬率時都會將除權息納入考量。

在這報酬率到達設定的百分比時就會出場。

小幫手用雷達作了一個簡單的範例excel,並在工作表6上計算了報酬率。

如果您希望自動交易回測也會和雷達跟選股有類似的結果,停損停利的報酬率計算可以參考該表。

附加文件

發表回覆
Close