一個很簡單的驗證:
以excel來隨機生成數列,並轉換成k線圖。資料結構
A G H
隨機值 O H L C 採樣值 (自己輸入)
A2 B2 C2 D2 E2
A3
A2=自己輸入值,或者用RANDBETWEEN(最小,最大)
H2=採樣值
A3=INDEX($A:$A,(ROW()-1)*$H$2+1)
B2=MAX(INDEX($A:$A,(ROW()-1)*$H$2+1):INDEX($A:$A,ROW()*$H$2))
C2=MIN(INDEX($A:$A,(ROW()-1)*$H$2+1):INDEX($A:$A,ROW()*$H$2))
D2=INDEX($A:$A,ROW()*$H$2)
Crtl+G 位置寫 A3:A10001 ,Ctrl+D 生成一萬筆資料
那麼這就會趨近於隨機成交價,在特定時間內形成的K線統計圖。
如果你要用舊式的,也就是每5秒搓合一次,你要弄出1分鐘K線,
那採樣值=60/5=12。
逐筆交易可以直接打60,只是你的生成數列要很長,才會統計出你要的幾分K總計。
曾經拿來賣課的"標準圖"
M頭
飆股
旗型與跌破
當然你用其他語言也可以跑出同樣的東西,會寫的你可以自己寫一個出來。
我只是針對不需要特別下載語言編譯器的狀況下,能再現的最簡易方案。
總之,你就會發現:只要你更新得夠多,最終就可以隨機生成出你想看到的"型態"圖。
那麼接下來就是驗證了,既然你已經有隨機生成的假型態圖,以及真實的歷史價格。
則你可以分別做:
a. 實驗組:隨機取樣一股票或期貨,針對特定型態來統計其獲利率。
b. 對照組:隨機生成的模擬價格,針對特定型態來統計其獲利率。
獲利=價格沒停損,打到停利出場。
虧損=價格停損出場。
獲利率=獲利出場數/(獲利+虧損數)
若 a獲利率>b,則技術分析有預測能力。
a獲利率<=b,則技術分析沒有預測能力。
不過假設你都實作到這裡了,那應該會體認到一個現實,就是跟你想的不同。
這東西跟丟銅板沒有兩樣,甚至t檢定都會>0.05,那麼首先:
「一個方法的獲利與否,和有無預測能力無關。」
如果你著重在預測價格走勢的話,我認為你最終會走入死胡同。