Ⅰ 選股策略回測用 Matlab 好還是用 Python 好
語言就是用來幹活的,中間文件用HDF5或者csv轉存,需要時間序列分析的時候上R.畢竟Python的sm庫還是很爛的,但是PCA和大量的多因子計算,Python R MATLAB都差不多。
回測講究並發效率和一些多參數回測的參數調優以及一些MC方法的估計時,py運行效率(相對於MATLAB)會高一些
總體來說,別太把語言當回事,就跟吃飯用筷子還是勺子還是叉子,要根據食材來
Ⅱ 因子分析法如何確定主成分及各個指標的權重
(1)首先將數據標准化,這是考慮到不同數據間的量綱不一致,因而必須要無量綱化。
(2)對標准化後的數據進行因子分析(主成分方法),使用方差最大化旋轉。
(3)寫出主因子得分和每個主因子的方程貢獻率。 Fj =β1j*X1 +β2j*X2 +β3j*X3 + ……+ βnj*Xn ; Fj 為主成分(j=1、2、……、m),X1、X2 、X3 、……、Xn 為各個指標,β1j、β2j、β3j、……、βnj為各指標在主成分Fj 中的系數得分,用ej表示Fj的方程貢獻率。
(4)求出指標權重。 ωi=[(m∑j)βij*ej]/[(n∑i)(m∑j)βij*ej],ωi就是指標Xi的權重。
(2)Python股票因子分析框架擴展閱讀
產品特點
1、操作簡便
界面非常友好,除了數據錄入及部分命令程序等少數輸入工作需要鍵盤鍵入外,大多數操作可通過滑鼠拖曳、點擊「菜單」、「按鈕」和「對話框」來完成。
2、編程方便
具有第四代語言的特點,告訴系統要做什麼,無需告訴怎樣做。只要了解統計分析的原理,無需通曉統計方法的各種演算法,即可得到需要的統計分析結果。
對於常見的統計方法,SPSS的命令語句、子命令及選擇項的選擇絕大部分由「對話框」的操作完成。因此,用戶無需花大量時間記憶大量的命令、過程、選擇項。
3、功能強大
具有完整的數據輸入、編輯、統計分析、報表、圖形製作等功能。自帶11種類型136個函數。SPSS提供了從簡單的統計描述到復雜的多因素統計分析方法,比如數據的探索性分析、統計描述、列聯表分析、二維相關、秩相關、偏相關、方差分析、非參數檢驗、多元回歸、生存分析、協方差分析、判別分析、因子分析、聚類分析、非線性回歸、Logistic回歸等。
Ⅲ Quant 應該學習哪些 Python 知識
1. 如果還需要Deep Learning方面的東西的話,可以考慮Theano或者Keras。這兩個東西可能會用在分析新聞數據方面。不過不是很推薦使用這類方法去做量化模型,因為計算量實在是太大,成本很高。
2. 交易框架方面,除了vn.py,還推薦PyAlgoTrade框架,github上可以搜到。私以為這個框架比vn.py牛逼太多了,畢竟是一個在金融IT領域混跡近20年的老妖的作品,架構設計不是一般的優秀。
3. 國內的話,ricequant是個不錯的選擇,雖然使用的是Java,但是團隊我見過,都是做金融IT出身的,基本上都有7、8年以上經驗,底層功底非常扎實,做事情都很靠譜。現在他們也在考慮把SDK擴展到Python這邊。
4. 國內的行情和交易介面,使用的是自己的協議(比如CTP介面使用的是FTD協議),而不是國際上廣泛使用的FIX協議,並且都不開源。如果需要連接行情,還需要考慮將介面SDK為python封裝一下。(修改:評論中有人提到很多券商也開放了FIX介面,不過似乎是在內網使用)
5. 有人談到資料庫了,這里我也說一下,對於高頻tick級別的數據,其量級可以達到每天TB級別,普通的關系資料庫是扛不住的。如果試圖使用傳統的關系資料庫,比如Oracle之類的可以省省了。對付這種級別的數據,採用文件系統+內存索引會更好。不過這種場景,一般也就是機構裡面能碰到了,個人quant可以不用考慮。
Ⅳ Python 如何爬股票數據
現在都不用爬數據拉,很多量化平台能提供數據介面的服務。像比如基礎金融數據,包括滬深A股行情數據,上市公司財務數據,場內基金數據,指數數據,期貨數據以及宏觀經濟數據;或者Alpha特色因子,技術分析指標因子,股票tick數據以及網路因子數據這些數據都可以在JQData這種數據服務中找到的。
有的供應商還能提供level2的行情數據,不過這種比較貴,幾萬塊一年吧
Ⅳ Python培訓哪裡最好
相信在IT領域發展的同學對Java很熟悉。Python編程語言排行中一直處於領先地位,這可以直接體現Python的重要。因此很多同學准備參加Python培訓機構系統學習。那麼,Python培訓機構哪家比較好?下面我們介紹一下。
隨著Python普及,越來越多的人了解py,企業也會對求職者提出更高的要求,他們想招聘一些能馬上開始工作的人,所以往往會招聘一些有項目開發經驗的人。這就是為什麼那麼多計算機專業的大學生找不到工作,所以越來越多的大學生會選擇在畢業前後參加一些專業的Python培訓課程,以增加他們的實踐經驗。只有增強自己的力量,才能立於不敗之地。
Python培訓機構哪家比較好?判斷Python培訓機構好與壞主要看以下幾個方面
1.看教學課程內容
學習Java技術,最主要是與時俱進,掌握的技術點能夠滿足時下企業的用人需求。而想要了解一家培訓機構所提供的課程是否新穎,也可以去機構的官網上看看,了解自己想學習的學科的課程大綱。看看學習路線圖是如何安排的,有沒有從零到一的系統搭建,是不是有強化實訓、實操的比重,有盡量多的項目實戰。因為企業對Java從業者的技術能力和動手實戰能力要求較高。
2.看師資力量
因為Java開發技術知識的專業性很強,如果盲目去學很容易走進誤區。相反,有講師帶領,站在巨人的肩膀上,往往事半功倍。畢竟現在這個時代只要多跟別人交流才能獲得更多更有價值的信息,初學者千萬不能閉門造車。
3.看口碑
行業內口碑比較好,學生對培訓機構比較認可,這種機構把精力放在了學生身上的機構,才是做教育的應有態度。
4.看就業情況
以學生就業為目標的培訓機構現在才是最主要的。要知道就業也是教學成果的體現,沒有好的教學保證是做不到好的就業的。
5.上門免費試聽
試聽是為了更好的去感受培訓機構的課程內容、講課風格、班級氛圍等,同時也能通過和班上在讀同學進行交流,更進一步去了解這家培訓機構各個方面是否符合自己的需要。
Ⅵ python量化哪個平台可以回測模擬實盤還不要錢
Python量化投資框架:回測+模擬+實盤
Python量化投資 模擬交易 平台 1. 股票量化投資框架體系 1.1 回測 實盤交易前,必須對量化交易策略進行回測和模擬,以確定策略是否有效,並進行改進和優化。作為一般人而言,你能想到的,一般都有人做過了。回測框架也如此。當前小白看到的主要有如下五個回測框架: Zipline :事件驅動框架,國外很流行。缺陷是不適合國內市場。 PyAlgoTrade : 事件驅動框架,最新更新日期為16年8月17號。支持國內市場,應用python 2.7開發,最大的bug在於不支持3.5的版本,以及不支持強大的pandas。 pybacktest :以處理向量數據的方式進行回測,最新更新日期為2個月前,更新不穩定。 TradingWithPython:基於pybacktest,進行重構。參考資料較少。 ultra-finance:在github的項目兩年前就停止更新了,最新的項目在谷歌平台,無奈打不開網址,感興趣的話,請自行查看吧。 RQAlpha:事件驅動框架,適合A股市場,自帶日線數據。是米筐的回測開源框架,相對而言,個人更喜歡這個平台。 2 模擬 模擬交易,同樣是實盤交易前的重要一步。以防止類似於當前某券商的事件,半小時之內虧損上億,對整個股市都產生了惡劣影響。模擬交易,重點考慮的是程序的交易邏輯是否可靠無誤,數據傳輸的各種情況是否都考慮到。 當下,個人看到的,喜歡用的開源平台是雪球模擬交易,其次是wind提供的模擬交易介面。像優礦、米筐和聚寬提供的,由於只能在線上平台測試,不甚自由,並無太多感覺。 雪球模擬交易:在後續實盤交易模塊,再進行重點介紹,主要應用的是一個開源的easytrader系列。 Wind模擬交易:若沒有機構版的話,可以考慮應用學生免費版。具體模擬交易介面可參看如下鏈接:http://www.dajiangzhang.com/document 3 實盤 實盤,無疑是我們的終極目標。股票程序化交易,已經被限制。但對於萬能的我們而言,總有解決的辦法。當下最多的是破解券商網頁版的交易介面,或者說應用爬蟲爬去操作。對我而言,比較傾向於食燈鬼的easytrader系列的開源平台。對於機構用戶而言,由於資金量較大,出於安全性和可靠性的考慮,並不建議應用。 easytrader系列當前主要有三個組成部分: easytrader:提供券商華泰/傭金寶/銀河/廣發/雪球的基金、股票自動程序化交易,量化交易組件 easyquotation : 實時獲取新浪 / Leverfun 的免費股票以及 level2 十檔行情 / 集思路的分級基金行情 easyhistory : 用於獲取維護股票的歷史數據 easyquant : 股票量化框架,支持行情獲取以及交易 2. 期貨量化投資框架體系 一直待在私募或者券商,做的是股票相關的內容,對期貨這塊不甚熟悉。就根據自己所了解的,簡單總結一下。 2.1 回測 回測,貌似並沒有非常流行的開源框架。可能的原因有二:期貨相對股票而言,門檻較高,更多是機構交易,開源較少; 去年至今對期貨監管控制比較嚴,至今未放開,只能做些CTA的策略,另許多人興致泱泱吧。 就個人理解而言,可能wind的是一個相對合適的選擇。 2.2 模擬 + 實盤 vn.py是國內最為流行的一個開源平台。起源於國內私募的自主交易系統,2015年初啟動時只是單純的交易API介面的Python封裝。隨著業內關注度的上升和社區不斷的貢獻,目前已經一步步成長為一套全面的交易程序開發框架。如官網所說,該框架側重的是交易模塊,回測模塊並未支持。 能力有限,如果對相關框架感興趣的話,就詳看相關的鏈接吧。個人期望的是以RQAlpha為主搭建回測框架,以雪球或wind為主搭建模擬框架,用easy系列進行交易。
Ⅶ 如何選股,選股方法,短線如何選股
如果你有一定編程基礎,比如python,C++,C#,mtalb,可以用我們掘金量化平台進行多因子選股、集合競價選股等策略選股。
Ⅷ Python培訓需要學習哪些內容
第一階段:Python核心編程
Python語言基本介紹、分支和循環、內置數據結構、函數、模塊、常用標准模塊、文件操作、異常處理、面向對象編程、多任務、內置函數與調試、排列組合與正則表達式、語法進階、Linux操作系統、文件系統與用戶管理、文件操作、網路命令、進程管理與服務配置、Shell編程與bash,源文件編譯、版本控制、MySQL使用、MySQL進階、游戲項目開發、階段總結+考核+簡歷指導
第二階段:全棧開發
HTML、CSS、JavaScript、jQuery、 BootStrap、Vue、Web開發基礎、Flask Views、Flask模板、資料庫操作、FLask配置、Django認識、Models、Templates、Views、Django AdvancedDjango進階)、(Django-Rest-Framework、天天生鮮項目(Vue+DRF)、項目部署、Tornado框架基礎、Tornado框架進階、ElasticSearch、全棧項目開發、階段總結+考核+簡歷指導
第三階段:網路爬蟲
爬蟲與數據、多線程爬蟲、Scrapy框架、Scrapy框架與信息實時抓取、定時爬取與郵件監控、NoSQL資料庫、Scrapy-Redis框架、百萬量數據採集、階段總結+考核+簡歷指導
第四階段:人工智慧
數據分析-基礎內容、數據分析-模塊學習、數據分析-數據清洗、數據分析-特徵工程和結果可視化、pyechart模塊動態可視化、詞雲、分類演算法、聚類演算法、回歸類演算法、關聯演算法、卷積神經網路、TensorFlow+PaddlePaddle、圖像識別、階段總結+考核+簡歷指導
第五階段:就業指導
就業指導、技術指導
Ⅸ python數據分析師需要掌握什麼技能
首先是基礎篇
1、首先是Excel,貌似這個很簡單,其實未必。Excel不僅能夠做簡單二維表、復雜嵌套表,能畫折線圖/Column chart/Bar chart/Area chart/餅圖/雷達圖/Combo char/散點圖/Win Loss圖等,而且能實現更高級的功能,包括透視表(類似於BI的多維分析模型Cube),以及Vlookup等復雜函數,處理100萬條以內的數據沒有大問題。最後,很多更高級的工具都有Excel插件,例如一些AI Machine Learning的開發工具。
2. SQL(資料庫)
我們都知道數據分析師每天都會處理海量的數據,這些數據來源於資料庫,那麼怎麼從資料庫取數據?如何建立兩表、三表之間的關系?怎麼取到自己想要的特定的數據?等等這些數據選擇問題就是你首要考慮的問題,而這些問題都是通過SQL解決的,所以SQL是數據分析的最基礎的技能。
3. 統計學基礎
數據分析的前提要對數據有感知,數據如何收集?數據整體分布是怎樣的?如果有時間維度的話隨著時間的變化是怎樣的?數據的平均值是什麼?數據的最大值最小值指什麼?數據相關與回歸、時間序列分析和預測等等。
4、掌握可視化工具,比如BI,如Cognos/Tableau/FineBI等,具體看企業用什麼工具,像我之前用的是FineBI。這些工具做可視化非常方便,特別是分析報告能含這些圖,一定會吸引高層領導的眼球,一目瞭然了解,洞察業務的本質。另外,作為專業的分析師,用多維分析模型Cube能夠方便地自定義報表,效率大大提升。
進階階段需要掌握的:
1、系統的學好統計學
純粹的機器學習講究演算法預測能力和實現,但是統計一直就強調「可解釋性」。比如說,針對今天微博股票發行就上升20%,你把你的兩個預測股票上漲還是下跌的model套在新浪的例子上,然後給你的上司看。統計學就是這樣的作用。
數據挖掘相關的統計方法(多元Logistic回歸分析、非線性回歸分析、判別分析等)
定量方法(時間軸分析、概率模型、優化)
決策分析(多目的決策分析、決策樹、影響圖、敏感性分析)
樹立競爭優勢的分析(通過項目和成功案例學習基本的分析理念)
資料庫入門(數據模型、資料庫設計)
預測分析(時間軸分析、主成分分析、非參數回歸、統計流程式控制制)
數據管理(ETL(Extract、Transform、Load)、數據治理、管理責任、元數據)
優化與啟發(整數計劃法、非線性計劃法、局部探索法、超啟發(模擬退火、遺傳演算法))
大數據分析(非結構化數據概念的學習、MapRece技術、大數據分析方法)
數據挖掘(聚類(k-means法、分割法)、關聯性規則、因子分析、存活時間分析)
其他,以下任選兩門(社交網路、文本分析、Web分析、財務分析、服務業中的分析、能源、健康醫療、供應鏈管理、綜合營銷溝通中的概率模型)
風險分析與運營分析的計算機模擬
軟體層面的分析學(組織層面的分析課題、IT與業務用戶、變革管理、數據課題、結果的展現與傳達方法)
2、掌握AI Machine Learning演算法,會用工具(比如Python/R)進行建模。
傳統的BI分析能回答過去發生了什麼?現在正在發生什麼?但對於未來會發生什麼?必須靠演算法。雖然像Tableau、FineBI等自助式BI已經內置了一部分分析模型,但是分析師想要更全面更深度的探索,需要像Python/R的數據挖掘工具。另外大數據之間隱藏的關系,靠傳統工具人工分析是不可能做到的,這時候交由演算法去實現,無疑會有更多的驚喜。
其中,面向統計分析的開源編程語言及其運行環境「R」備受矚目。R的強項不僅在於其包含了豐富的統計分析庫,而且具備將結果進行可視化的高品質圖表生成功能,並可以通過簡單的命令來運行。此外,它還具備稱為CRAN(The Comprehensive R Archive Network)的包擴展機制,通過導入擴展包就可以使用標准狀態下所不支持的函數和數據集。R語言雖然功能強大,但是學習曲線較為陡峭,個人建議從python入手,擁有豐富的statistical libraries,NumPy ,SciPy.org ,Python Data Analysis Library,matplotlib: python plotting。
以上我的回答希望對你有所幫助
Ⅹ python因子分析怎麼做
用spss就可以