您現(xiàn)在的位置:程序化交易>> 程序化交易>> 程序化老手>>正文內(nèi)容

Python量化交易線性回歸擬合股價(jià)沉浮[程序化老手]

轉(zhuǎn)自:segmentfault
新年伊始,很榮幸筆者的《教你用 Python 進(jìn)階量化交易》專欄在慕課專欄板塊上線了,歡迎大家訂閱!為了能夠提供給大家更輕松的學(xué)習(xí)過程,筆者在專欄內(nèi)容之外會(huì)陸續(xù)推出一些手記來輔助同學(xué)們學(xué)習(xí)本專欄內(nèi)容,因此同學(xué)們無需擔(dān)心專欄內(nèi)容在學(xué)習(xí)上的困難,更多的是明確自己學(xué)習(xí)的目的即可。當(dāng)然筆者也歡迎同學(xué)們踴躍留言,說出自己想擴(kuò)展的知識(shí)點(diǎn),筆者會(huì)根據(jù)同學(xué)們的意愿選擇性的推出一些內(nèi)容。

本次場外篇筆者在專欄《22、股票交易策略開發(fā):走勢線性回歸選股策略》的基礎(chǔ)上對(duì)線性回歸方法的策略應(yīng)用做進(jìn)一步的擴(kuò)展介紹,同時(shí)會(huì)涉及到多個(gè)小節(jié)的知識(shí)內(nèi)容,大家可以參考專欄內(nèi)容。

這里我們順帶介紹下搭建環(huán)境中可能會(huì)遇到的問題,如果有同學(xué)是用mac系統(tǒng)開發(fā)的,在MAC中調(diào)試matplotlib時(shí)中文顯示框框解決方法:
1、下載simhei.ttf字體庫拷貝至matplotlib字體文件夾(Macintosh HD ? 用戶 ? SHQ ? anaconda3 ? lib ? python3.7 ? site-packages ? matplotlib ? mpl-data ? fonts? ttf)。
2、同樣在matplotlib/mpl-data/fonts目錄下面修改配置文件matplotlibrc?
font.family : sans-serif
font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
axes.unicode_minus:False?
3、在Python中運(yùn)行如下代碼重新加載字體使配置生效:
from matplotlib.font_manager import _rebuild
_rebuild() #reload

言歸正傳,在22小節(jié)中筆者選取了浙大網(wǎng)新、高鴻股份、開山股份、水晶光電四只股票的收盤價(jià)以線性回歸的方式擬合出走勢的角度,從而評(píng)估它們未來的趨勢。

圖片描述

由于線性回歸作用于股票收盤價(jià)的整個(gè)周期,因此選擇合適的時(shí)間段非常重要。比如以高鴻股份為例,以下是它從2018年1月1日至今的走勢圖(參照股票《16、股票交易數(shù)據(jù)可視化:技術(shù)分析常用指標(biāo)繪制》實(shí)現(xiàn))。

圖片描述

從圖中可以看到2018年4月10月是單邊下降趨勢,而從10月份開始轉(zhuǎn)為上升趨勢。那么我們分別對(duì)這兩段周期做線性回歸后發(fā)現(xiàn),單邊下降通道的擬合直線角度為-0.97度,而上升通道擬合直線角度為1.5度,股價(jià)的擬合直線角度從-0.97度至1.5度的轉(zhuǎn)變過程,其實(shí)也是由跌轉(zhuǎn)漲的過程。?

圖片描述

圖片描述

在制定量化交易策略時(shí)有一種方式是尋找現(xiàn)象中的特征,根據(jù)特征去生成交易條件。那么這里給大家一個(gè)衍生的策略思路,既然線性回歸作用于股票收盤價(jià)的整個(gè)周期,前后兩段完全相反的周期會(huì)彼此作用,最終影響擬合的角度值,我們可以設(shè)定窗口期用移動(dòng)窗口的方式擬合股票的走勢。

在22小節(jié)的FactorPickStockAng類中增加一個(gè)方法,代碼如下:

def fit_price(self, symbols, cycle=30, show=True):?        
    for index, stockName in enumerate(symbols.keys()):?            
        #kl_pd = getdata #參考fit_pick()方法,此處略?
        kl_pd.fillna(method='bfill', inplace=True) ?           
        for kl_index in np.arange(0, kl_pd.shape[0]):?                
            if kl_index >= cycle:?                    
                kl_pd.loc[kl_pd.index[kl_index], "ang"], x, reg_y_fit, y_arr = self.calc_regress_deg(kl_pd.Close[kl_index-cycle:kl_index])                 
                print(kl_pd.index[kl_index],kl_pd.iloc[kl_index, kl_pd.columns.get_loc("ang")])?            
        if show:?                
            kl_pd.fillna(method='bfill', inplace=True)    
            plt.plot(np.arange(0, len(kl_pd.index)), kl_pd.ang)?  
     plt.title('compare ang')?        
     plt.legend(symbols.keys(), loc='best')?        
     plt.show()

執(zhí)行該代碼examp_trade.fit_price(pick_stocks)可生成浙大網(wǎng)新、高鴻股份、開山股份、水晶光電四只股票的收盤價(jià)移動(dòng)線性回歸曲線圖,可以發(fā)現(xiàn)角度曲線的拐點(diǎn)預(yù)示開始反轉(zhuǎn)為新一輪的走勢。

圖片描述

在《16、股票交易數(shù)據(jù)可視化:技術(shù)分析常用指標(biāo)繪制》小節(jié)的基礎(chǔ)上把移動(dòng)線性回歸擬合曲線增加到顯示界面中,箭頭所指示的位置作為買賣點(diǎn)目前來看是有一定的盈利特征的,不過此處只是為了擴(kuò)展大家的思路達(dá)到教學(xué)目的而設(shè)定的策略,大家可以在這個(gè)基礎(chǔ)上展開更多股票和周期的回測以驗(yàn)證策略的可靠性。更多的量化交易內(nèi)容歡迎大家訂閱專欄閱讀!!

圖片描述

?

?

 

有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友

可聯(lián)系技術(shù)人員 QQ: 511411198   點(diǎn)擊這里給我發(fā)消息或微信:cxhjy888 進(jìn)行 有償 編寫!不貴!點(diǎn)擊查看價(jià)格!


【字體: 】【打印文章】【查看評(píng)論

相關(guān)文章

    沒有相關(guān)內(nèi)容
主站蜘蛛池模板: 国产偷v国产偷v国产| 奶交性视频欧美| 亚洲av无码久久寂寞少妇| 狠狠干2018| 午夜三级黄色片| 草草影院永久在线观看| 日本高清二三四本2021第九页| 亚洲成年网站在线观看| 西西人体欧美大胆在线| 国产男女免费完整视频| 91chinese在线| 天天干天天插天天射| 一本色道久久综合网| 欧美videosdesexo肥婆| 亚洲精品成人图区| 男女爽爽无遮挡午夜视频在线观看| 另类老妇性BBWBBW| 色综合天天综合网国产成人网| 国产成人久久777777| 99精品国产第一福利网站| 巨大一下一寸挤进校花| 乱人伦老妇女东北| 欧美国产亚洲日韩在线二区| 亚洲福利视频网站| 焰灵姬下面夹得好紧| 免费国产在线观看老王影院| 精品少妇一区二区三区视频| 国产V亚洲V天堂无码网站| 萌白酱在线视频| 国产免费一区二区三区不卡| 麻豆一二三四区乱码| 国产成人综合在线视频| 欧美另类黑人巨大videos| 天天干天天综合| 一个人hd高清在线观看| 强开小婷嫩苞又嫩又紧韩国视频| 中文在线√天堂| 最近中文字幕视频高清| 亚洲人色大成年网站在线观看| 精品人妻少妇一区二区三区在线 | 欧美金发白嫩在线播放|