全距統計量 - 模擬與交易.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
21會員
112內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Piemann的沙龍 的其他內容
迅速地在小樣本中判斷是否有異常值發生,然後讓下列的Multicharts程式碼發出訊號,一值是開發者重點 If Condition1 then Buy next bar at Highest(High,8) stop;
本文摘自Perry J. Kaufman的著作,先說結論,模組若有分批進場的加碼機制,則需要搭配分批出場的減碼機制,如此才有機會提高風險報酬比例。
小樣本數量的範圍內,有效率的偵查出離群值(孤點、極端值、奇異點...)在突破型的交易策略中,扮演極重要腳色,本文列舉敘述統計中的分位數概念,然後運用定義的方式來判定極端值 相關IQR概念,請參考下圖
計算 1+2+3+... ,當加到多少時,剛好大於 1000 計算 N+(N-1)+(N-2)+... ,當加到多少時,剛好大於 1000
計算 1+2+3+...+100 之值,請分別用 For,While、Until,Do Loop方式為之 (Excel VBA參考程式碼如下)
今有一個四位數的整數,請問四個數字和為9的個數共有幾個 ? 程式碼參考如下(Excel VBA)
迅速地在小樣本中判斷是否有異常值發生,然後讓下列的Multicharts程式碼發出訊號,一值是開發者重點 If Condition1 then Buy next bar at Highest(High,8) stop;
本文摘自Perry J. Kaufman的著作,先說結論,模組若有分批進場的加碼機制,則需要搭配分批出場的減碼機制,如此才有機會提高風險報酬比例。
小樣本數量的範圍內,有效率的偵查出離群值(孤點、極端值、奇異點...)在突破型的交易策略中,扮演極重要腳色,本文列舉敘述統計中的分位數概念,然後運用定義的方式來判定極端值 相關IQR概念,請參考下圖
計算 1+2+3+... ,當加到多少時,剛好大於 1000 計算 N+(N-1)+(N-2)+... ,當加到多少時,剛好大於 1000
計算 1+2+3+...+100 之值,請分別用 For,While、Until,Do Loop方式為之 (Excel VBA參考程式碼如下)
今有一個四位數的整數,請問四個數字和為9的個數共有幾個 ? 程式碼參考如下(Excel VBA)
你可能也想看
Google News 追蹤
Thumbnail
本策略採用台指期五分K的成交量進行判斷是否當日為弱勢盤,當成交量能達到當日一定的量能時,當日順勢向下的盤面機率就會增加,適合空方的順勢盤面。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作,即使沒看盤也能自動化的完成交易。
Thumbnail
周一崩盤絕對精彩,只要方向錯誤、沒設停損甚至凹單,通常直接被畢業。雖然策略有開發波段單,但很容易出現夜盤崩盤,若沒有出場就會造成隔天重大損傷,所以波段單一定要把夜盤也納入設計,不然畢業就不用玩了。
Thumbnail
本策略採用5、30分K的支撐與壓力進行突破買進與跌破賣出策略,透過盤中的量能變化進行買賣操作策略,該指標能夠真實地反映出價格的波動情況,並且可以靈活地調整參數進行進出場操作。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作
Thumbnail
本策略採用台指期五分K的成交量進行判斷是否當日為攻擊盤,當成交量能達到當日一定的量能時,當日順勢向上的盤面機率就會增加,適合多方的順勢盤面。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作,即使沒看盤也能自動化的完成交易。
Thumbnail
昨天說這次突破後會迎來一波波段,但由于一天就乖離五日均線 今天如果開高拉出到 700~800以上,勢必會有拉回 目前觀察,台指與五日均線乖離350~400點時候,最容易開高走低 所以五日線21409我們就以 大概21750~800做極限測試 這裡也說明「短空」還並非長空,我認為還要持續盤整到
Thumbnail
Dealing range 可以輔助找到你的交易區間。找到兩個高低點各自都有Liquidity grab,那麼這高低點之間就是所謂的Dealing Range。交易區間的用意在於可以知道Premium and Discount 的概念,以及找正確的高低點。
Thumbnail
MT5平臺提供了六種不同的掛單類型,每種掛單類型都有其特定的用途和策略。本文將詳細介紹Buy Limit、Sell Limit、Buy Stop、Sell Stop、Buy Stop Limit和Sell Stop Limit這六種掛單類型的功能和使用方法。
Thumbnail
大家好,我是小畢,在投資的路上,投資人都希望在股價低時買進,在股價高時賣出獲得報酬,正因為如此,就必須準確地預測何時是低點,以及何時是高點。 有些投資人會採用技術分析,利用各種技術指標來判斷低點和高點,例如移動平均線指標,當股價高於移動平均線時買進,股價低於移動平均線時賣出,而有的投資人則是採
前情提要: 最最最基本的,每次盤後的散戶指標是 反指標!長期的。 他一週頂多贏一天, 例如昨天飆到20458、那散戶做多當然贏 只是隨著倒貨他們又捨不得出,搞到殺400點 就變成套牢腳麻繼續放。 主力就是趁這個機會 去尬空。 反之做空也是。 1⃣️基本上看到「急拉、急殺」才能做進
Thumbnail
一、8.D5LMS_尾盤區間突破_空方 本策略採用5分K的利用10點到12點,在一定的區間內,當盤中跌破此區間時,代表有午盤轉往向下的機率,來執行空單策略,利用尾盤主力沒有推升力道時,只要有些順勢賣單出發到其他程式單而進行的順勢空方操作策略。
Thumbnail
本策略採用台指期五分K的成交量進行判斷是否當日為弱勢盤,當成交量能達到當日一定的量能時,當日順勢向下的盤面機率就會增加,適合空方的順勢盤面。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作,即使沒看盤也能自動化的完成交易。
Thumbnail
周一崩盤絕對精彩,只要方向錯誤、沒設停損甚至凹單,通常直接被畢業。雖然策略有開發波段單,但很容易出現夜盤崩盤,若沒有出場就會造成隔天重大損傷,所以波段單一定要把夜盤也納入設計,不然畢業就不用玩了。
Thumbnail
本策略採用5、30分K的支撐與壓力進行突破買進與跌破賣出策略,透過盤中的量能變化進行買賣操作策略,該指標能夠真實地反映出價格的波動情況,並且可以靈活地調整參數進行進出場操作。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作
Thumbnail
本策略採用台指期五分K的成交量進行判斷是否當日為攻擊盤,當成交量能達到當日一定的量能時,當日順勢向上的盤面機率就會增加,適合多方的順勢盤面。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作,即使沒看盤也能自動化的完成交易。
Thumbnail
昨天說這次突破後會迎來一波波段,但由于一天就乖離五日均線 今天如果開高拉出到 700~800以上,勢必會有拉回 目前觀察,台指與五日均線乖離350~400點時候,最容易開高走低 所以五日線21409我們就以 大概21750~800做極限測試 這裡也說明「短空」還並非長空,我認為還要持續盤整到
Thumbnail
Dealing range 可以輔助找到你的交易區間。找到兩個高低點各自都有Liquidity grab,那麼這高低點之間就是所謂的Dealing Range。交易區間的用意在於可以知道Premium and Discount 的概念,以及找正確的高低點。
Thumbnail
MT5平臺提供了六種不同的掛單類型,每種掛單類型都有其特定的用途和策略。本文將詳細介紹Buy Limit、Sell Limit、Buy Stop、Sell Stop、Buy Stop Limit和Sell Stop Limit這六種掛單類型的功能和使用方法。
Thumbnail
大家好,我是小畢,在投資的路上,投資人都希望在股價低時買進,在股價高時賣出獲得報酬,正因為如此,就必須準確地預測何時是低點,以及何時是高點。 有些投資人會採用技術分析,利用各種技術指標來判斷低點和高點,例如移動平均線指標,當股價高於移動平均線時買進,股價低於移動平均線時賣出,而有的投資人則是採
前情提要: 最最最基本的,每次盤後的散戶指標是 反指標!長期的。 他一週頂多贏一天, 例如昨天飆到20458、那散戶做多當然贏 只是隨著倒貨他們又捨不得出,搞到殺400點 就變成套牢腳麻繼續放。 主力就是趁這個機會 去尬空。 反之做空也是。 1⃣️基本上看到「急拉、急殺」才能做進
Thumbnail
一、8.D5LMS_尾盤區間突破_空方 本策略採用5分K的利用10點到12點,在一定的區間內,當盤中跌破此區間時,代表有午盤轉往向下的機率,來執行空單策略,利用尾盤主力沒有推升力道時,只要有些順勢賣單出發到其他程式單而進行的順勢空方操作策略。