凱利公式(凱利公式什么意思)
量化策略開發,高質量社群,交易思路分享等相關內容
大家好,今天我們來聊一聊松鼠2期V2版本的階段內容——凱利公式在RFI擇時框架上的運用。
松鼠品種小組2期第1版策略、講解視頻已完結,該期小組我們分享了全新“普適性、自適應”擇時框架,該框架區別于超級趨勢線,超級趨勢線主要著力點在于管道變為支撐壓力線。而RFI框架著力點在于RSI數值對于超買超賣規定閾值的占比變化。
今天我們撇開策略本身,我們專注來談一談凱利公式到底是如何復現代碼,以及如何運用在策略當中。
凱利公式復現
在《資金管理方法》一書中我們可以看到該算法的構成:
Kally = 勝率 – (1-勝率) / 賠率
其中勝率就是回測績效中的勝率,勝率 = 盈利交易次數 / 總交易次數。
賠率實際上就是平均盈虧比,或者盈虧比。賠率 = 總利潤 / 總虧損(平均利潤 / 平均虧損)
翻譯完公式,下面我們就一步一步的寫公式然后計算就可以了,屆時就可以計算出Kally數值,然后根據Kally就可以實現書本上最優秀的資金管理模式了。
第一步:計算勝率
在TBQ中自帶了相關的內置函數,我們直接調用即可。當然在這里有一個潛在的坑,那就是這里的次數函數計算,是包括了手數倍數的,雖然與實際的次數相比有一定誤差,但是最后計算的勝率與實際按照次數計算的勝率相差很小,所以在這里我并沒有深究。(總交易次數同理)。
第二步:計算賠率
在這里我采用了平均盈虧比用來表示賠率,當然總盈虧比也可以,相差也不是很大。同樣在TBQ中有對應的函數調用。如果使用python那么其實也不難,只需將每一次的開平倉買賣價差(±)*手數再累加,即可求得總利潤(虧損),同理交易次數也是累加即可。這里不再贅述。
因為平均虧損是個負數,所以在計算賠率的前面我加入了負號“-”。
第三步:計算Kally
最后一步我們只需要發揮小學數學技能——套公式,這里不再贅述。
到這里,我們就已經完全計算出Kally公式數值了。那么我們具體如何去用呢?
在該書案例中,的確可以找到一個風險比例與最大收益率邊際效用最大的一個值,但實際情況并不如此。
凱利公式這個代碼計算邏輯看似很科學合理,但是有不少問題,問題如下:
1、凱利公式是根據勝率和賠率(平均盈虧比)計算而來,當勝率或賠率過小的時候,會出現凱利公式為負數的情況,此時就無法使用該資金管理模式。
2、在初始階段,需要開平倉交易數據計算勝率和賠率(平均盈虧比),所以在開始交易的時候,凱利公式無法使用。
最后,需要注意的是,雖然凱利公式在理論上是最優的投資策略,但在實際應用中,它可能會導致投資比例過大,風險過高。
因此,很多投資者會選擇使用凱利公式的一部分,比如凱利公式的50%或25%,以減少風險。此外,凱利公式假設你的賠率和勝率是固定的,但在實際情況中,這兩個參數往往會變化,這也是使用凱利公式需要注意的地方。
那么針對上述問題,我們將在品種小組2期直播中繼續帶大家落地解決這些問題,并為大家直面剖析Kally是否真的像大家想像的那樣“完美”。