Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢谭网?

作者:

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢博肋?

翻譯:徐克任

校對:ansible.lee

摘要

這篇文章中將展示如何將獲得諾貝爾獎的經(jīng)濟理論應(yīng)用于股票市場低斋,并輔以簡單的Python編程來解決最終的優(yōu)化問題。

在本文中匪凡,我們討論了如何使用開創(chuàng)性經(jīng)濟理論中的關(guān)鍵概念來制定股票市場投資的簡單優(yōu)化問題膊畴。

為了說明,采用了三家公司月平均股票價格的樣本數(shù)據(jù)集病游,并展示了如何使用基本的Python數(shù)據(jù)科學(xué)庫(如NumPy唇跨,Pandas和名為CVXPY的優(yōu)化框架)立即建立線性編程模型。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢衬衬?

如何以最少的風(fēng)險賺取最多的錢买猖?

介紹

現(xiàn)代數(shù)據(jù)科學(xué)和分析企業(yè)的主要目標(biāo)之一是為業(yè)務(wù)和技術(shù)公司解決復(fù)雜的優(yōu)化問題,以最大化其利潤滋尉。

在前面文章中玉控,討論了基本的離散優(yōu)化概念,并介紹了用于解決此類問題的Python庫PuLP狮惜。

盡管線性規(guī)劃(LP)問題僅由線性目標(biāo)函數(shù)和約束定義高诺,但它可以應(yīng)用于從醫(yī)療保健到經(jīng)濟,商業(yè)到軍事的各種領(lǐng)域中的各種各樣的問題碾篡。

在本文中虱而,我們展示了在經(jīng)濟規(guī)劃領(lǐng)域使用Python編程實現(xiàn)LP的一個如此驚人的應(yīng)用 - 最大化股票市場投資組合的預(yù)期利潤,同時最大限度地降低與之相關(guān)的風(fēng)險开泽。

聽起來不錯吧牡拇?

如何最大化利潤并最大限度地降低股票市場的風(fēng)險?

1990年諾貝爾經(jīng)濟學(xué)獎獲得者哈里馬科維茨(因其著名的現(xiàn)代投資組合理論(MPT)而獲得認可,因為它以金融市場的說法而聞名诅迷。原始論文早在1952年就已出版佩番。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢众旗?

資料來源:AZ行情

這里的關(guān)鍵詞是平衡罢杉。

良好,平衡的投資組合必須提供保護(最小化風(fēng)險)和機會(最大化利潤)贡歧。

而且滩租,當(dāng)涉及最小化和最大化等概念時,用數(shù)學(xué)優(yōu)化理論來解釋問題是很自然的利朵。

基本思想相當(dāng)簡單律想,基于厭惡風(fēng)險的人性。

一般而言绍弟,股票市場統(tǒng)計數(shù)據(jù)表明技即,較高的風(fēng)險與較高的回報概率和較低的風(fēng)險相關(guān),而較小的回報概率較大樟遣。

MPT假設(shè)投資者厭惡風(fēng)險而叼,這意味著如果兩個投資組合提供相同的預(yù)期回報,投資者將更喜歡風(fēng)險較低的投資組合豹悬。想一想葵陵。只有在高回報率很高的情況下,您才會收集高風(fēng)險股票瞻佛。

但是如何量化風(fēng)險呢脱篙?這肯定是一個模糊的概念,可能對不同的人意味著不同的東西伤柄。然而绊困,在普遍接受的經(jīng)濟理論中,股票價格的變化(波動性)(在固定時間范圍內(nèi)定義)等同于風(fēng)險适刀。

因此秤朗,中心優(yōu)化問題是在確保一定數(shù)量的利潤回報的同時將風(fēng)險降至最低≌嵬或者川梅,在保持風(fēng)險低于某個閾值的同時最大化利潤。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢然遏?

在保持風(fēng)險低于某個閾值的同時最大化利潤

一個示例問題

在本文中贫途,我們將展示組合優(yōu)化問題的一個非常簡化的版本,可以將其轉(zhuǎn)換為LP框架并使用簡單的Python腳本有效地解決待侵。

目標(biāo)是說明這種優(yōu)化求解的能力和可能性丢早,以解決復(fù)雜的現(xiàn)實問題。

我們使用24個月的股票價格(月平均值)為三個股票 - 微軟,維薩怨酝,沃爾瑪傀缩。雖然是歷史數(shù)據(jù),但它們完美地闡釋了這一過程农猬。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢赡艰?

圖:三個公司在特定24個月期間的月度股票價格。

如何定義退貨斤葱?我們可以通過從當(dāng)前月份減去上個月的平均股票價格并除以上個月的價格來簡單地計算滾動月度回報慷垮。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢?

返回如下圖所示揍堕,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢料身?

優(yōu)化模型

股票的回報是不確定的數(shù)量。我們可以將其建模為隨機向量衩茸。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢芹血?

投資組合也可以建模為矢量。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢楞慈?

因此幔烛,某些投資組合的回報由這些向量的內(nèi)積給出,它是一個隨機變量抖部。百萬美元的問題是:

我們?nèi)绾伪容^隨機變量(對應(yīng)不同的投資組合)來選擇"最佳"投資組合说贝?

按照Markowitz模型,我們可以將我們的問題表述為慎颗,

給定固定數(shù)量的貨幣(比如1000美元)乡恕,我們應(yīng)該對三種股票中的每一只投資多少,以便(a)至少給定一個閾值的預(yù)期回報率為一個月俯萎,以及(b)將風(fēng)險降至最低(差異) )投資組合回報傲宜。

我們不能投入負數(shù)。這是非負性約束夫啊,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢函卒?

假設(shè)沒有交易成本,總投資受到手頭資金的限制撇眯,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢报嵌?

投資回報,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢熊榛?

但這是一個隨機變量锚国。所以,必須使用預(yù)期的數(shù)量玄坦,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢血筑?

假設(shè)我們想要最低預(yù)期回報绘沉。因此,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢豺总?

現(xiàn)在车伞,為了模擬我們必須計算方差的風(fēng)險,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢喻喳?

總之另玖,最終的優(yōu)化模型是,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢沸枯?

接下來日矫,會展示使用流行的Python庫來制定和解決這個問題赂弓,也會讓大家發(fā)現(xiàn)绑榴,python+理論解決這些問題是多么容易。

使用Python來解決優(yōu)化問題:CVXPY

我們將用于此問題的庫名為CVXPY盈魁。它是用于凸優(yōu)化問題的Python嵌入式建模語言翔怎。它允許您以遵循數(shù)學(xué)模型的自然方式表達您的問題,而不是以求解器所需的限制性標(biāo)準形式表達您的問題杨耙。

整個代碼在這個Jupyter筆記本給出赤套。在這里,我只展示核心代碼片段珊膜。

要設(shè)置必要的數(shù)據(jù)容握,關(guān)鍵是從月度價格的數(shù)據(jù)表計算返回矩陣。代碼如下车柠,

現(xiàn)在剔氏,如果你并排查看原始數(shù)據(jù)表和返回表,它看起來如下竹祷,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢谈跛?

接下來,我們簡單地從該返回矩陣計算平均值(預(yù)期)返回值和協(xié)方差矩陣塑陵,

之后感憾,CVXPY允許簡單地按照我們上面構(gòu)建的數(shù)學(xué)模型來設(shè)置問題,

注意使用極其有用的類象的quad_form()令花,并Problem()從CVXPY框架阻桅。

瞧!

可以編寫一個簡單的代碼來解決Problem并顯示最佳投資數(shù)量兼都,確保最小回報率為2%嫂沉,同時將風(fēng)險保持在最低水平。

最終結(jié)果是俯抖,

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢输瓜?

擴展問題

毋庸置疑,我們模型的設(shè)置和簡化假設(shè)可以使這個問題聽起來比現(xiàn)在簡單得多。但是一旦你理解了解決這種優(yōu)化問題的基本邏輯和機制尤揣,你就可以將它擴展到多個場景搔啊,

· 數(shù)百只股票,更長的時間范圍數(shù)據(jù)

· 多個風(fēng)險/收益率和門檻

· 最小化風(fēng)險或最大化回報(或兩者兼而有之)

· 一起投資一組公司

· 無論是/或場景 - 投資于Cococola或百事可樂北戏,但兩者都不投資

您必須構(gòu)造更復(fù)雜的矩陣和更長的規(guī)則列表负芋,使用指示符變量將其轉(zhuǎn)換為混合整數(shù)問題 -但所有這些都由CVXPY等軟件包本身支持。

了解可以使用框架解決的優(yōu)化問題的廣度嗜愈。

掌握這些靈活而強大的軟件包的工作知識為即將到來的數(shù)據(jù)科學(xué)家的技能組合帶來了巨大的價值旧蛾,因為解決優(yōu)化問題的需求出現(xiàn)在科學(xué),技術(shù)和業(yè)務(wù)問題的各個方面蠕嫁。

接下來大家可以學(xué)習(xí)為目的锨天,嘗試更復(fù)雜的投資問題,以獲得探索和收獲的樂趣剃毒。

Python實踐諾貝爾獎理論:如何以最少的風(fēng)險賺取最多的錢病袄?

嘗試更復(fù)雜的投資問題,以獲得探索和收獲的樂趣

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赘阀,一起剝皮案震驚了整個濱河市益缠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌基公,老刑警劉巖幅慌,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異轰豆,居然都是意外死亡胰伍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門秒咨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來喇辽,“玉大人,你說我怎么就攤上這事雨席∑凶桑” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵陡厘,是天一觀的道長抽米。 經(jīng)常有香客問我,道長糙置,這世上最難降的妖魔是什么云茸? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮谤饭,結(jié)果婚禮上标捺,老公的妹妹穿的比我還像新娘懊纳。我一直安慰自己,他們只是感情好亡容,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布嗤疯。 她就那樣靜靜地躺著,像睡著了一般闺兢。 火紅的嫁衣襯著肌膚如雪茂缚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天脚囊,我揣著相機與錄音,去河邊找鬼桐磁。 笑死悔耘,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的所意。 我是一名探鬼主播淮逊,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼扶踊!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起郎任,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤秧耗,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后舶治,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體分井,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年霉猛,在試婚紗的時候發(fā)現(xiàn)自己被綠了尺锚。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡惜浅,死狀恐怖瘫辩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情坛悉,我是刑警寧澤伐厌,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站裸影,受9級特大地震影響挣轨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜轩猩,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一卷扮、第九天 我趴在偏房一處隱蔽的房頂上張望荡澎。 院中可真熱鬧,春花似錦晤锹、人聲如沸衔瓮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽热鞍。三九已至,卻和暖如春衔彻,著一層夾襖步出監(jiān)牢的瞬間薇宠,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工艰额, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留澄港,地道東北人。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓柄沮,卻偏偏與公主長得像回梧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子祖搓,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 自我介紹 大家好狱意,我是博士后研究員肖子龍,在深圳某金融機構(gòu)任職拯欧,研究領(lǐng)域是智能投顧详囤。很高興今天能來到AI慕課學(xué)院和...
    shenciyou閱讀 8,259評論 3 18
  • 智能投顧前景備受看好,但這是一個演變的過程镐作,直接自動化會讓行業(yè)變得脆弱藏姐。理念的傳達是比技術(shù)更為急迫的事情。 “把主...
    shenciyou閱讀 1,951評論 0 1
  • 粉蕊霧霜漫蓋该贾,蒼青己繪枝條羔杨。晨光普照景觀妖。游伴初春相召杨蛋。 驚怨戀冬風(fēng)景兜材,且教賞到花驕。香濃靚麗惹魂逍...
    秋月白_b8b3閱讀 265評論 0 3
  • 學(xué)校除了一兩個領(lǐng)導(dǎo)有人性以外六荒,有些真不是東西护姆,推卸責(zé)任的領(lǐng)導(dǎo)不說。有的雖叫領(lǐng)導(dǎo)掏击,辦的卻是人渣干的事卵皂,不能叫人事。溜...
    清湯寡水bh閱讀 322評論 3 0
  • 四周悄無聲息 看到今天的朋友圈 我選擇獨自沉默 我不愿與人訴說什么 我不愿想起什么 不愿提關(guān)于他的一切 可總是控...
    菩提本無心_72a8閱讀 201評論 0 1