全距統計量 - 模擬與交易.7

更新於 發佈於 閱讀時間約 10 分鐘

承續前文所述,在小樣本數量限制下,迅速偵測到異常值,然後實施突破策略,尤有甚者,可以在已知的顯著水準值之下,預先得知臨界值,從而反推突破價格,進而達到當根K棒進場的即時效果!
本文利用Max-Min這個全距的概念,來衡量波動度大小,其大小的判斷依據為透過N(0,1)標準常態分配亂數模擬,模擬程序與Excel VBA程式碼分述如下

概念 : 1. 產生標準常態分配亂數、2. 一次性抓取N筆資料、3. 然後取最大值、最小值,然後兩數相減,得到全距、4. 重複步驟1~3、10萬次、5. 製作查表值

明顯地,執行下列程式碼後,可以獲得Max-Min超過五的標準差的大小,即可判斷異常值出現,進而可以執行
Buy next bar at Lowest(High,Len)+5*StdDev(High,Len) stop;
SellShort next bar at Highest(Low,Len)-5*StdDev(Low,Len) stop;

Excel VBA 參考程式碼如下
'宣告全域變數,提供模擬結果輸出
Public Const ConstValue = 0.398942283804044
Public Const NumberSimple = 4000
Public Const Pvalue = 100

Public Function RangeTest(ByVal NumValue As Variant)
Dim PseudoRnd, PseudoValue, NorValue As Variant
Dim ii, kk As Variant
Dim tempMaxValue, tempMinValue As Variant
Dim RangeValue(1 To NumberSimple) As Variant
Dim x(1 To 100) As Variant

For kk = 1 To NumberSimple
'常態分配亂數產生器
'Rnd函數的傳回值小於 1,但大於或等於零
'標準常態分配固定參數 1/sqr(2*3.1415926) = 0.398942283804044
'回傳四個標準差範圍的亂數
ii = 1
Do While ii <= NumValue
PseudoRnd = (Rnd(1) * 8 - 4)
PseudoValue = Rnd(1)
NorValue = ConstValue * Exp(-0.5 * PseudoRnd * PseudoRnd)
x(ii) = 0
If NorValue > PseudoValue Then
x(ii) = Round(PseudoRnd, 8)
'If x(ii) > 2.33 Then jj = jj + 1
'常態分配簡易比例偵查
ii = ii + 1
End If
Loop
tempMaxValue = -6
tempMinValue = 6
For ii = 1 To NumValue
If x(ii) > tempMaxValue Then tempMaxValue = x(ii)
If x(ii) < tempMinValue Then tempMinValue = x(ii)
Next ii 'For ii = 1 To NumValue
RangeValue(kk) = tempMaxValue - tempMinValue
'Debug.Print kk, ":", RangeValue(kk)
Next kk 'For kk = 1 To NumberSimple
'Debug.Print "********************************************************"
'*********************************************************************

Dim jj As Variant
'雙尾95%信賴區間
'Find the 10000-250th Biggest
'計算資料數據內的第n大數值,氣泡排序法 Bubble Sort
Dim tempValue As Variant
For jj = 1 To Pvalue
For ii = 1 To NumberSimple - jj
'SWAP
If RangeValue(ii) > RangeValue(ii + 1) Then
tempValue = ""
tempValue = RangeValue(ii + 1)
RangeValue(ii + 1) = RangeValue(ii)
RangeValue(ii) = tempValue
End If 'If RangeValue(ii) > RangeValue(ii + 1) Then
Next ii 'For ii = 1 To NumberSimple - jj
Next jj 'For jj = 1 To Pvalue
Debug.Print RangeValue(NumberSimple - Pvalue + 1)
'Debug.Print RangeValue(NumberSimple)
End Function

Public Sub Table()
'清空即時運算區,本段為主要的執行程式碼
'Application.SendKeys "^g ^a {DEL}"
Debug.Print "Num=34", RangeTest(34)
Debug.Print "****************************************"
Debug.Print "Num=30", RangeTest(30)
Debug.Print "****************************************"
Debug.Print "Num=25", RangeTest(25)
Debug.Print "****************************************"
Debug.Print "Num=21", RangeTest(21)
Debug.Print "****************************************"
Debug.Print "Num=20", RangeTest(20)
Debug.Print "****************************************"
Debug.Print "Num=15", RangeTest(15)
Debug.Print "****************************************"
Debug.Print "Num=13", RangeTest(13)
Debug.Print "****************************************"
Debug.Print "Num=12", RangeTest(12)
Debug.Print "****************************************"
Debug.Print "Num=11", RangeTest(11)
Debug.Print "****************************************"
Debug.Print "Num=10", RangeTest(10)
Debug.Print "****************************************"
Debug.Print "Num=9", RangeTest(9)
Debug.Print "****************************************"
Debug.Print "Num=8", RangeTest(8)
Debug.Print "****************************************"
Debug.Print "Num=7", RangeTest(7)
Debug.Print "****************************************"
Debug.Print "Num=6", RangeTest(6)
Debug.Print "****************************************"
Debug.Print "Num=5", RangeTest(5)
Debug.Print "****************************************"
Debug.Print "Num=4", RangeTest(4)
Debug.Print "****************************************"
End Sub




留言
avatar-img
留言分享你的想法!
avatar-img
Piemann的沙龍
21會員
113內容數
Piemann的沙龍的其他內容
2025/04/01
2025.04.01 明顯的,Cheat GPT 功能越來越強大,應用範圍只多不少 !! 輸入問題如下 : 1. 有一個隨機碼,長度為5個不重複的數字及小寫英文字母所組成, 例如 e2k9z、ju72d、...,共有一萬筆數據 2. 請設計一個雜湊函數方案,讓隨機碼對應到實數整數空間 3.
Thumbnail
2025/04/01
2025.04.01 明顯的,Cheat GPT 功能越來越強大,應用範圍只多不少 !! 輸入問題如下 : 1. 有一個隨機碼,長度為5個不重複的數字及小寫英文字母所組成, 例如 e2k9z、ju72d、...,共有一萬筆數據 2. 請設計一個雜湊函數方案,讓隨機碼對應到實數整數空間 3.
Thumbnail
2024/12/01
龐氏騙局定義 : 由後繼者的投資本金,支付前期投資者的紅利,謂之 !! 案例 : 制定獎勵生育誘因、追求人口紅利之國策,其實就是隱形的龐氏騙局 !! 那生命的意義,除了在於繼起宇宙生命之外,還有啥意義 ? 對曰 : 還得創造傳奇 ! 那如何創造傳奇 ? 對曰 : 確定目標、集中資源、專研
2024/12/01
龐氏騙局定義 : 由後繼者的投資本金,支付前期投資者的紅利,謂之 !! 案例 : 制定獎勵生育誘因、追求人口紅利之國策,其實就是隱形的龐氏騙局 !! 那生命的意義,除了在於繼起宇宙生命之外,還有啥意義 ? 對曰 : 還得創造傳奇 ! 那如何創造傳奇 ? 對曰 : 確定目標、集中資源、專研
2024/11/17
1990~1991之際,爆發第一次波灣戰爭(市場稱為第三次石油危機),起因是兩伊戰爭期間,伊拉克對科威特欠下巨債,戰後伊拉克藉端生事,要求取消相關債權,科威特不願意,因此伊拉克便開始調動軍隊部署於邊境(1990.七月中下旬),緊張局勢快速升溫,及至入侵(1990.08.02)科威特佔領全境後(199
2024/11/17
1990~1991之際,爆發第一次波灣戰爭(市場稱為第三次石油危機),起因是兩伊戰爭期間,伊拉克對科威特欠下巨債,戰後伊拉克藉端生事,要求取消相關債權,科威特不願意,因此伊拉克便開始調動軍隊部署於邊境(1990.七月中下旬),緊張局勢快速升溫,及至入侵(1990.08.02)科威特佔領全境後(199
看更多
你可能也想看
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
程式條件選股 主要做波段與短線,非價值型投資,操作週期約1個禮拜~多個月 選股純屬分享,本人並沒有帶入帶出及買賣推薦,任意跟單請盈虧自負,本人不帶任何責任。 大盤還在季線上主要還是以偏多操作,所以目前還是先分享做多選股 由於當沖根據金管會統計勝率較低,所以我也不做當沖,主要皆分享一些剛回檔均線或是剛
Thumbnail
程式條件選股 主要做波段與短線,非價值型投資,操作週期約1個禮拜~多個月 選股純屬分享,本人並沒有帶入帶出及買賣推薦,任意跟單請盈虧自負,本人不帶任何責任。 大盤還在季線上主要還是以偏多操作,所以目前還是先分享做多選股 由於當沖根據金管會統計勝率較低,所以我也不做當沖,主要皆分享一些剛回檔均線或是剛
Thumbnail
小樣本數量的範圍內,有效率的偵查出離群值(孤點、極端值、奇異點...)在突破型的交易策略中,扮演極重要腳色,本文列舉敘述統計中的分位數概念,然後運用定義的方式來判定極端值 相關IQR概念,請參考下圖
Thumbnail
小樣本數量的範圍內,有效率的偵查出離群值(孤點、極端值、奇異點...)在突破型的交易策略中,扮演極重要腳色,本文列舉敘述統計中的分位數概念,然後運用定義的方式來判定極端值 相關IQR概念,請參考下圖
Thumbnail
檢查樣本數據是否符合常態分配,價格數據若是符合常態分配,則視為正常行情,反之則視為有突破訊號。常態分配檢定有數種方法,本文介紹的是w/s檢定,檢定統計量僅需計算樣本全距(w),還有標準差(s),然後求其比值,接者透過查表比較其上、下臨界值,查表值請參考下圖
Thumbnail
檢查樣本數據是否符合常態分配,價格數據若是符合常態分配,則視為正常行情,反之則視為有突破訊號。常態分配檢定有數種方法,本文介紹的是w/s檢定,檢定統計量僅需計算樣本全距(w),還有標準差(s),然後求其比值,接者透過查表比較其上、下臨界值,查表值請參考下圖
Thumbnail
承續前篇內容,另外使用第二種隨機性檢定方式,來判斷價格是否處於盤整盤,假若為盤整盤,價格應集中在均線位置附近或是前後相鄰的數值差異很小,數據計算方法如下
Thumbnail
承續前篇內容,另外使用第二種隨機性檢定方式,來判斷價格是否處於盤整盤,假若為盤整盤,價格應集中在均線位置附近或是前後相鄰的數值差異很小,數據計算方法如下
Thumbnail
承續前篇,透過觀察統計檢定量的公式,隨機性的檢定是透過前、後期的資料乘積與均數差異的平方,取其比值大小最為判斷,現在透過更為高階的動差概念,來討論價格資料是否屬於盤整型態,其中以動差的視角來看,均數屬於一階動差、變異數屬於二階動差、偏態屬於三階動差、峰態屬於四階動差,相關公式詳列如下
Thumbnail
承續前篇,透過觀察統計檢定量的公式,隨機性的檢定是透過前、後期的資料乘積與均數差異的平方,取其比值大小最為判斷,現在透過更為高階的動差概念,來討論價格資料是否屬於盤整型態,其中以動差的視角來看,均數屬於一階動差、變異數屬於二階動差、偏態屬於三階動差、峰態屬於四階動差,相關公式詳列如下
Thumbnail
價格數據可透過隨機性檢定方式,以判斷行情是否在盤整盤狀態。假若行情為盤整盤,前後價格應該偏向漲跌互見的形式;反之若為趨勢盤,則前後價格應該偏向漲、漲、漲與跌、跌、跌的連續形式。 統計方法如下 : 假設有一系列的觀察值X(1)、X(2)、...、X(n),系列相關係數與統計檢定量定義如下
Thumbnail
價格數據可透過隨機性檢定方式,以判斷行情是否在盤整盤狀態。假若行情為盤整盤,前後價格應該偏向漲跌互見的形式;反之若為趨勢盤,則前後價格應該偏向漲、漲、漲與跌、跌、跌的連續形式。 統計方法如下 : 假設有一系列的觀察值X(1)、X(2)、...、X(n),系列相關係數與統計檢定量定義如下
Thumbnail
在ADX、DMI,這指標同時處理波動度與方向力道大小程度,不愧是指標中的第一名首選濾網 ! 以下先介紹計算流程與公式
Thumbnail
在ADX、DMI,這指標同時處理波動度與方向力道大小程度,不愧是指標中的第一名首選濾網 ! 以下先介紹計算流程與公式
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News