五月天婷亚洲天久久综合网,婷婷丁香五月激情亚洲综合,久久男人精品女人,麻豆91在线播放

  • <center id="8gusu"></center><rt id="8gusu"></rt>
    <menu id="8gusu"><small id="8gusu"></small></menu>
  • <dd id="8gusu"><s id="8gusu"></s></dd>
    樓主: 邢不行
    65303 337

    [源碼分享] 【量化小講堂-Python、Pandas系列】諾獎(jiǎng)得主的倉位分配算法,有效嗎?   [推廣有獎(jiǎng)]

    院士

    8%

    還不是VIP/貴賓

    -

    威望
    1 級(jí)
    論壇幣
    26743 個(gè)
    通用積分
    152.2379
    學(xué)術(shù)水平
    485 點(diǎn)
    熱心指數(shù)
    505 點(diǎn)
    信用等級(jí)
    456 點(diǎn)
    經(jīng)驗(yàn)
    52955 點(diǎn)
    帖子
    574
    精華
    26
    在線時(shí)間
    1145 小時(shí)
    注冊(cè)時(shí)間
    2010-4-30
    最后登錄
    2024-12-25

    樓主
    邢不行 在職認(rèn)證  發(fā)表于 2016-4-11 15:54:48 |只看作者 |壇友微信交流群|倒序 |AI寫論文
    相似文件 換一批

    +2 論壇幣
    k人 參與回答

    經(jīng)管之家送您一份

    應(yīng)屆畢業(yè)生專屬福利!

    求職就業(yè)群
    趙安豆老師微信:zhaoandou666

    經(jīng)管之家聯(lián)合CDA

    送您一個(gè)全額獎(jiǎng)學(xué)金名額~ !

    感謝您參與論壇問題回答

    經(jīng)管之家送您兩個(gè)論壇幣!

    +2 論壇幣

    引言:

    本系列帖子“量化小講堂”,通過實(shí)際案例教初學(xué)者使用python、pandas進(jìn)行金融數(shù)據(jù)處理,希望能對(duì)大家有幫助。

    【必讀文章】:
    《10年400倍策略分享-附視頻逐行講解代碼》


    微信:xbx_laoshi,量化交流Q群(快滿):438143420,有問題歡迎交流。

    文中用到的A股數(shù)據(jù)可在www.yucezhe.com下載,這里可以下載到所有股票、從上市日起的交易數(shù)據(jù)、財(cái)務(wù)數(shù)據(jù)、分鐘數(shù)據(jù)、分筆數(shù)據(jù)、逐筆數(shù)據(jù)等。




    【量化小講堂-Python、Pandas系列】諾獎(jiǎng)得主的倉位分配算法,有效嗎?

    假設(shè)你有1千萬準(zhǔn)備投資股票,你從A股接近3000只股票當(dāng)中挑選出了50只,準(zhǔn)備把這50只股票作為一個(gè)投資組合打包購買。那么在這50只股票之間應(yīng)該如何分配倉位才是最好的呢?是平均每個(gè)股票各買20萬,還是有的股票多買點(diǎn)有的股票少買點(diǎn)?


    如何在這些股票之間分配倉位?這個(gè)問題就是諾貝爾獎(jiǎng)得主馬克維茨(Harry Markowitz)在1952年通過數(shù)學(xué)方法解決的問題。他也為此而拿到了諾貝爾獎(jiǎng)。


    馬克維茨提出的解決方案叫做資產(chǎn)組合理論。感興趣的可以看看附件中的論文原文,也可以看又一齋主的這篇文章《馬克維茨與投資組合理論》。


    本文的主要目是和大家分享如何使用Python在A股市場(chǎng)實(shí)證資產(chǎn)組合理論。所以在這里簡(jiǎn)單的講一下理論的具體原理。會(huì)盡量寫的淺顯,目標(biāo)是讓高中生也可以看懂。建議感興趣的同學(xué)可以先看本篇文章,大概了解后再去閱讀又一齋主的文章。


    ---資產(chǎn)組合理論---


    假設(shè)現(xiàn)在有3只股票A、B、C。股票A,在一年后有一半概率上漲20%,一半的概率上漲10%。它的期望收益是15%(計(jì)算方法:20% * 0.5 + 10% * 0.5);股票B在一年后有一半概率上漲60%,一半概率下跌20%,期望收益20%;股票C有一半概率上漲100%,一半概率下跌50%,期望收益25%。具體如下:


    QQ20160420-0.png


    在這三個(gè)股票中選擇一個(gè)股票進(jìn)行買賣,你會(huì)選擇哪個(gè)呢?我覺得選擇任何股票都是正常的。選擇股票A的人比較保守,雖然賺的少一點(diǎn),但是畢竟任何情況下都是穩(wěn)賺(風(fēng)險(xiǎn)。。選擇股票B的話,差的情況下也就虧20%,好得情況下可以賺60%,相當(dāng)高的收益了。選擇股票C的人其實(shí)也能理解,畢竟富貴險(xiǎn)中求(風(fēng)險(xiǎn)大),雖然可能虧一半,但是翻倍的誘惑還是巨大的。汝之蜜糖彼之砒霜,適合自己的才是最好的。


    在從這3個(gè)股票當(dāng)中進(jìn)行選擇的時(shí)候,你有沒有發(fā)現(xiàn)其實(shí)你是在權(quán)衡每個(gè)股票的收益和風(fēng)險(xiǎn)。我們往往希望收益越高越好,風(fēng)險(xiǎn)越低越好。然而金融領(lǐng)域自打有宇宙以來的第一定律就是高收益和低風(fēng)險(xiǎn)不可兼得。收益高,往往風(fēng)險(xiǎn)也高,風(fēng)險(xiǎn)低往往收益也就低了。人生又何嘗不是如此呢?所以我們只能根據(jù)自己的偏好在收益和風(fēng)險(xiǎn)之間進(jìn)行權(quán)衡。那用什么方式來定量化的刻畫股票的風(fēng)險(xiǎn)呢?——用方差。


    對(duì),就是初中課堂上學(xué)習(xí)過的方差。方差用來描述一組數(shù)據(jù)之間的離散程度,而收益的離散程度就是風(fēng)險(xiǎn)。比如對(duì)于股票A,它的方差就是[(0.2 - 0.15)^2 + (0.1 - 0.15)^2] / 2 = 0.0025。同理,股票B和股票C的方差分別是0.16和0.5625。股票的風(fēng)險(xiǎn)越大,它的方差也就越大,反之,方差大說明這個(gè)股票的風(fēng)險(xiǎn)也大。


    了解了方差之后,我們回到從3個(gè)股票當(dāng)中選擇一個(gè)進(jìn)行投資的話題上來。我估計(jì)大多數(shù)人會(huì)選擇B股票,冒著虧不多錢的風(fēng)險(xiǎn),賺取60%的收益。



    【python量化課程】想要快速、系統(tǒng)的學(xué)習(xí)量化知識(shí),可以參與我與論壇合作開設(shè)的課程:《python量化投資入門》,我會(huì)親自授課,隨問隨答。參與課程還可以免費(fèi)加入我的小密圈,我每天會(huì)在圈中分享量化的所見所思,圈子介紹點(diǎn)擊此處。)


    這時(shí)候有的聰明人就會(huì)說,我能不能這樣來投資:我將所有的錢平均分成兩份,一份全部買股票A,一份全部買C形成一個(gè)組合,這個(gè)組合里面有A、C兩只股票,那么這整個(gè)組合一年后的期望收益是20%,跟股票B是一樣的,而我一年后收益的可能性是:


    • 25%的概率上漲60%(A漲20%,C漲100%)
    • 25%的概率上漲55%(A漲10%,C漲100%)
    • 25%的概率下跌15%(A漲20%,C跌50%)
    • 25%的概率上漲20%(A漲10%,C跌50%)

    收益的方差是0.14125,比股票B的方差0.16小。也就是說我通過構(gòu)建了一個(gè)組合,得到了一個(gè)和B期望收益一樣,但是風(fēng)險(xiǎn)比B小的投資。相比于這個(gè)投資組合,全倉買股票B顯然就是一個(gè)很蠢的選擇。


    更聰明的人這個(gè)時(shí)候又要問了:剛剛是在A、C兩只股票里面平均分配50%的倉位購進(jìn)組合,那么是不是存在另外的一種分配方式,使得這個(gè)組合在20%的期望收益下,風(fēng)險(xiǎn)(方差)可以更小呢?或者說我想要的期望收益是25%,怎么在3只股票里面分配倉位,保證組合方差最小呢?或者說我想要0.1的方差,怎么在3只股票里面分配倉位,保證我組合的期望收益最大呢?(感興趣的話真的可以動(dòng)筆算算,很有意思。)


    其實(shí)以上這些就是馬克維茨想要解決的問題:怎么才能在一堆股票當(dāng)中通過分配倉位,來使整個(gè)組合的期望收益盡可能的高,風(fēng)險(xiǎn)(方差)盡可能的低;蛘哒f,在一定的期望收益下,風(fēng)險(xiǎn)盡可能的低;在一定的風(fēng)險(xiǎn)條件下,期望收益盡可能的高。


    這時(shí)候你可能會(huì)講:這看上去也沒什么難度嘛,就算是離諾獎(jiǎng)無窮遠(yuǎn)的我,即使多花點(diǎn)時(shí)間也能算出最優(yōu)的倉位呀。是的,以上的計(jì)算確實(shí)并不復(fù)雜。因?yàn)椋驗(yàn),因(yàn)椤?/font>


    因?yàn)槲?/font>們?cè)谟?jì)算當(dāng)中想當(dāng)然的多增加了一個(gè)條件:我們假設(shè)這些股票之間的收益是相互獨(dú)立的。也就是股票和股票之間的收益不會(huì)相互影響。


    然而現(xiàn)實(shí)中所有股票之間的收益都是相關(guān)的啊。!


    工商銀行上漲的時(shí)候,農(nóng)業(yè)銀行大概率也會(huì)上漲吧?京東股票漲得時(shí)候,阿里的股票有可能會(huì)跌吧?2015年7月份千股跌停、千股漲停等現(xiàn)象,這些都是在說明股票之間會(huì)有相關(guān)性。所以上面A、B、C三只股票的問題,可能會(huì)變成股票A上漲的時(shí)候,股票B也有80%的概率上漲;股票A上漲的時(shí)候,股票C卻有60%的概率下跌......這個(gè)時(shí)候想要算出個(gè)最優(yōu)倉位比例,就比較麻煩了吧?


    而人家馬克維茨牛逼就牛逼在,即使考慮到股票之間的相關(guān)性,他也找到了計(jì)算的方法。


    他使用相關(guān)系數(shù)來衡量股票之間的相關(guān)性。相關(guān)系數(shù)的取值范圍是-1到1,越接近1代表這兩個(gè)股票的收益越正相關(guān)(工行和農(nóng)行),越接近-1代表這兩個(gè)股票的收益越負(fù)相關(guān)(阿里和京東),接近0則代表不相關(guān)。他假設(shè)已知N個(gè)股票未來一段時(shí)間的期望收益、收益的方差,以及這些股票兩兩之間之間的相關(guān)系數(shù),僅僅知道這些,就可以計(jì)算出最優(yōu)的倉位比例,來保證我們的投資組合獲得盡可能高的收益以及相應(yīng)盡可能低的風(fēng)險(xiǎn)。


    人家具體怎么算的我就不細(xì)說了,是個(gè)純數(shù)學(xué)問題,歸根到底是一個(gè)標(biāo)準(zhǔn)的凸二次規(guī)劃問題。具體可以看論文原文或者又一齋主的文章。本文重點(diǎn)關(guān)注的是如何將馬克維茨的理論真正的投入到實(shí)戰(zhàn)中去。


    ---實(shí)戰(zhàn)---

    要把馬克維茨的方案運(yùn)用到投資實(shí)戰(zhàn)中,最大的難點(diǎn)就是要確定模型的輸入?yún)?shù)。必須得知道這些股票的期望收益、方差以及兩兩間的相關(guān)系數(shù)才能計(jì)算最終的倉位啊,可是到底怎么才能知道股票未來一年的期望收益、方差、以及相關(guān)系數(shù)呢?(這幾乎不可能嘛)


    實(shí)戰(zhàn)中一般的做法就是拿股票過去一段時(shí)間的收益來估計(jì)這些參數(shù)。落實(shí)到具體的策略,我們是采用如下方法來構(gòu)建的:在每月的最后一個(gè)交易日收盤后,根據(jù)過去6個(gè)月(這個(gè)數(shù)字可以自己設(shè)定)的歷史數(shù)據(jù)計(jì)算出每個(gè)備選股票的收益、方差、相關(guān)系數(shù),將這些數(shù)據(jù)作為參數(shù),套入到馬克維茨的方法中,計(jì)算出每個(gè)股票的最優(yōu)倉位。按計(jì)算出來的倉位買入這些股票并持有整個(gè)下個(gè)月,在下月末再按照該方法,根據(jù)最新的過去6個(gè)月的數(shù)據(jù)重新計(jì)算倉位,進(jìn)行調(diào)整,再持有一個(gè)月,如此往復(fù)。


    其中,在采用馬克維茨的方法計(jì)算最優(yōu)倉位的時(shí)候,我們的優(yōu)化目標(biāo)是最優(yōu)夏普比例,也就是最大化期望收益/方差。在程序中也可以調(diào)整為最優(yōu)收益或者最優(yōu)方差。

    為了方便起見,我們以滬深300指數(shù),中小板指數(shù),還有創(chuàng)業(yè)板指數(shù)為例,假設(shè)我們是要投資這3個(gè)指數(shù),并在這3個(gè)指數(shù)之間分配倉位。當(dāng)然在程序中你也可以自己通過修改代碼來嘗試在更多的股票、指數(shù)之間進(jìn)行分配倉位。

    ---程序---


    要用三大指數(shù)構(gòu)造投資組合,首先需要指數(shù)的原始數(shù)據(jù)。在yucezhe.com的歷史日線數(shù)據(jù)中,可以下載到所有指數(shù)歷史至今的數(shù)據(jù)。如下圖所示,每一行是每一天的數(shù)據(jù):

    2.png

    數(shù)據(jù)中有以下的字段:
    【index_code】指數(shù)的代碼
    【date】 交易日期
    【open】 開盤價(jià)
    【high】 最高價(jià)
    【low】 最低價(jià)
    【close】 收盤價(jià)
    【volume】 成交量
    【money】 成交額
    【change】 漲跌幅


    下面是代碼的截圖,代碼里面有詳細(xì)的注釋,有問題可以留言,附件中有程序的源碼,回復(fù)即可下載。

    1.1.PNG
    1.2.PNG
    p2.PNG
    p3.PNG
    p4.jpg

    把代碼和數(shù)據(jù)下載下來,運(yùn)行代碼,就可以看到輸出的結(jié)果了。

    re.PNG

    figure.PNG

    數(shù)據(jù)的回測(cè)是從2011年開始的(因?yàn)閯?chuàng)業(yè)板指數(shù)開始時(shí)間較晚)。從結(jié)果中可以看到,通過馬克維茨的方法構(gòu)建的投資組合的年化收益率是高于滬深300、中小板指數(shù),但低于創(chuàng)業(yè)板指數(shù)。在風(fēng)險(xiǎn)方面,由于是采用的最大化夏普比的方法,所以最大回撤還是略大于滬深300和中小板的。


    大家下載程序后,可以把3個(gè)指數(shù)改成其他的股票,嘗試著在不同的股票之間進(jìn)行倉位的配置,看看效果。

    此處也留一個(gè)思考題:是否能搞到余額寶的每日收益率,作為無風(fēng)險(xiǎn)利率,也作為組合中的一個(gè)備選資產(chǎn)。這樣就能算出投資股票和投資余額寶的倉位比例的,



    之后會(huì)講的內(nèi)容:

    • 以均線策略為基礎(chǔ),從頭到尾教大家如何使用Python編寫一個(gè)完整的策略
    • 基金定投是否真的賺錢?通過數(shù)據(jù)模擬給你看。
    • 關(guān)于《量化小講堂》之后想看的內(nèi)容,或者相關(guān)問題,可以加我微信xbx_laoshi、Q群(快滿):438143420溝通。


    附件中是馬科維茨當(dāng)年的論文和Python程序文件,免費(fèi),回復(fù)可見。覺得文章內(nèi)容有幫助的話,頂貼是最好的鼓勵(lì)!


    本帖隱藏的內(nèi)容

    馬科維茨資產(chǎn)組合最新.zip (172.93 KB)

    二維碼

    掃碼加我 拉你入群

    請(qǐng)注明:姓名-公司-職位

    以便審核進(jìn)群資格,未注明則拒絕

    關(guān)鍵詞:python pandas 量化小講堂 panda 諾獎(jiǎng)得主 投資組合 諾貝爾 經(jīng)濟(jì)學(xué) 發(fā)明人 學(xué)習(xí)者

    IMG_2556.JPG (48.15 KB)

    IMG_2556.JPG

    馬科維茨資產(chǎn)組合.rar

    1.12 MB

    本附件包括:

    • 馬科維茨投資組合論文.pdf

    已有 7 人評(píng)分經(jīng)驗(yàn) 論壇幣 學(xué)術(shù)水平 熱心指數(shù) 信用等級(jí) 收起 理由
    魁拔 + 1 + 1 + 1 精彩帖子
    accumulation + 100 + 5 + 5 + 5 精彩帖子
    fantuanxiaot + 88 + 88 精彩帖子
    aclyang + 20 精彩帖子
    三世相思2013 + 100 精彩帖子
    客初 + 3 + 4 + 3 精彩原創(chuàng),已小額打賞:-D
    離歌レ笑 + 100 + 5 + 5 + 5 精彩帖子

    總評(píng)分: 經(jīng)驗(yàn) + 388  論壇幣 + 108  學(xué)術(shù)水平 + 14  熱心指數(shù) + 15  信用等級(jí) + 14   查看全部評(píng)分

    本帖被以下文庫推薦

    不管去哪里 只要在路上
    沙發(fā)
    邢不行 在職認(rèn)證  發(fā)表于 2016-4-20 15:28:47 |只看作者 |壇友微信交流群
    沙發(fā)~~~
    已有 1 人評(píng)分經(jīng)驗(yàn) 論壇幣 收起 理由
    fantuanxiaot + 66 + 66 精彩帖子

    總評(píng)分: 經(jīng)驗(yàn) + 66  論壇幣 + 66   查看全部評(píng)分

    藤椅
    njugjj 發(fā)表于 2016-4-20 15:48:05 |只看作者 |壇友微信交流群
    感謝樓主,學(xué)習(xí)了~[em17][em17]
    板凳
    hello0406 發(fā)表于 2016-4-20 15:48:53 |只看作者 |壇友微信交流群
    只聽過凱利公式,又學(xué)到了新姿勢(shì),多謝樓主。
    報(bào)紙
    橙@nju 學(xué)生認(rèn)證  發(fā)表于 2016-4-20 16:20:14 |只看作者 |壇友微信交流群
    不錯(cuò)不錯(cuò),支持
    地板
    cusora 發(fā)表于 2016-4-20 16:28:16 |只看作者 |壇友微信交流群
    太贊了,學(xué)習(xí)學(xué)習(xí)
    7
    mieshaoli 發(fā)表于 2016-4-20 18:21:17 |只看作者 |壇友微信交流群
    提示: 作者被禁止或刪除 內(nèi)容自動(dòng)屏蔽
    8
    joesrd 發(fā)表于 2016-4-20 18:55:24 |只看作者 |壇友微信交流群
    好論題
    9
    笨笨AI 發(fā)表于 2016-4-20 22:49:45 |只看作者 |壇友微信交流群
    量化小講堂-Python、Pandas系列】諾獎(jiǎng)得主的倉位分配算法,有效嗎?
    10
    jiandong4388 學(xué)生認(rèn)證  發(fā)表于 2016-4-20 22:58:05 |只看作者 |壇友微信交流群
    謝謝樓主分享

    本版微信群
    加好友,備注jr
    拉您進(jìn)交流群

    京ICP備16021002-2號(hào) 京B2-20170662號(hào) 京公網(wǎng)安備 11010802022788號(hào) 論壇法律顧問:王進(jìn)律師 知識(shí)產(chǎn)權(quán)保護(hù)聲明   免責(zé)及隱私聲明

    GMT+8, 2024-12-29 02:41