matlab量化投資基本操作:數據導入與簡單繪圖(1)

2021-02-20 量化投資訓練營

  今天開始,我們放出之前儲備的一些教程內容,我們計劃在8月中旬,再完成一套規模較小的公開課內容,大致內容是以matlab為工具,講解如何進行量化投資分析。這次會涉及到對經典算法的講解,並附送給大家可供學習的源碼。


  所以你可以理解為,今天開始,部分基礎講稿,就通過公眾號放出了。

  matlab的用途

  MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室)。它有一段比較鮮為人知的的身世,20世紀70年代,美國新墨西哥大學計算機科學系主任Cleve Moler為了減輕學生編程的負擔,用FORTRAN編寫了最早的MATLAB。

  MATLAB這個軟體經過數十個版本迭代,已經成為將數值分析、矩陣計算、科學數據可視化以及非線性動態系統的建模和仿真標準化軟體,所以用它來進行量化投資程序編寫,也是目前國內外的主流應用方式。

  matlab內置了很多工具箱,可以省去了matlab編程的過程,實際上是把程序轉換成界面,便於初學者的操作。比如統計工具箱,小波工具箱,神經網絡工具箱等等。

  下面我們進入具體的幾個簡單演示,快速熟悉這款軟體。

  數據導入(從Excel)


  1、定義工作區,到E盤

  2、輸入命令  data=xlsread('matlab123.xlsx');


  data是導入數據的變量名,xlsread是專門用於和Excel進行數據交互的函數,如果想詳細了解,可以輸入doc xlsread,以後對任何命令有疑問,都可以這樣,輸入doc,查看用戶文檔。

  還可以點擊導入數據按鈕,這就是純的界面操作,不用寫碼,最好導入為矩陣,方便在matlab裡操作。



  常用繪圖方式

  我們可以選取剛才導入的matlab123文件,點擊plot或者bar,實現簡單的繪圖功能。

  matlab會按照數據結構,識別能夠使用的繪圖工具。

  首先我們生成3個變量x y1 y3,對其進行繪圖

clear % 養成習慣,運行一個全新的案例時,用clear清除掉之前產生的變量

x = 0:0.01:20; % 定義x是以0.01為間隔,從0~20的變量

y1 = 200*exp(-0.05*x).*sin(x);     

y2 = 0.8*exp(-0.5*x).*sin(10*x);   % 計算y1和y2

plotyy(x,y1,x,y2,'plot');          % 標準的繪圖函數是plot,plotyy是一個雙Y軸圖像


對剛才導入的矩陣的一列,進行繪圖:

data=xlsread('matlab123.xlsx');

x = 1:1:3199;

y3= data(:,4);

y4= data(:,5);

plotyy(x,y3,x,y4,'plot');


可以看到,收盤價和成交量的變動,基本上是正相關的。

可以在圖片上插入圖例。

還可以給圖片左右Y周加上不同顏色,以清晰體現。

這裡首先定義chart數據,然後對其第一組數據,和第二組數據,

X軸顏色不變,Y軸繪製不同的顏色。

chart=plotyy(x,y3,x,y4,'plot');

set(chart(1),'XColor','k','YColor','b');

set(chart(2),'XColor','k','YColor','r');

在命令行中,還可以插入坐標軸和標題

xlabel('日期');

title('指數和成交量分析');


  以下是今日收評:

  今日大盤呈現窄幅震蕩走勢,下午2:15出現一波跳水,但此後迅速反彈收回。截止到收盤上證指數報收3054.02,深成指報收10854.14。操作上持股待漲。今天題材股得以發揮,讓我們感覺到比較輕鬆,可能在小盤股沉寂一段時間之後,要開始活躍了。

  今日螺紋鋼期貨延續夜盤低開並出現下跌,此後出現弱勢震蕩反彈,豆粕總體與螺紋鋼在盤口走勢一致,操作上,豆粕短期出現強勢,但前高有壓力,建議觀望,而螺紋鋼回踩5、10日線都是做多機會,趨勢行情以趨勢追蹤為主。

  上證指數:
  狀態:買入。倉位:100%。


  創業板指:
  狀態:買入。倉位:100%。 

  點擊底部【閱讀原文】

  跳轉到我們剛發布的《打開量化交易大門 36節精選公開課》目錄。

  或者去優酷,也可以看到完整的課程專輯。

  http://list.youku.com/albumlist/show?id=27113684&ascending=1&page=1.html



相關焦點

  • matlab量化投資基本操作:構建簡易交易策略測試平臺(9)
    我們使用matlab不僅是做數據分析,也可以構建簡單的交易策略測試平臺,這裡所說的交易策略包括了技術指標交易擇時等眾多的交易方法,它們共同的特徵是,價格在運行過程中,觸發了模型核心數值的變化,模型核心數值決定了信號函數s是做多還是做空。  今晚我們會連續用3天時間,給大家介紹如何構建這樣一個平臺,以及清晰的原始碼,這也是初學量化投資不可或缺的基礎知識。
  • matlab量化投資基本操作:計算交易次數和勝率並繪圖(11)
    %% 6 計算策略交易次數和勝率並繪圖s = zeros(size(Close_T1));                                                           % 創建大小和Close_T1一樣的0矩陣s(fast>slow) = 1;
  • 教程合集 | MATLAB繪圖基本操作與屬性
    微信不能打開外部連結,煩請各位複製連結至瀏覽器食用~MATLAB氣象海洋簡單粗暴教程:by:二爺名聲在外http://bbs.06climate.com/forum.php?mod=viewthread&tid=92239利用MATLAB對CALIPSO中VFM數據繪圖與結果討論:by:kongfeng0824http://bbs.06climate.com/forum.php?
  • 數據處理:Matlab之向量和數組的基本操作
    一文中,我們對matlab做了簡要介紹。本文來說說matlab 中使用數據的常用形式——向量,也就是一維數組。二維數組就是矩陣了,我們下次再寫。向量 (vector)matlab中的向量分為行向量和列向量兩種。行向量的數據之間用逗號或者空格隔開;列向量的數據之間用分號隔開。
  • matlab繪圖(六)-圖像光滑&數據取點
    過冷水今天和大家分享一下讀取圖像數據點的小技巧:用cftool插值繪圖得到擬合後的圖像,然後正確獲取擬合圖像對應的數據。
  • 有了這張matlab繪圖速查表,您還用擔心matlab繪圖嗎?
    繪圖速查表,初看文章封面還以是簡單的PS拼湊而成。等進入文章才發現張博士竟然是用純matlab繪製的,而張博士也在其GitHub帳戶中公開了的相關原始碼。除了這張速查表本身對matlab繪圖大有裨益外,繪製出這張的圖原始碼也是非常值得大家研究學習,涉及到界面布局排版、matlab坐標軸操控、文本線形操控等多個matlab繪圖知識。相信如果大家認真研究該原始碼後,對提高大家的matlab繪圖水平肯定是大有幫助。
  • 從零開始學量化(二):python/matlab/r/sas/vba選哪個
    先說優點,量化或者數據分析來說,正如前面說的,matlab對矩陣的支持非常強大,二維以及更高維的矩陣,雖然python,r裡面也有矩陣這樣的數據類型,但感覺沒有matlab的好用,比如python裡的矩陣,剛開始學經常會被矩陣裡的中括號搞的很暈,二維或者以上的矩陣,每個元素都會帶一個[],matlab看多了用這個會有點不習慣
  • 【Matlab量化投資】用數據包絡分析和基因算法進行選股分析?你get了嗎!(附源程序)
    ‍本文主要介紹用數據包絡分析和基因算法按上市公司的基本面數據進行選股分析。其中基因算法用於選擇基本面指標,數據包絡分析對股票進行效率評分。‍‍‍‍‍數據包絡分析的步驟如下:1.明確評價目的;2.選擇決策單元;3.建立輸入/輸出指標體系;4.搜集和整理數據資料;5.DEA模型的選擇;6.分析評價結果並提出決策建議。
  • 基本面分析 ≠ 基本面量化投資?
    長久以來,學術界的一種主流觀點是:由於有限套利,市場並非完美有效;而定價錯誤的大小應剛好等於通過基本面分析(以發現該定價錯誤)的套利成本。而顯然,使用一些廣為人知的因子來實現基本面量化投資並沒有套利成本,所以因子投資者應該對它能夠取得的效果有正確的認知。
  • python、量化與「雅典娜」項目
    ,也找不到一本關於量化投資的書籍,根本無從下手。   但是R語言搞量化已經很成熟了,學習起來也有很多途徑。關於R和Python搞量化的區別,我想聽聽您的觀點。   我的打算是先學習R語言搞量化投資,用R語言打好量化投資的基礎。   之後在轉到Python來,這樣不會毫無目標的學習,這個也想聽聽您的看法。謝謝老大。zw因為以IT和大數據分析為主,對於國內金融行業一線,的確有些疏遠。
  • MATLAB中的數據插值函數
    插值是在一組已知數據點的範圍內添加新數據點的技術。可以使用插值來填充缺失的數據、對現有數據進行平滑處理以及進行預測等。MATLAB 中的插值技術可分為適用於網格上的數據點和散點數據點。從數學上來說,數據插值是一種函數逼近的方法。
  • matlab科研繪圖模板,拿走不謝【精品乾貨】
    今天給大家分享的是matlab科研繪圖模板,是原創代碼共享
  • 這些論文繪圖軟體,你會用哪個?
    從大量的數據資料中獲得所需的效果圖,已經有很多前輩們為咱們趟好了路,留下了大量的繪圖軟體及經驗。接下來小編將為大家介紹一些功能強大的繪圖軟體。Matlab只排在第十位是因為本來它就不是一個用來做畫圖的軟體。人家的主要功能是矩陣操作、統籌優化、數學實驗、仿真模擬(此處省略一萬字)等等好嗎?用matlab畫圖簡直就是高射炮打蚊子——大材小用。
  • 盤點研究生寫論文必備的十大繪圖軟體!
    本文來源:量化研究方法,略有改動眾所周知,高水平的配圖可以令論文、報告等顯得耳目一新,瞬間提高一個檔次。寫文章、做報告,搞好配圖已經成為了又一項標配技能。從大量的數據資料中獲得所需的效果圖,已經有很多前輩們為咱們趟好了路,留下了大量的繪圖軟體及經驗。接下來小白將為大家介紹一些功能強大的繪圖軟體。Matlab只排在第十位是因為本來它就不是一個用來做畫圖的軟體。
  • 【量化乾貨】用python搭建量化交易策略
    本教程是使用Python進行定量交易的初學者指南,如果讀者是以下行業人士,將會發現這篇文章非常有幫助:1. 旨在成為基金或銀行量化分析師2. 計劃開始自己的自營量化交易的人。我們將在這篇文章中介紹以下主題:1.
  • 搭建系統|本地量化工具集成開源量化框架backtrader操作指南!
    回測的數據格式為PandasData,我們通過API接口下載後,經過轉換後使用。可視化部分會稍微複雜些,因為我們在wxPython中嵌入了matplotlib,所以後端是更改過的,基本上backtrader的繪圖就廢了。話說回來,自帶的繪圖風格我其實也也不是很喜歡,於是就把回測過程中的一些log信息收集下來,二次製作一個繪圖函數。
  • MATLAB處理NAN數據程序(含實例)
    1);data2 = data(:,2);data3 = data(:,3);%funnan自定義函數 %輸入:data1是需要處理的數據%輸出% data是處理之後的數據 % stroe是去掉NAN後取鄰近平均值的位置 stroe1是繼續取NAN值的位置 s是取平均值對應的數據[data11,stroe,stroe1,s] = funnan1(data1,m);[data22,stroe2,stroe22
  • 32個實用matlab編程技巧
    今天給大家介紹一些編程小技巧,之前給大家介紹過matlab編程小技巧,本期是在之前的基礎之上做了修正和補充完善,下面一起來看看吧。1、能用矩陣計算的就用矩陣計算,不能用矩陣計算的想方設法也要往矩陣計算上靠。2、少用循環,尤其是避免多重循環嵌套,儘量用向量化的運算來代替循環操作。
  • MATLAB
    MATLAB是美國MathWorks公司出品的商業數學軟體,用於數據分析、無線通信、深度學習、圖像處理與計算機視覺、信號處理、量化金融與風險管理
  • MATLAB基礎課程v2 第二章 MATLAB繪圖知識(8)
    繼續補充講解!