More Related Content Similar to 動態評價函數與機器學習分享會簡報 (20) 動態評價函數與機器學習分享會簡報24. Fixed Fractional Model
固定風險百分比模型(固定分數法)
交易策略評估涵數: Fixed Fractional Model
它的基本邏輯是我們限制住每一筆交易所冒的風險佔我們整體資
金的比例(f)。
評估涵數之運作: Equity(帳面餘額) 在每個交易期間,根據交易策
略的表現(獲利或虧損)而會有增減。再根據這個固定風險百分比,
以及交易策略的過去一段交易期間的最大單筆損失金額(Max Loss,
或MDD),決定了下一次交易的數量。
舉例來說,如果有$10萬的資金, 而設定每次交易的損失
不要超過手上資金的2%,也就是10萬 * 2% = $2,000,那
麼這個2%就是我們的Fixed Risk比例(f)。
當開一個新倉位的時候,知道在何時停損退出以保存手中
資金是基本的要求,這就是“風險”。這是除了滑價和跳空
以外最壞情況下所承受的損失。
輔仁大學、林文修 24
25. 計算可交易合約口數公式
假設我們有預設的保護性停損金額( Stop Amount) $500,
計算可交易合約口數公式如下:
可交易合約口數 = (整體資金 * Risk%) / Stop Amount
Position Size = ($100,000 * 2%) / $5000 =4 口
另外也可以使用歷史回測所測出來的最大單筆損失金額
(使用largestlostrade保留字,傳回0或負值(虧損),
absvalue(largestlostrade) )來當作停損金額。這個方法也是
Ralph Vince在1990年寫的"Portfolio Management Formulas"
書中所用的方法。
保護性停損金額,也可使用某段歷史資料回測的MDD
Risk%應該是多少?
輔仁大學、林文修 25
Optimal f
26. 固定分數模型Fixed Fractional
1. Inputs: IniCapital(1000000),PercentPerTrade(0.02),RiskPertrade(50000);
Inputs: InitialOpenEvaluate(false),MaxSize(10), ProfitRiskRatio(0);
Var: ContractAmt(0),ExitAmount(0),Equity(0);
Var:Dstart(0), Dend(0);
2. Dstart=1050101 //例如2005年1月1日
3. Dend=1111231 //例如2017年12月31日
4. // 取得第一階段評估交易策略品質的”足夠樣本”,資金管理需要的
績效指標數值,如netprofit, MDD
5. If date >=Dstart and date <=Dend then begin
6. 多單進場邏輯
7. 空單進場邏輯
8. end;
9. InitialOpenEvaluate=true
輔仁大學、林文修 26
固定風險百分比
取
得
相
關
系
統
品
質
評
估
數
據
亦可不使用限定交易日
期,而使用目前交易總
次數函數 totaltrades判定
是否樣本數足夠(統計學
n>+30稱為大樣本),
例如:
if totaltrades >=30 then
InitialOpenEvaluate=true
27. {由於帳戶權益金額是決定部位規模變化的基礎,所以加上了
Equity 的計算}
if InitialOpenEvaluate then Equity = Round((IniCapital + NetProfit ),0)
else Equity = Round((InitialCapital + NetProfit),0);
//Position Sizing - Fixed fractional
if RiskPertrade <> 0 then ContractAmt = Round((PercentPerTrade
* Equity) / RiskPertrade,0);
if ContractAmt < 1 then ContractAmt = 1 ; //維持最小口數
if ContractAmt > MaxSize then ContractAmt = MaxSize ;
//最大口數限制
輔仁大學資訊管理系、林文修 27
28. 價格突破+固定分數模型
Fixed Fractional
If If date >=Dstart and date <=Dend and Marketposition = 0
then begin
做多策略;
ExitAmount = ContractAmt;
做空策略;
ExitAmount = ContractAmt;
end;
出場策略或停損停利方法
策略名稱/商品:台指期TXF1 30分K
交易週期 2005/1/1~ 2017/4/
交易成本 每口500
最大持倉口數:10 口
起始成本設定:1,000,000 { Stop Amount = 50000 }
輔仁大學、林文修 28
• 例如: 進出場原則與加
碼機制+固定分數模型
• 當突破過去N根K棒
的高點,做多。
• 當跌破過去N根K棒
的低點,做空。
30. 引進動態評價函數的資金管理
Inputs: IniCapital(1000000),PercentPerTrade(0),RiskPertrade(50000);
Inputs: InitialOpenEvaluate(false),MaxSize(10), ProfitRiskRatio(0);
Var: ContractAmt(0),ExitAmount(0),Equity(0);
Var:Dstart(0), Dend(0);
{其他程式碼從略}
//計算獲利風險比評價函數
if InitialOpenEvaluate then ProfitRiskRatio= (netprofit/maxiddrawdown);
{呼叫”標準化化函數”,把獲利風險比(總淨利/MDD,該MDD 會每筆Tick 時都重
新評估計算)透 過標準化函數將值落在0~1之間且原值小於0者視為0}
if ProfitRiskRatio < 0.4 then begin
PercentPerTrade = 0.1; //可視個人主觀承受風險以再微調
end else if (ProfitRiskRatio >= 0.4 and ProfitRiskRatio < 0.8) then begin
PercentPerTrade = 0.2; //可視個人主觀承受風險以再微調
end else if (ProfitRiskRatio >= 0.8 and ProfitRiskRatio < =1) then begin
PercentPerTrade = 0.3; //可視個人主觀承受風險以再微調
End;
輔仁大學資訊管理系、林文修 30
依照評價函數強度決
定投入的風險百分比
31. 引進動態評價函數的資金管理
if InitialOpenEvaluate then Equity = Round((IniCapital +
NetProfit ),0)
else Equity = Round((InitialCapital + NetProfit),0);
//Position Sizing - Fixed fractional
if RiskPertrade <> 0 then ContractAmt =
Round((PercentPerTrade * Equity) / RiskPertrade,0);
if ContractAmt < 1 then ContractAmt = 1 ; //維持最小口數
if ContractAmt > MaxSize then ContractAmt = MaxSize ;
//最大口數限制
{其他程式碼從略}
輔仁大學資訊管理系、林文修 31
根據獲利風險比(ProfitRiskRatio) 策略品質評價函數的強度,
動態決定風險資金比率,已經不是固定風險百分比模型
33. C# 建立評價函數與資金管理函數
變形固定分數法(Fixed Fractional)
1. /// 固定分數(Fixed Fractional)
2. /// <summary>
3. public virtual double FixF(TradeAccount account)
4. {
5. double result;
6. double OW, OMDD = 0;
7. //獲利風險比
8. OMDD = account.Report.ProfitRiskRatio;
9. //資金風險比例,目前僅分三級
10. //TODO 未來應可全面動態決定或有投資者指定級距
11. if (OMDD < 0.4)
12. {
13. OW = 0.1;
14. }
15. else if (OMDD >= 0.4 && OMDD < 0.8)
16. {
17. OW = 0.2;
18. }
輔仁大學資訊管理系、林文修 33
account.Report.ProfitRiskRatio 值
為轉換過後的獲利風險比(總淨
利/MDD,該MDD 會每筆Tick 時
都重新評估計算)透過標準化將
值落在0~1之間且原值小於0者視
為0
交易策略評估: 獲利風險比(P/MDD)
當作評價函數。意義: 承受每單位
的回檔(DrawDown)可有多少的預
期報酬,強度較大表示交易策略優
良,據此決定每一次投入多少比率
的風險資金(OW)。
34. C# 建立評價函數與資金管理函數
19. else
20. {
21. OW = 0.3;
22. }
23. if (account.Report.PrevStatus == PrevTradeStatus.FirstOne || account.Report.MDD < 1)
24. {
25. result = Math.Ceiling(OW * account.CurrCapital / (TradeInfo.DEF_MARGIN +
TradeInfo.DEF_COSTPAID));
19. }
20. else
21. {
22. //目前當MDD > 0 時採用
23. OW = OW / (account.Report.MDD);
24. result = Math.Ceiling(OW * account.CurrCapital);
25. }
26. return result;
27. }
輔仁大學資訊管理系、林文修 34
根據(P/MDD)評估函數的強度,進
行風險資金分數(比率)的配置(OW),
據此計算每一次應投入的口數(result)
36. 最佳化F值法(Optimal f)
Ralph Vince在1992年《The Mathematics of Money
Management: Risk Analysis Techniques for Traders》一
書中認為凱利公式只適用於理論上贏輸機率各半的傳
統賭局中,不適合變化多端的實際賭局。
Vince (2009, 2011)提出的最佳化F值法(Optimal
f),巧妙的運用Kelly的概念,但是由於實際賭局中
輸贏機率為動態的,故透過下注後去計算每次的持有
收益率,進而避開傳統賭局的固定機率與賠率的限制,
期望在資金配置的同時可以在投資與損失之中達到平
衡。
輔仁大學、林文修 36
37. 最佳化F值法(Optimal f)
最佳化F值法(Optimal f)(Vince)
Vince巧妙運用Kelly的方法,避開固定機率與賠率的限制。
特色:運用凱利公式的概念,透過動態計算每局的損益率,在投資與損失
中達到平衡。
37
𝑷 =獲利率
𝑹 =賠率(平均賺/平均賠)
𝑲% =
( 𝑹 + 𝟏 ∗ 𝑷 − 𝟏)
𝑹
𝑷 𝒏:第N次交易所得的利潤
𝑯𝑷𝑹 𝒏:第N次交易資本的收益增值率
WCS:最大虧損額
TWR:所有交易之後的最終資本與初始資本相比的
增值收益率
f:每次交易的風險比例
𝑯𝑷𝑹 𝒏 = 𝟏 − 𝒇 ∗ (
𝑷 𝒏
𝑾𝑪𝑺
)
𝑻𝑾𝑹 = 𝑯𝑷𝑹𝟏 ∗ 𝑯𝑷𝑹𝟐 ∗ 𝑯𝑷𝑹𝟑 ∗ ⋯ 𝑯𝑷𝑹 𝒏
• 計算TWR的幾何平均數,取多大的F可以讓幾何平均
數最大? 使用暴力法,或機器學習演算法。
39. C# 建立評價函數與資金管理函數
1. /// <summary>
2. /// 最佳化F值
3. /// </summary>
4. public virtual double BestF(TradeAccount account)
5. {
6. double result;
7. if(account.Report.TotalFrequency == 0)
8. {
9. result = Math.Ceiling(0.2 * account.CurrCapital / (TradeInfo.DEF_MARGIN +
10. TradeInfo.DEF_COSTPAID));
11. }
12. else
13. {
14.
15. //總淨利
16. double P = account.Report.TotalNetProfit;
17. //最大損失
18. double WCS = account.Report.MaxLoss;
19. //盈虧比
20. double HPR = account.Report.ProfitLossRatio;
輔仁大學資訊管理系、林文修 39
40. C# 建立評價函數與資金管理函數
21. P = (P == 0) ? 1 : P;
22. double F = ((1 - HPR) * (-WCS)) / P;
23. double OF = 0;
24. if (F == 0)
25. {
26. OF = 0.1;
27. }
28. else if (F > 0 && F < 0.8)
29. {
30. OF = 0.2;
31. }
32. else if ( F >= 0.8 && F <= 1)
33. {
34. OF = 0.3;
35. }
36. result = Math.Ceiling(OF * account.CurrCapital / (TradeInfo.DEF_MARGIN +
37. TradeInfo.DEF_COSTPAID));
38. }
39. return result;
40. }
輔仁大學資訊管理系、林文修 40
46. Machine Intelligence
機器智慧
Data Driven System
資料驅動系統
類神經網路系統
基因演繹程式
*Genetic Algorithms
*Neural Network Systems
Hybrid
Systems
混合系統
*Neural Fuzzy
*Genetic Neural
*Fuzzy Genetic Systems
Rule Based
Systems
規則設定系統
*Expert Systems
專家系統*
*Knowledge Engineering
*知識工程
*
*
類神經模糊
基因類神經
*模糊基因系統
Fuzzy Expert Systems
模糊專家系統
Fuzzy Logic and Set Theory
模糊邏輯與集合理論
*Nonlinear Dynamics 非線性動態
*Chaos Theory 渾沌理論
*Rescaled Range Analysis 重刻度級距分析
*Fractal Analysis
48. 48/ 57
AI & Close Fields
Soft Computing
Neurocomputing / Artificial Neural Networks
Fuzzy Sets / Fuzzy Computing
Evolutionary Computing
Swarm Intelligence
Natural Computing
Computational Biology
Bioinformatics
仿生物智慧:演化式計算EC、類神經網路ANN、人工免
疫系統(Artificial Immune Systems, AIS)、螞蟻族群演算
法(Ant Colony System, ACS)、人工蜂群演算法
(Artificial Bee Colony, ABC)等等。
56. GEP 的編碼形式
GEP 採用了遺傳編碼和個體表現型不同的思考,遺
傳編碼是等長線性符號串, 個體表現型是表示樹
(expression tree, ET)。
GEP 的遺傳算子除了遺傳演算法中常用的選擇運
算元(selection)、交配(crossover, 重組
Recombination)和突變(mutation)運算元, 還增加
了反轉(Inversion)、轉換和插入運算元
(Transposition and Insertion Sequence Elements)。
GEP 的遺傳編碼是等長的線性符號串, 稱為GEP
染色體。一個染色體可以由多個基因組成。
67. 資金管理策略設計
凱利公式 :
模型訓練期最佳染色體之勝率、賠率
固定分數法 :
第一次交易,模型訓練期最佳染色體之最大策略交易
回落,後期交易動態調整
固定比例法 :
第一次交易,模型訓練期最佳染色體之最大策略交易
回落的一半,後期交易動態調整
最佳化F值 :
第一次交易,模型訓練期最佳染色體之最大策略交易
回落,後期交易動態調整
20
69. 節點名稱 表示符號 值域
屬性節點
K隨機指標 k 低、中、高
D隨機指標 d 低、中、高
RSI 相對強弱指標 rsi 低、中、高
W%R 威廉指標 w%r 低、中、高
MA 移動平均線 ma 低、中、高
終端節點 交易訊號 b、n、s
買進、不動作、
賣出
22
基因一
交易訊號與數量
基因二
資金加減碼與數量
基因三
停損停利控管
動態天期(作用在屬性節點)
交易數量(作用在終端節點)
83. 獲利能力分析 - 淨利
33
評估指標 資金管理方式 獲勝期數 獲勝率
淨利
A 凱利公式 10 31.2%
B 固定分數法 6 18.7%
C 固定比例法 3 9%
D 最佳化F值 7 21.8%
E GEP資金管理 6 18.7%
84. 34
評估指標 資金管理方式 獲勝期數 獲勝率
獲利因子>1.5
A 凱利公式 8 14.5%
B 固定分數法 7 12.7%
C 固定比例法 13 23.6%
D 最佳化F值 9 16.3%
E GEP資金管理 18 32.7%
獲利能力分析 – 獲利因子
85. 評估指標 資金管理方式 最低回落獲勝期數 獲勝率
最大策略
績效回落
A 凱利公式 1 3%
B 固定分數法 2 6%
C 固定比例法 11 33.3%
D 最佳化F值 1 3%
E GEP資金管理 18 54.5%
35
風險分析 – 最大策略績效回落
86. 36
評估指標 資金管理方式 獲勝期數 獲勝率
獲利風險比
A 凱利公式 1 3.0%
B 固定分數法 2 6.2%
C 固定比例法 2 6.2%
D 最佳化F值 3 9.3%
E GEP資金管理 24 75.0%
風險分析 – 獲利風險比
87. 37
評估指標 資金管理方式 獲勝期數 獲勝率
投資報酬率
A 凱利公式 11 34.3%
B 固定分數法 6 18.7%
C 固定比例法 3 9.3%
D 最佳化F值 6 18.7%
E GEP資金管理 6 18.7%
交易分析 – 投資報酬率
88. 38
評估指標 資金管理方式 獲勝期數 獲勝率
勝率
A 凱利公式 2 6%
B 固定分數法 3 9%
C 固定比例法 4 12.1%
D 最佳化F值 5 15.6%
E GEP資金管理 19 57.6%
評估指標 資金管理方式 獲勝期數 獲勝率
盈虧比
A 凱利公式 4 12.5%
B 固定分數法 3 9.4%
C 固定比例法 12 37.5%
D 最佳化F值 5 15.6%
E GEP資金管理 8 25.0%
交易分析 – 勝率、盈虧比
89. 39
評估指標 資金管理方式 獲勝期數 獲勝率
Kelly值
A 凱利公式 2 6.3%
B 固定分數法 2 6.3%
C 固定比例法 7 21.9%
D 最佳化F值 3 9.4%
E GEP資金管理 18 56.3%
交易分析 – Kelly值
90. 40
投資人風險屬性 資金管理建議
風險趨利者 凱利公式、最佳化F值
風險中庸者 GEP資金管理
風險趨避者 固定比例法
實驗項目
獲利能力分析 風險分析
總淨利
平均每期
淨利
總獲利
因子
32期之
最大策略
績效回落
總獲利
風險比
A 凱利公式 63725400 1991419 1.13 10642200 5.99
B 固定分數法 43135600 1347988 1.15 10510200 4.10
C 固定比例法 26025600 813300 1.51 5045200 5.15
D 最佳化F值 56254400 1757950 1.33 6509200 8.64
E GEP資金管理 55485000 1733906 1.50 5584400 9.94
實驗項目
交易分析
總投資
報酬率
每期平均
投資
報酬率
總勝率 總盈虧比 總Kelly值
A 凱利公式 637.3% 19.9% 50.4% 1.09 0.06
B 固定分數法 431.4% 13.5% 53.0% 1.06 0.07
C 固定比例法 260.3% 8.1% 53.5% 1.29 0.18
D 最佳化F值 562.5% 17.6% 54.5% 1.09 0.14
E GEP資金管理 554.9% 17.3% 57.1% 1.05 0.18
91. 41
投資人風險屬性 資金管理建議
風險趨利者 凱利公式、最佳化F值
風險中庸者 GEP資金管理
風險趨避者 固定比例法
實驗項目
獲利能力分析 風險分析
總淨利
平均每期
淨利
總獲利
因子
32期之
最大策略
績效回落
總獲利
風險比
A 凱利公式 63725400 1991419 1.13 10642200 5.99
B 固定分數法 43135600 1347988 1.15 10510200 4.10
C 固定比例法 26025600 813300 1.51 5045200 5.15
D 最佳化F值 56254400 1757950 1.33 6509200 8.64
E GEP資金管理 55485000 1733906 1.50 5584400 9.94
實驗項目
交易分析
總投資
報酬率
每期平均
投資
報酬率
總勝率 總盈虧比 總Kelly值
A 凱利公式 637.3% 19.9% 50.4% 1.09 0.06
B 固定分數法 431.4% 13.5% 53.0% 1.06 0.07
C 固定比例法 260.3% 8.1% 53.5% 1.29 0.18
D 最佳化F值 562.5% 17.6% 54.5% 1.09 0.14
E GEP資金管理 554.9% 17.3% 57.1% 1.05 0.18
94. 相關研究
針對鞅策略與反鞅策略的資金配置方式,世界級程式交易大師Andrea
Ungery在2013年《Trattato di Money Management》書中做出評論,鞅
策略會使賭徒在輸時增加投注資金,贏時減少下注,該策略並沒有考
慮到初始資金與風險控管的部分,這會導致賭徒擁有的資金越少所承
擔的風險越大,賭徒擁有的資金越多承擔的風險越小的情況。
相反的,反鞅策略在每局正期望值(獲利,贏)的情況下再進行加碼,
負期望值時(虧損),減少下注的資金配比,可以有效降低投資風險,
以避免贏全拿輸全輸的極端狀況。
因此,Andrea Ungery認為在資本增加時才增加下注金額的反鞅策略
是較好的資金配置方式。Badcock, Jr.(1989)的研究也指出反鞅策
略的平均獲利相較鞅策略而言,平均獲利較低,但投資人所承受的風
險較小。
輔仁大學、林文修 94
95. 相關研究
對於傳統常用的固定分數法而言,Andrea Ungery(2013)認為與凱利
公式最大不同在於,考量了投資者心理與可承受損失金額。
Breiman(1961)研究點出運用凱利公式的資本增值有兩個特性,不
僅可以使用最適當的資金比例下注,資產成長較快,也可以減少達成
投資目標的時間。
MacLean et al.(1992)指出一位好的投資者應該運用凱利公式來做為
資產配置的依據,計算出資金獲利最大化的配比,並將資金虧損降至
最低。
但Ralph Vince (2009,2011)認為凱利公式只適用於理論上固定勝敗
率的賭局中,進而提出計算每局贏虧比的最佳化F值法(Optimal f)。
Vince對於資金配置策略的運用表示,假如投資人想長期投資的話,
就要考慮使用更加謹慎、風險更小的資金管理辦法;而如果投資人只
考慮賺大錢的話,使用凱利公式或是最佳化F值法是很好的選擇。
輔仁大學、林文修 95
101. 林文修教授指導之GEP碩士論文
論文作者 論文題目 畢業系所
蔡慧菊(2010) 基因表示規畫法於台股期貨價格發現知研究 輔仁大學資管所
黃怡婷(2011) 演化式計算於共同基金投資組合與交易策略推薦
模型建構之研究
輔仁大學資管所
賈偉廉(2011) 基因表示規畫法探勘股票交易規則之研究 輔仁大學資管所
陳帝豪(2012) 基因表達規畫法為機的集成則時交易策略之勘勘 輔仁大學資管所
黃柏鈞( 2012) 以Multi-GEP建構顧客流失預警模型 輔仁大學資管所
蘇渝翔(2012) 特徵再利用基因表達規畫法知設計-已時間序列
為例
輔仁大學資管所
邱曉琪(2012) 交談式基因表達規劃法於最適不動產物件蒐尋之
研究
輔仁大學資管所
蔡秦寧(2013) 基因表達規劃法於指數期貨交易策略發展之研究 輔仁大學資管所
輔大資管系 林文修
102. 林文修教授指導之GEP碩士論文
論文作者 論文題目 畢業系所
戴棨泯(2014) 模糊基因表示規畫法在台指期貨投資策略探勘之
研究
輔仁大學資管所
蔡秉洲(2014) 集成基因表示規畫法應用於動態股票交易策略探
勘之研究
輔仁大學資管所
莊涵宇(2014) 集成基因表示規畫法為基礎的選股策略之研究 輔仁大學資管所
柯麗美(2014) 股價指數當沖策略之研究 輔仁大學資管所
蘇敏龍( 2014) 基因表示規畫法於外匯保證金交易頭資策略之研
究 - 以歐元兌美元為例
輔仁大學資管所
蔣定安(2015) 基因表達規劃決策樹於企業財務危機預警模型之
設計
輔仁大學資管所
葉濟源(2015) 基因表達規劃法在台股指數期貨當沖交易策略發
展之研究
輔仁大學資管所
詹雅婷(2015) GEP-GA為基的智慧型投資組合系統之設計 輔仁大學資管所
輔大資管系 林文修
103. 林文修教授指導之GEP碩士論文
論文作者 論文題目 畢業系所
陳姿穎(2016) 模糊基因表達規劃法在台股指數期貨之資金管理
策略研究
輔仁大學資管所
蔡耀誼(2016) 應用基因表達規劃法與遺傳演算法調控箱型理論
於股票市場之研究
輔仁大學資管所
劉千華(2016) 基因表達規劃法決策樹於台股指數期貨商品價差
交易之研究
輔仁大學資管所
林大為(2016) 基因表規畫法決策樹在買賣日報表資料之設計 輔仁大學資管所
輔大資管系 林文修