日韩av无码中文字幕,国产午夜亚洲精品国产成人小说,成人影院午夜男女爽爽爽,欧美 亚洲 中文 国产 综合

首頁 熱點 要聞 國內(nèi) 產(chǎn)業(yè) 財經(jīng) 滾動 理財 股票

世界快看點丨利用Calmar指標(biāo)捕捉期間強勢股

2023-03-19 06:05:20 來源 : 生財之路

引言

卡瑪比率(Calmar Ratio) 與夏普比率類似,本來是用來衡量基金業(yè)績表現(xiàn)的指標(biāo),描述的是收益和最大回撤之間的關(guān)系。計算方式比較簡單,為年化收益率與歷史最大回撤之間的比率。Calmar比率數(shù)值越大,基金的業(yè)績表現(xiàn)越好;反之,基金的業(yè)績表現(xiàn)越差。和夏普比率不同的是,卡瑪比率是用最大回撤衡量風(fēng)險,用年化收益率衡量收益。相比標(biāo)準(zhǔn)差,最大回撤能更準(zhǔn)確地衡量基金的風(fēng)險,尤其控制回撤的能力,因此這個指標(biāo)又被稱為夏普比率的“進階版”。下面基于滬深京A股數(shù)據(jù),使用區(qū)間(如20、60、120、200日)收益率和區(qū)間最大回撤的比值來衡量Calmar比率,根據(jù)結(jié)果進行排序,篩選區(qū)間強勢股。以下選股標(biāo)的僅供學(xué)習(xí)參考,不構(gòu)成任何投資建議,交易有風(fēng)險,投資需謹(jǐn)慎。

數(shù)據(jù)獲取


(相關(guān)資料圖)

下面使用公眾號開發(fā)的qstock包獲取A股市場全部個股的收盤價作為分析樣本,qstock基于多線程優(yōu)點是獲取數(shù)據(jù)非常快,缺點是某些線程可能卡死導(dǎo)致某些個股獲取數(shù)據(jù)失敗。大家也可以使用akshare接口替代。

import qstock as qsimport pandas as pd#獲取滬深全市場A股代碼codes=qs.get_code()#獲取滬深全市場A股2020年以來后復(fù)權(quán)價格數(shù)據(jù)#剔除觀察值不足250交易日個股#當(dāng)網(wǎng)絡(luò)不太穩(wěn)定時,可能獲取不到全部數(shù)據(jù)或報錯prices=qs.get_price(code_list=codes,start="20210101",fqt=2)[-250:].dropna(axis=1)

運行結(jié)果:84%|███████████████████████ | 4283/5116 [01:17<00:15, 55.30it/s]

prices.tail()

由于網(wǎng)絡(luò)或其他原因,使用多線程只獲取了4283只個股收盤價數(shù)據(jù)(占比84%),剔除觀測值少于250的樣本只剩3626只個股。如果想獲取全部A股數(shù)據(jù),可以使用akshare接口,但時間比較長,約30分鐘左右,具體看get_price2函數(shù)。

#如果無法獲取全部A股數(shù)據(jù),可以使用akshare接口,但時間比較長,約30分鐘左右from tqdm import tqdmimport akshare as akdef get_price2(code_list, start="20210101", end="20230207", freq="d", fqt=1):"""code_list輸入股票list列表如code_list=["中國平安","貴州茅臺","工業(yè)富聯(lián)"]def run(code):try:temp = ak.stock_zh_a_hist(symbol="300114", period="daily", start_date=start, end_date=end, adjust="hfq")temp[str(code)]=temp["收盤"]data_list.append(temp[str(code)])pbar.update()except:passdata_list = []for code in tqdm(code_list):try:run(code)except:continue# 轉(zhuǎn)換為dataframedf = pd.concat(data_list, axis=1)return df#使用akshare接口獲取全部收盤價數(shù)據(jù)#prices2=get_price2(codes)

Calmar比率計算與探索性分析

先以250個交易日為區(qū)間考察一下截面價格動量(期間累計收益率)與風(fēng)險(期間最大回撤)的統(tǒng)計分布特點和相關(guān)關(guān)系。

#計算kama比率:即期間收益率除以最大回撤def calmar(s):ret=(s/s.iloc[0]-1).iloc[-1]drawdown=(1-s/s.cummax()).max()kama=ret/drawdownreturn kamadata=prices[-250:].dropna(axis=1)rets=data.apply(lambda s:(s/s[0]-1)[-1])drawdowns=data.apply(lambda s:(1-s/s.cummax()).max())calmars=data.apply(lambda s:calmar(s))calmar_df=pd.concat([rets.to_frame("rets"),drawdowns.to_frame("drawdowns"),calmars.to_frame("calmars")],axis=1)#注意,這里東方財富數(shù)據(jù)端口存在一些問題,招商南油后復(fù)權(quán)價格存在負(fù)數(shù),剔除出樣本calmar_df=calmar_df[-(calmar_df["drawdowns"]>=1)]calmar_df.describe()

過去250個交易日,3625個樣本里,收益率中位數(shù)為-6%,75%分位數(shù)為8.8%,最大值253%,最小值為-58.9%,呈現(xiàn)“二八法則”現(xiàn)象,賺錢的個股占少數(shù)。最大回撤最大為67.9%,意味著你買入某只股票一直持有250個交易日,最大可能虧損67.9%,最小虧損是3.08%。下面一起來看下哪些個股近一年的最大回撤在10%以內(nèi)?;旧隙际切┿y行股、還有高速公路等大盤股,這些個股最大回撤低,期間收益率自然也高不起來,畢竟要獲得高的收益就得承受一定的高風(fēng)險。正如佛說,“要想享受魚肉的鮮美,就得接受魚刺的糾纏?!?/p>

calmar_df[calmar_df["drawdowns"]<0.10]

箱線圖顯示,Calmars比率有較多離群值,主要是因為當(dāng)最大回撤很小時,計算得到的比值會比較大。

qs.box(calmar_df)

以區(qū)間累計收益率為y軸,最大回撤為x軸,可以看出二者并非簡單的線性關(guān)系,收益率越高,一般最大回撤也越高,但最大回撤越高的時候,可能收益率越低。由此可見,要想獲得高收益需要承擔(dān)一定的高風(fēng)險,但是承擔(dān)高風(fēng)險不必然帶來高收益。所以遇到虧損死扛并非是一個好的投資決策。

qs.scatter(x="drawdowns",y="rets",data=calmar_df)

以區(qū)間累計收益率為y軸,Calmars為x軸,二者呈現(xiàn)出正向關(guān)系(這是因為計算Calmars比率時收益率為分子)。因此使用Calmar比率可以一定程度上篩選出某期間的強勢股,當(dāng)然該指標(biāo)也有局限性,尤其是當(dāng)期間最大回撤很小時,得到的比率比較大,但不代表該股價格上很強勢。

qs.scatter(x="calmars",y="rets",data=calmar_df)

個股Calmars指標(biāo)排名

下面以20、60、120、200日區(qū)間為例,計算A股的Calmars比率并排序篩選收益率高回撤小的強勢個股,這里相當(dāng)于假設(shè)基金買入持有某只個股,然后對該基金的業(yè)績進行評價。

#計算多個期間序列的kama比率并排序def stock_calmar(data,w_list=[20,60,120,200]):df=data.copy()result=pd.DataFrame()for w in w_list:temp=df[-w:].dropna(axis=1).apply(lambda s:calmar(s))result[str(w)+"日"]=temp.sort_values(ascending=False)[:50].indexreturn resultresult=stock_calmar(prices)result

榜上名單大都是近期漲勢較好的強勢股,根據(jù)動量交易策略(強者恒強),再結(jié)合個股基本面,可以構(gòu)建投資組合。

結(jié)果可視化

下面使用qstock的可視化模塊對部分結(jié)果進行可視化展示。

qs.kline(qs.get_data("世運電路")[-20:])

qs.kline(qs.get_data("奧聯(lián)電子")[-60:])

qs.kline(qs.get_data("惠城環(huán)保")[-120:])

qs.kline(qs.get_data("招商南油")[-200:])

# 強勢股云圖w_data=qs.ret_top_list(result)qs.chart_wordcloud(w_data,title=None)

關(guān)鍵詞:
相關(guān)文章

最近更新
精彩推送
北京擬上調(diào)租房公積金提取上限,多孩家庭可每月按租金全額提取! 2023-03-18 18:11:43