① 聚寬量化平台好用嗎
聚寬對於新手的友好度不錯,有豐富的學習資源和社區交流,平台的回測速度還可以,當然米筐回測速度可能好一些,數據方面雖然比不上具有數據優勢的萬得、同花順、優礦,但也都可以吧,實盤是各個平台的痛點,這點個人認為聚寬需要加強尤其盡快像掘金量化做到本地化終端運行無需上傳策略,策略的安全性是用戶的致命痛點。
整體而言聚寬對於新手入門是不錯的平台,數據、回測、模擬、實盤均做不算很好但也不算很差吧。
② 如何將股票池裝進通達信軟體
所謂的股票池,就是自己選擇的一些股票,放到自己建立的板塊里,不存在如何裝進去的問題。
工具-用戶板塊設置,可以建立新的板塊.
工具-系統設置-標簽,可以把自定義板塊添加到日常顯示模塊中
選擇你想添加的股票,按右鍵-加入到板塊股,可以將股票添加到相應的板塊.
這些板塊和板塊里的股票就是你的股票池.板塊可以調整,刪除,可以先試驗一下.
通達信軟體是多功能的證券信息平台,與其他行情軟體相比,有簡潔的界面和行情更新速度較快等優點。通達信允許用戶自由劃分屏幕,並規定每一塊對應哪個內容。至於快捷鍵,也是通達信的特色之一。通達信還有一個有用的功能,就是「在線人氣」,可以了解哪些是當前關注,哪些是持續關注,又有哪些是當前冷門,可以更直接了解各個股票的關注度。
深圳市財富趨勢科技有限責任公司是一家資深的證券業高科技企業,致力於證券分析系統和計算機通訊系統的研究開發,自1995年成立以來,經過蓬勃發展,已經成為該行業的典範。其開發的行情源被同行業多企業採用,是目前市場上非常主流的擁有自主開發證券類軟體能力的企業。深圳市財富趨勢科技有限責任公司在證券行業的著名品牌是「通達信」。
③ 聚寬的量化產品收益怎麼樣
聚寬應該是國內量化用戶最多的量化平台 現在股票程序化跟一創合作,叫一創聚寬,前景和收益都可觀。
④ 如何用python實現Markowitz投資組合優化
多股票策略回測時常常遇到問題。
倉位如何分配?
你以為基金經理都是一拍腦袋就等分倉位了嗎?
或者玩點玄乎的斐波拉契數列?
OMG,誰說的黃金比例,讓我看到你的腦袋(不削才怪)!!
其實,這個問題,好多好多年前馬科維茨(Markowitz)我喜愛的小馬哥就給出答案——投資組合理論。
根據這個理論,我們可以對多資產的組合配置進行三方面的優化。
1.找到有效前沿。在既定的收益率下使組合的方差最小。
2.找到sharpe最優的組合(收益-風險均衡點)
3.找到風險最小的組合
跟著我,一步兩步,輕松實現。
該理論基於用均值和方差來表述組合的優劣的前提。將選取幾只股票,用蒙特卡洛模擬初步探究組合的有效前沿。
通過最大Sharpe和最小方差兩種優化來找到最優的資產組合配置權重參數。
最後,刻畫出可能的分布,兩種最優以及組合的有效前沿。
註:
文中的數據API來自量化平台聚寬,在此表示感謝。
原文見【組合管理】——投資組合理論(有效前沿)(包含正態檢驗部分)
0.導入需要的包
import pandas as pd
import numpy as np
import statsmodels.api as sm #統計運算
import scipy.stats as scs #科學計算
import matplotlib.pyplot as plt #繪圖
1.選取幾只感興趣的股票
000413 東旭光電,000063 中興通訊,002007 華蘭生物,000001 平安銀行,000002 萬科A
並比較一下數據(2015-01-01至2015-12-31)
In[1]:
stock_set = ['000413.XSHE','000063.XSHE','002007.XSHE','000001.XSHE','000002.XSHE']
noa = len(stock_set)
df = get_price(stock_set, start_date = '2015-01-01', end_date ='2015-12-31', 'daily', ['close'])
data = df['close']
#規范化後時序數據
(data/data.ix[0]*100).plot(figsize = (8,5))
Out[1]:
2.計算不同證券的均值、協方差
每年252個交易日,用每日收益得到年化收益。計算投資資產的協方差是構建資產組合過程的核心部分。運用pandas內置方法生產協方差矩陣。
In [2]:
returns = np.log(data / data.shift(1))
returns.mean()*252
Out[2]:
000413.XSHE 0.184516
000063.XSHE 0.176790
002007.XSHE 0.309077
000001.XSHE -0.102059
000002.XSHE 0.547441
In [3]:
returns.cov()*252
Out[3]:
3.給不同資產隨機分配初始權重
由於A股不允許建立空頭頭寸,所有的權重系數均在0-1之間
In [4]:
weights = np.random.random(noa)
weights /= np.sum(weights)
weights
Out[4]:
array([ 0.37505798, 0.21652754, 0.31590981, 0.06087709, 0.03162758])
4.計算預期組合年化收益、組合方差和組合標准差
In [5]:
np.sum(returns.mean()*weights)*252
Out[5]:
0.21622558669017816
In [6]:
np.dot(weights.T, np.dot(returns.cov()*252,weights))
Out[6]:
0.23595133640121463
In [7]:
np.sqrt(np.dot(weights.T, np.dot(returns.cov()* 252,weights)))
Out[7]:
0.4857482232609962
5.用蒙特卡洛模擬產生大量隨機組合
進行到此,我們最想知道的是給定的一個股票池(證券組合)如何找到風險和收益平衡的位置。
下面通過一次蒙特卡洛模擬,產生大量隨機的權重向量,並記錄隨機組合的預期收益和方差。
In [8]:
port_returns = []
port_variance = []
for p in range(4000):
weights = np.random.random(noa)
weights /=np.sum(weights)
port_returns.append(np.sum(returns.mean()*252*weights))
port_variance.append(np.sqrt(np.dot(weights.T, np.dot(returns.cov()*252, weights))))
port_returns = np.array(port_returns)
port_variance = np.array(port_variance)
#無風險利率設定為4%
risk_free = 0.04
plt.figure(figsize = (8,4))
plt.scatter(port_variance, port_returns, c=(port_returns-risk_free)/port_variance, marker = 'o')
plt.grid(True)
plt.xlabel('excepted volatility')
plt.ylabel('expected return')
plt.colorbar(label = 'Sharpe ratio')
Out[8]:
6.投資組合優化1——sharpe最大
建立statistics函數來記錄重要的投資組合統計數據(收益,方差和夏普比)
通過對約束最優問題的求解,得到最優解。其中約束是權重總和為1。
In [9]:
def statistics(weights):
weights = np.array(weights)
port_returns = np.sum(returns.mean()*weights)*252
port_variance = np.sqrt(np.dot(weights.T, np.dot(returns.cov()*252,weights)))
return np.array([port_returns, port_variance, port_returns/port_variance])
#最優化投資組合的推導是一個約束最優化問題
import scipy.optimize as sco
#最小化夏普指數的負值
def min_sharpe(weights):
return -statistics(weights)[2]
#約束是所有參數(權重)的總和為1。這可以用minimize函數的約定表達如下
cons = ({'type':'eq', 'fun':lambda x: np.sum(x)-1})
#我們還將參數值(權重)限制在0和1之間。這些值以多個元組組成的一個元組形式提供給最小化函數
bnds = tuple((0,1) for x in range(noa))
#優化函數調用中忽略的唯一輸入是起始參數列表(對權重的初始猜測)。我們簡單的使用平均分布。
opts = sco.minimize(min_sharpe, noa*[1./noa,], method = 'SLSQP', bounds = bnds, constraints = cons)
opts
Out[9]:
status: 0
success: True
njev: 4
nfev: 28
fun: -1.1623048291871221
x: array([ -3.60840218e-16, 2.24626781e-16, 1.63619563e-01, -2.27085639e-16, 8.36380437e-01])
message: 'Optimization terminated successfully.'
jac: array([ 1.81575805e-01, 5.40387481e-01, 8.18073750e-05, 1.03137662e+00, -1.60038471e-05, 0.00000000e+00])
nit: 4
得到的最優組合權重向量為:
In [10]:
opts['x'].round(3)
Out[10]:
array([-0. , 0. , 0.164, -0. , 0.836])
sharpe最大的組合3個統計數據分別為:
In [11]:
#預期收益率、預期波動率、最優夏普指數
statistics(opts['x']).round(3)
Out[11]:
array([ 0.508, 0.437, 1.162])
7.投資組合優化2——方差最小
接下來,我們通過方差最小來選出最優投資組合。
In [12]:
#但是我們定義一個函數對 方差進行最小化
def min_variance(weights):
return statistics(weights)[1]
optv = sco.minimize(min_variance, noa*[1./noa,],method = 'SLSQP', bounds = bnds, constraints = cons)
optv
Out[12]:
status: 0
success: True
njev: 7
nfev: 50
fun: 0.38542969450547221
x: array([ 1.14787640e-01, 3.28089742e-17, 2.09584008e-01, 3.53487044e-01, 3.22141307e-01])
message: 'Optimization terminated successfully.'
jac: array([ 0.3851725 , 0.43591119, 0.3861807 , 0.3849672 , 0.38553924, 0. ])
nit: 7
方差最小的最優組合權重向量及組合的統計數據分別為:
In [13]:
optv['x'].round(3)
Out[13]:
array([ 0.115, 0. , 0.21 , 0.353, 0.322])
In [14]:
#得到的預期收益率、波動率和夏普指數
statistics(optv['x']).round(3)
Out[14]:
array([ 0.226, 0.385, 0.587])
8.組合的有效前沿
有效前沿有既定的目標收益率下方差最小的投資組合構成。
在最優化時採用兩個約束,1.給定目標收益率,2.投資組合權重和為1。
In [15]:
def min_variance(weights):
return statistics(weights)[1]
#在不同目標收益率水平(target_returns)循環時,最小化的一個約束條件會變化。
target_returns = np.linspace(0.0,0.5,50)
target_variance = []
for tar in target_returns:
cons = ({'type':'eq','fun':lambda x:statistics(x)[0]-tar},{'type':'eq','fun':lambda x:np.sum(x)-1})
res = sco.minimize(min_variance, noa*[1./noa,],method = 'SLSQP', bounds = bnds, constraints = cons)
target_variance.append(res['fun'])
target_variance = np.array(target_variance)
下面是最優化結果的展示。
叉號:構成的曲線是有效前沿(目標收益率下最優的投資組合)
紅星:sharpe最大的投資組合
黃星:方差最小的投資組合
In [16]:
plt.figure(figsize = (8,4))
#圓圈:蒙特卡洛隨機產生的組合分布
plt.scatter(port_variance, port_returns, c = port_returns/port_variance,marker = 'o')
#叉號:有效前沿
plt.scatter(target_variance,target_returns, c = target_returns/target_variance, marker = 'x')
#紅星:標記最高sharpe組合
plt.plot(statistics(opts['x'])[1], statistics(opts['x'])[0], 'r*', markersize = 15.0)
#黃星:標記最小方差組合
plt.plot(statistics(optv['x'])[1], statistics(optv['x'])[0], 'y*', markersize = 15.0)
plt.grid(True)
plt.xlabel('expected volatility')
plt.ylabel('expected return')
plt.colorbar(label = 'Sharpe ratio')
Out[16]:
⑤ python如何將聚寬平台數據倒到本地文件進行
下載JQData壓縮包,解壓壓縮包,打開終端並切換到jqdatasdk-master文件中setup.py所在的目錄下,執行 python setup.py install,也能完成安裝。
⑥ 股票池是什麼意思 如何建立股票池
股票池是基金投資對象備選庫的業內通俗稱謂。
通過一個好的股票池,投資者可以從中挑選自己看中的股票進行分析,結合自己的情況和盤面變化,再從中選出適合自己買入的股票。
通常是某些股票投資者或者推薦機構,機構投資者,以股票K線技術,或者公司基本面、結合行業產業背景、經濟基本面和產業政策、宏觀政策,財務報表等某方面或者綜合指標所甄選的,用來隨著市場變化情況所選出的備選投資股票名單的稱呼。
⑦ 如何建立自己的股票池
我們就提到了認清趨勢的重要性。我們所說的趨勢是什麼?難道是大盤的指數嗎?非也。指數是個非常粗糙的市場描述,它涵括的品種、乃至反映的交易人群過於龐雜,以至於它只能作為粗略了解大勢的一個指南。因為:一方面對指數變化有較大影響的所謂權重股往往更適合大資金大機構來投資,而不適合散戶投資者;另一方面在信息爆炸的今天,業余投資者不可能對各個行業各個領域的動向都把握得非常清楚與及時,因此與其眉毛鬍子一把抓,還不如集中精力專注於1、2個領域。事實證明,這種做法雖然可能錯過其他領域出現的交易機會,但是可以大大減少所花費的時間精力。
在確認了自己所感興趣的行業後,下一步在這1、2個行業里就要挑選股票構建一個私人的股票池。入選股票池的股票包括以下這些目標:
1、高風險股票。也就是高beta系數的股票,一般是小盤股、投機股。這樣的股票比大盤運動得更快更活躍,交易此類股票能有效提高回報率。
2、某些大盤藍籌股
。大盤股是大資金大機構的最愛。相對於小盤股而言,這類股票的股性不是特別活躍,但是在行情低迷、市場總體流動性欠缺的情況下,這類個股的流動性優勢就凸現出來了。因此在特定市場環境下這類股票可能成為我們唯一可以交易的品種。我們將它們和高風險股票結合起來放在股票池裡,一旦行情啟動,大盤藍籌就讓位給小盤投機股。
3、有著穩定交易區間的個股。這類股票可能好幾個月都在一個箱體內上下震盪,不能提供一次性暴利機會,但它穩定的運行軌跡卻給我們提供了豐富的交易機會,「薄利多銷」是對它的最佳描述。
4、喜歡異動的個股。它們的價值得不到眾多投資者的認可,其交易量一般比較低迷。但是,它卻往往會有突如其來的價格異動。正因為關注的投資者少,因此在少部分資金的推動下,它的價格就能出現令人亢奮的大起大落。而這種現象很可能一再重演。我們把這類股票放到私人股票池裡進行密切觀察,掌握其習性,以期獲得暴利機會。
5、年內價格波動范圍大的個股。對於一年內最高價和最低價之間差別很大的個股,我們也要密切留意。根據交易心理,當一隻價格波動巨大的股票創下新低的時候,那些曾經買賣過它的投資者會相信它的價格很有可能會反彈到原來的高度,從而入場抄底。這樣一批人群的陸續入場就會逐漸推高它的價格,從而帶來獲利機會。
6、運行符合技術指標的個股。不論我們習慣使用的技術分析指標是移動平均線、RSI還是MACD,它們都不可能適用於所有的股票。
⑧ 聚寬、米筐、掘金量化、優礦哪家平台的實盤通道更好
聚寬就可以實盤啊,還挺方便的,可以自己寫策略跑。
⑨ 如何做自己的通達信股票池
工具-用戶板塊設置,可以建立新的板塊.
工具-系統設置-標簽,可以把自定義板塊添加到日常顯示模塊中
選擇你想添加的股票,按右鍵-加入到板塊股,可以將股票添加到相應的板塊.
這些板塊和板塊里的股票就是你的股票池.板塊可以調整,刪除,可以先試驗一下.
通達信軟體是多功能的證券信息平台,與其他行情軟體相比,有簡潔的界面和行情更新速度較快等優點。通達信允許用戶自由劃分屏幕,並規定每一塊對應哪個內容。至於快捷鍵,也是通達信的特色之一。通達信還有一個有用的功能,就是「在線人氣」,可以了解哪些是當前關注,哪些是持續關注,又有哪些是當前冷門,可以更直接了解各個股票的關注度。
深圳市財富趨勢科技有限責任公司是一家資深的證券業高科技企業,致力於證券分析系統和計算機通訊系統的研究開發,自1995年成立以來,經過蓬勃發展,已經成為該行業的典範。其開發的行情源被同行業多企業採用,是目前市場上非常主流的擁有自主開發證券類軟體能力的企業。深圳市財富趨勢科技有限責任公司在證券行業的著名品牌是「通達信」。
⑩ portfolio在聚寬里什麼意思
Port Trunks 帶寬聚合 (cisco有專用的以太通道Ethernet Channel) 聚合帶寬就是通過並行鏈路匯聚或捆綁來提高鏈路帶寬,提供一種機制,將多個埠捆綁成一個邏輯鏈路! 它有以下優點:1 帶寬的可伸縮性 2 容錯 3 負載均衡 4 對網路應用透明