久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

《Python股票量化交易從入門到實踐》隨書贈送“回測框架”的使用幫助

 追夢文庫 2022-02-28

贈送“回測框架”的目的

為了幫助讀者再建立一座從書本知識到實戰(zhàn)應用之間的“橋梁”,,贈送一個回測小工具,。

由書中知識點組合而成,,實現(xiàn)了包括選股,、行情,、回測三個功能,。額外使用wxPython封裝一層GUI便于操作,。
在這里插入圖片描述
提供給大家一種“量化交易”為我所用的思路,。大家可以以此為基礎去搭建適合自己的系統(tǒng),!

回測框架效果展示

回測框架的功能,,其實是我自己設定了一個炒股的場景。

我們根據(jù)上市公司的一些財務指標,,去過濾出我們心儀的股票加入我們的股票池,,然后查看股票的行情走勢,選出走勢較好的幾只股,,再制定一個擇時策略,,對這幾只股票進行回測,評估擇時策略的效果,。

  • 條件選股界面

我們把全市場股票的部分財務數(shù)據(jù)(市盈率,、市值、換手率之類的)整合成了一張表,,然后通過條件選取過濾出符合要求的股票,,點擊保存結果后就可以更新到自選股票池中。大家也可以重構這張表,,把平時關系的一些財務指標加進來,。
在這里插入圖片描述

  • 行情分析界面

我們可以點擊股票池 顯示行情走勢,行情參數(shù)包括行情起始時間,、周期,、前復權、后復權,、不復權,。也可以4幅子圖同時比較行情走勢。
在這里插入圖片描述
在這里插入圖片描述

  • 回測評估界面

策略池中注冊策略,選擇回測參數(shù),,比如初始資金,、交易規(guī)模、滑點,、手續(xù)費,、印花稅之類,,點擊開始回測,,主界面可視化回測指標,比如風險和收益,,日志中會有更具體的回測結果,,比如交易明細、回測幅度,、收益率等,。
在這里插入圖片描述

我錄制了一個操作視頻,大家可以看一下:點擊跳轉嗶哩嗶哩

回測框架文件功能概述

回測工具的下載位置

在群文件夾中下載一個名稱“QuantTradeYx_System-v03”的壓縮包,。

【該版本為V1.0,,是隨書贈送的。目前有升級的V2.0:可以點擊跳轉查看

文件包括:

  1. stock_self_pool.json:存儲股票池,,可參考書中《7.4 注冊 JSON 格式自選股票池》的實現(xiàn),。
  2. firm_para.json:行情顯示頁面配置參數(shù),可參考書中《8.5 自定義顯示界面框架開發(fā)》
  3. back_para.json:回測顯示頁面配置參數(shù),,可參考書中《9.1 建立多維度的度量體系》
  4. logtrade.txt:存儲回測結果的日志文件,,可參考書中《9.1 建立多維度的度量體系》
  5. token.txt:存儲tushare pro的token碼,手動把注冊的token碼存文件中

token碼是從tushare官網獲取,,使用tushare的接口有積分要求

  1. QTYX_ApiData.py:API數(shù)據(jù)獲取接口文件,,參考《7.1 如何獲取股票行情數(shù)據(jù)》
  2. QTYX_ElementGui.py:GUI相關的定制類 QTYX_MainGui.py:GUI主界面,也是main啟動文件
  3. QTYX_MultiGraphs.py:行情顯示/回測顯示接口,,可參考書中《8.1 定制可視化接口 》《9.1 建立多維度的度量體系》和《8.5 自定義顯示界面框架開發(fā)》
  4. QTYX_StrategyGath.py:策略文件
  5. QTYX_SysFile.py:文件的讀取和存儲接口

運行條件:

必看本文“安裝環(huán)境”和“常見問題解決”的內容,,可以少走很多彎路。

安裝環(huán)境

移植程序前,,按書中“2.1 快速部署 Python 開發(fā)環(huán)境”節(jié)內容安裝開發(fā)環(huán)境,。
新手讀者建議和書中的Python版本保持一致。
Python3.7
wxpython 4.0.4
mpl_finance 0.10.0
TA-Lib 0.4.17
numpy 1.15.1
pandas 0.23.4
pandas-datareader 0.7.0
matplotlib 3.1.1
tushare 1.2.51
baostock 0.8.8
statsmodels 0.9.0

注意事項:

  1. 需要額外安裝GUI庫wxPython(Win7環(huán)境下安裝wxpython4.0.4,,原因見“常見問題解決”),。

  2. 書中安裝部署anaconda和pycharm過程是以macos為例,對于Windows用戶可以結合這篇文章參考點擊跳轉鏈接,。

  3. 安裝完成后啟動主文件QTYX_MainGui.py

  4. TA-Lib安裝會麻煩點,。具體安裝步驟可參考 https://github.com/mrjbq7/ta-lib 網站上介紹。

    Mac用戶可按照書中的過程一步步來即可!??!
    Windows用戶參考下群里朋友的過程:前往“Python擴展包的非官方Windows二進制文件”,找到對應的wrapper
    在這里插入圖片描述
    選擇TA_Lib-0.4.17-cp37-cp37m-win_amd64.whl(win系統(tǒng)64位,,python3.7版本,,根據(jù)自己系統(tǒng)和python版本選擇相應的安裝包),將下載包放在當前工作路徑中,,然后在Anaconda Prompt(或windows的cmd)里面輸入命令:pip install TA_Lib-0.4.17-cp27-cp27m-win_amd64.whl,。

常見問題解決

1. 提示以下錯誤:

在這里插入圖片描述
主要出現(xiàn)在windows環(huán)境下,原因是讀寫的文件要指定編碼格式’utf-8’,。我是在macos系統(tǒng)上調的,,不需要指定編碼格式,采用默認的即可,。
已在QuantTradeYx_System-v02工程的QTYX_SysFile.py中更改,。

with open(filename, 'r', encoding='utf-8') as load_f:
2. 提示以下錯誤:

在這里插入圖片描述
mpl_finance庫用于畫K線,可指定書中版本安裝,。

首先刪除當前版本 pip uninstall mpl_finance 或者pip uninstall mplfinance

然后指定版本安裝pip install mpl_finance==0.10.0,,這樣避免更多的問題排查。

當然,,有能力的朋友可以移植成mplfinance,,參考這篇內容:mpl_finance升級至mplfinance!基于股票量化分析工具V2.06的改動,!,。

3. 提示以下錯誤:在這里插入圖片描述

在這里插入圖片描述

在win7環(huán)境下wxpython 4.1.0版本和baostock 0.8.8 一同使用時,在baostock的history.py文件的以下代碼中報錯:
在這里插入圖片描述
經測試可以使用wxpython4.0.4版本和baostock 0.8.8共同使用,。不過wxpython4.0.4在win7下會出現(xiàn)以下問題:

You probably called setlocale() directly instead of using wxLocale and
now there is a mismatch between C/C++ and Windows locale.

解決方法在MainGui文件中添加語句self.locale = wx.Locale(wx.LANGUAGE_ENGLISH),,如下所示:

def OnInit(self):
    self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)
    self.frame = MainFrame()
    self.frame.Show()
    self.frame.Center()
    self.SetTopWindow(self.frame)
    return True

win10環(huán)境下baostock 0.8.8和wxPython4.1.1 不存在兼容性問題。

也有讀者反映以下信息,,僅供參考:
在這里插入圖片描述
總之建議的版本搭配為:
Python3.8+wxpython4.1.1+baostock 0.8.8 + 去掉 self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)
Python3.7+wxpython4.0.4+baostock 0.8.8 win10/win7 維持代碼語句 self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)

4. 提示以下錯誤:

在這里插入圖片描述
原因為tushare的積分不足,,程序中使用了pro.daily_basic()接口,大家可前往官網查看積分獲取規(guī)則,。

如不介意可使用org的一個接口作為選股數(shù)據(jù)(速度有點慢,,也并不穩(wěn)定),僅需在MainGui文件中更改一行代碼即可:

# 組合加入tushare數(shù)據(jù)
self.ts_data = Tsorg_Backend()

當然,,大家消化代碼之后可以把自己選股的數(shù)據(jù)替換到工具中,。

5. 提示以下錯誤:

win7上“回測結果”顯示為空
在這里插入圖片描述
提示編碼格式錯誤:
在這里插入圖片描述
logtrade.txt文件編碼變?yōu)锳NSI。同時QTYX_SysFile.py 中 open 中把encoding 去掉,?;販y可以正常顯示,。

6. 提示以下錯誤:

在這里插入圖片描述
如果界面顯示比例有問題,需要設置下界面尺寸或者比例參數(shù)以適應你的屏幕,。

## QTYX_MainGui.py相關代碼:
class MainFrame(wx.Frame):

    def __init__(self):

        # hack to help on dual-screen, need something better XXX - idfah
        displaySize = wx.DisplaySize()  # (1920, 1080)
        displaySize = 0.85 * displaySize[0], 0.75 * displaySize[1]

        # call base class constructor
        wx.Frame.__init__(self, parent=None, title=u'量化軟件', size=displaySize,
                          style=wx.DEFAULT_FRAME_STYLE ^ wx.MAXIMIZE_BOX)  # size=(1000,600)
##QTYX_ElementGui.py相關代碼:
class StockPanel(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent=parent, id=-1)

        # 分割子圖實現(xiàn)代碼
        self.figure = Figure(figsize=(8, 5)) ## figsize就是改它?。?!

最最最重要的是 點擊相應按鈕才有圖像出現(xiàn),!

搭建系統(tǒng)升級

我在知識星球《玩轉股票量化交易》中又新增了回測框架的一些功能。感興趣的讀者可以加入星球獲取,。

【2-1 搭建系統(tǒng)|比Matplotlib更好用的pyecharts打造GUI股票行情分析界面】
在這里插入圖片描述在這里插入圖片描述
【2-4 搭建系統(tǒng)|行情軟件可沒有,!多股票投資組合用的GUI分析界面-附代碼】
在這里插入圖片描述
【2-5 搭建系統(tǒng)|多維度下不同股票|周期|除權|復權走勢對比界面-附代碼】
在這里插入圖片描述
【2-17 搭建系統(tǒng)|升級選股工具,使用同花順F10查看上市公司基本概況,!-附代碼】在這里插入圖片描述
【2-18 搭建系統(tǒng)|本地量化工具集成開源量化框架backtrader操作指南,!-附代碼】
在這里插入圖片描述
【2-19 搭建系統(tǒng)|繼承backtrader的本地量化回測平臺如何玩轉多股輪動策略,!-附代碼】
在這里插入圖片描述
更多更高階的量化學習內容可以查看這篇目錄介紹:

書籍《Python股票量化交易從入門到實踐》升級學習——《玩轉股票量化交易》

參考資料

很多讀者反饋wxPython相關的資料太匱乏了,,這里分享兩個鏈接。

wxpython官網使用文檔
專欄-如何用wxPython搭建Python量化交易GUI

讀者群動態(tài)

在移植回測框架的過程中所出現(xiàn)的問題,,主要集中在搭建環(huán)境這個環(huán)節(jié),,比如第三方庫的版本、Anaconda和Pycharm的安裝等等,,總體來說大伙的移植都算比較順利,,沒什么難度的。

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

    本站是提供個人知識管理的網絡存儲空間,,所有內容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內容中的聯(lián)系方式,、誘導購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,,請點擊一鍵舉報,。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多