1. 程式人生 > >量化投資數學基礎——線性代數(1)

量化投資數學基礎——線性代數(1)

fff 來看 比較 proc 最終 計算 簡化 方向 ado

向量就是移動。 矩陣就是變換。

  歷來挖坑都是寫系列,不過因為工作原因,一直沒有時間寫長的系列。這次膽子大一點,寫個長的系列,希望不要扯著蛋。

  先講一下寫這個系列的原因。做量化投資的朋友們一般會咨詢我兩個問題,一個是編程怎麽學?另一個是數學怎麽學?編程對於量化投資而言,是一個非常必要的工具,有了一些研究的思路,看到了不錯的文章,希望自己實現一下,沒有工具,就像火鍋裏面菜都煮好了發現沒有筷子,手抓火鍋肯定是萬萬不行的。>>>Fintech 時代已經來臨!這或許也是屬於你的時代!

  關於編程怎麽學的解決方案,一方面我們自己有聚焦於量化策略研究的實踐課程,另外我一般還會推薦一些書籍,基本上,看課也好,看書也好,加上我們會答疑,各位朋友實現自己的想法基本上是沒有問題。

  數學對於量化投資而言,是靈魂,知道一些市場上可能存在的機會,有一些概念上的投資靈感。

  不懂數學,就像去菜市場買二斤黃瓜,老板拿了三根,說我感覺這些差不多兩斤,這種憑感覺的嚴謹程度用在投資上也是萬萬不行的。關於數學怎麽學的解決方案,我們自己現在還沒有出相關的課程,推薦過一些不錯的數學教材,然後,反饋基本上都是:看不懂,學不會,算不來,用不起。

  尷尬。

  後來我也思考了一下出現這個問題的原因,其實是我們工作了,又不要應付考試,為啥要計算各種題的結果? 我們工作了,又不要研究理論,為啥要看枯燥的數學定義? 我們工作了,時間如此寶貴,為啥全是細節沒有全局的框架了解?讓我自己整理嗎?

  這就是工作之後朋友們的痛點吧。數學定義純文字無法理解,推導過程太多記憶的公式和技巧,數學知識之間的聯系無法構建,導致了時間資源有限的我們無法忍受片刻的迷茫,畢竟著急要用。

  三個問題,還是要一個一個解決,想用一個知識的前提時對它有足夠的了解,那麽我希望先把數學知識轉化成容易理解的形式,幫助朋友們理解抽象的數學都做了些啥,然後這個方向上的具體內容,矩陣用的比較多,就先寫線性代數好了。也就有了這個系列的文章。

  以下正文,高能預警...

  講到這裏,各位應該也就清楚我寫這個系列的初衷和這個系列的目標了,就是幫助各位理解抽象的數學。那我們進入整體,看看線性代數是怎麽回事? >>>點擊咨詢如何入門量化金融

  大學裏面怎麽開頭講線性代數的我已經記不清楚了,就從大家比較熟悉的一些初中知識講起。

  初中的物理課上,我們接觸了力的概念,記憶好一點的應該還記得畫受力分析圖大概的樣子:

  技術分享圖片

  這裏,F表示物體受到的一個力,這個力在圖中表示時,有長度,有方向,有作用點。然後我們常常還會為了更簡化且精確做圖,省略物體的具體形狀,並且放到一個坐標系中。

  技術分享圖片

  我們把力的作用點當作坐標系的原點,這時力F可以被稱為向量(Vector)。我們後續的研究,也將都在這樣一個二維的坐標系中進行展示,看起來比較清楚,並且。。。好畫。 上面是用作圖的方式表示了矢量,我們可以對矢量進行更抽象的說明,就是一個有方向,有長度,起點在坐標原點的有向線段。

  然而,只能夠畫圖肯定是不夠的,因為我們沒有辦法進行運算,也就沒有辦法總結出更多有用的公理,因此我們需要先用數字形式準確地表示向量,也就是一個數列,或者說是一個矩陣。

  技術分享圖片

  當我們把 F終點對應的橫坐標位置和縱坐標位置按照圖中的位置寫入一個方括號,此時這對數字就對應了坐標系中的一個向量,並且只對應一個向量。同樣,坐標系中的一個向量只對應一對這樣的數字。

  講到這,相信大家都還沒有什麽疑問,畢竟還都是初中時候的內容,算是常識。用向量終點對應的坐標表示一個向量,現在來看是非常容易理解,但是如果用這種思路去理解後續的矩陣將會非常困難。那麽就需要我們用一種。。。當然我們在大學裏面老師也講過的方式去理解向量為什麽可以對應一對數字:

  技術分享圖片

  這裏面因為一般向量用小寫的字母表示,所以將F替換成了V。 在講解這個公式之前,我們先回顧一下向量的兩種比較簡單的運算:向量加法和數乘。

  技術分享圖片

  先介紹向量加法。此時如果用坐標系中有w 和 v 兩個向量,應該如何計算這兩個向量的和呢?此時我們提出第一個重要概念:

  向量就是移動。

  從這個角度去理解向量的加法,就可以將兩個向量的和描述成兩次移動的疊加,最終的位置就是他們的和。

  技術分享圖片

  這樣,向量 v 和 w 的加法就可以理解為從原點出發,按照向量 v 先移動到點A,然後,我們已經知道向量就是移動,所以可以按照平移後的向量 w,按照向量 w 繼續進行移動,從點A移動到點B。因此向量 v 與向量 w 相加的結果對應從原點移動到點B。

  再介紹向量的數乘。此時如果已知向量vv,現在希望計算 2v,我們還是強調一下:向量就是移動。

  那麽此時就可以理解成我們需要知道的是按照向量 v 移動2倍的效果。

  技術分享圖片

  可以看到,2v 對應的移動就是從原點移動到B。

  了解了向量的加法和數乘,我們在回頭看一下之前的公式:

  技術分享圖片

  了解了向量加法和數乘之後,我們應該明白,這裏將向量 v 當成了另外兩個向量進行數乘之後求和的結果。

  技術分享圖片

  這裏面的兩個向量 i、j 分別是沿x軸和y軸、長度為1的向量。

  我們現在對比一下向量 v 的兩種表示方式:

  技術分享圖片

  有沒有發現,當我們用一組數表示一個向量時,其實是提取了第一種表達方式中等號右側兩個向量前面的數字2和1,而省略了i和j 。這是一個非常重要的簡化。這種簡化一方面提取除了向量運算中的關鍵信息,讓線性代數的發展提供了可能,但同時,給我們對線性代數的理解帶來了巨大的障礙,因為我們在後續的學習中,或多或少的省略了用一對數字(2*1矩陣、列向量)表示一個向量時,是在向量i和j所包含信息的基礎上才能實現簡化表示的,而省略了這個視角,會無法區分向量的表示和變換的表示,也就只能從運算角度去記憶線性代數這個知識體系,而不是理解線性代數的本質。

  講到這裏,我在後續文章對線性代數的講解基礎就已經構建完畢了。向量就是移動,向量表示成數字是省略了部分關鍵信息,後續的講解將以此為基礎進行展開。
  

量化投資數學基礎——線性代數(1)