色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何從MySQL中提取數(shù)據(jù)并增加換手率指標(biāo)進(jìn)行回測(cè)

科技綠洲 ? 來(lái)源:Python實(shí)用寶典 ? 作者:Python實(shí)用寶典 ? 2023-11-02 10:38 ? 次閱讀

事實(shí)上,backtrader雖然沒(méi)有直接提供接口給我們做這樣的優(yōu)化,但是我們可以通過(guò)繼承DataBase基類重寫DataFeed實(shí)現(xiàn)目的。下面就給大家演示一下如何從MySQL中提取數(shù)據(jù)并增加換手率指標(biāo)進(jìn)行回測(cè)。

本文完整源代碼和數(shù)據(jù)均在開源代碼倉(cāng)庫(kù)中:
https://github.com/Ckend/pythondict-quant

1.準(zhǔn)備

開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒(méi)有,請(qǐng)?jiān)L問(wèn)這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.

此外,推薦大家用VSCode編輯器,因?yàn)樗梢栽诰庉嬈飨路降慕K端運(yùn)行命令安裝依賴模塊:Python 編程的最好搭檔—VSCode 詳細(xì)指南

Windows環(huán)境下打開 Cmd (開始-運(yùn)行-CMD),蘋果系統(tǒng)環(huán)境下請(qǐng)打開 Terminal (command+空格輸入Terminal),準(zhǔn)備開始輸入命令安裝依賴。

在終端輸入以下命令安裝我們所需要的依賴模塊:

pip install backtrader
pip install numpy
pip install matplotlib

看到 Successfully installed xxx 則說(shuō)明安裝成功。

2.自定義DataFeed

何為DataFeed?DataFeed 即 backtrader 中的“數(shù)據(jù)源”,任何數(shù)據(jù)進(jìn)入策略回測(cè)前都要通過(guò)DataFeed,而DataFeed中會(huì)對(duì)數(shù)據(jù)進(jìn)行處理,使得策略可以高效地進(jìn)行計(jì)算。

我們今天要做的,就是增加一個(gè)基于MySQL的DataFeed,使得整個(gè)流程變得更加自動(dòng)化。

首先,需要定義一個(gè)類,使其繼承與backtrader的數(shù)據(jù)基類 DataBase:

from backtrader.feed import DataBase
from backtrader import date2num


class MySQLData(DataBase):
  pass

如果需要從外部傳入所需股票數(shù)據(jù)的代碼和其一定范圍內(nèi)的K線數(shù)據(jù),需要提前定義params. 此外,如果你有除了:datetime(時(shí)間)、open(開盤價(jià))、close(收盤價(jià))、high(最高價(jià))、low(最低價(jià))、volume(成交量) 之外的指標(biāo)。需要提前定義lines,如下所示:

圖片

從上圖可見,在lines中我增加了兩個(gè)自定義指標(biāo):turnover(成交額) 和 turnover_rate(換手率)。

接下來(lái),編寫一個(gè)函數(shù)根據(jù)params參數(shù)從MySQL中獲取數(shù)據(jù):

圖片

代碼本身沒(méi)有什么可說(shuō)的,記得替換你本地的mysql配置,值得注意的是最后一行,拿到mysql數(shù)據(jù)后需要轉(zhuǎn)化為迭代器。

在類初始化的時(shí)候,需要定義相關(guān)的數(shù)據(jù)存放變量并調(diào)用上述函數(shù)獲取數(shù)據(jù):

圖片

接下來(lái)到了關(guān)鍵的步驟,在調(diào)用回測(cè)策略前,cerebro會(huì)遍歷Datafeed的所有數(shù)據(jù),此時(shí)會(huì)調(diào)用_load函數(shù), 因此我們需要在這里,將數(shù)據(jù)庫(kù)中提取的每列數(shù)據(jù)對(duì)應(yīng)到lines上:

圖片

如果你完整地看完了我的上述分析,那么理解下面整個(gè)DataFeed,甚至自己寫一個(gè)DataFeed,是非常容易的。

圖片

3.使用自定義數(shù)據(jù)流進(jìn)行回測(cè)

接下來(lái),讓我們嘗試使用這個(gè)自定義數(shù)據(jù)流輸入數(shù)據(jù),采用第二章的macd策略輔助增加換手率指標(biāo)進(jìn)行回測(cè)。

這里當(dāng)然需要你先讀懂第二章的內(nèi)容,如果有點(diǎn)忘記了,可以回頭閱讀一下,非常簡(jiǎn)單:

Python 量化投資實(shí)戰(zhàn)教程(2) —MACD策略

首先,在回測(cè)模塊及next函數(shù)中,引入換手率指標(biāo):

圖片

next函數(shù)買入時(shí)增加判斷換手率必須小于3%的條件:

圖片

最后,引入我們剛剛編寫完成的MySQLData Feed,傳入相關(guān)參數(shù)讀取股票為603520.SH的數(shù)據(jù)流,取2017年1月1日至2020年4月12日的數(shù)據(jù),并調(diào)用回測(cè)函數(shù):

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8650

    瀏覽量

    151443
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7085

    瀏覽量

    89241
  • 終端
    +關(guān)注

    關(guān)注

    1

    文章

    1145

    瀏覽量

    29929
  • database
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    10816
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    817

    瀏覽量

    26637
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如果采集的數(shù)據(jù)中提取一個(gè)完整的脈沖數(shù)據(jù)

    本帖最后由 eehome 于 2013-1-5 09:43 編輯 由于我不是學(xué)信號(hào)出生的,現(xiàn)在有一個(gè)難題請(qǐng)大家?guī)兔Γx謝了!從一個(gè)100M的采集卡中采集到的數(shù)據(jù)存放到TDMS文件中,如何從這些數(shù)據(jù)中提取區(qū)分出一個(gè)個(gè)完整的脈
    發(fā)表于 12-23 11:24

    怎么EXA中提取IQ數(shù)據(jù)進(jìn)行后期處理

    我正試圖EXA中提取IQ數(shù)據(jù)進(jìn)行后期處理。我設(shè)法捕獲了I / Q樣本并將它們轉(zhuǎn)儲(chǔ)到一個(gè)文件中(附帶示例),但有兩個(gè)問(wèn)題:1 - IQ Analyzer文檔中似乎沒(méi)有描述文件格式(ht
    發(fā)表于 03-05 16:41

    怎么繪圖或變換中提取特定數(shù)據(jù)點(diǎn)

    嗨,大家好,我想在劇情或轉(zhuǎn)換中有一套iccap數(shù)據(jù)。我想自動(dòng)提取數(shù)據(jù)的特定點(diǎn)分別存儲(chǔ)值。是否有任何內(nèi)部函數(shù)直接提取
    發(fā)表于 08-14 08:44

    怎么DHT11溫度傳感器中提取數(shù)據(jù)

    嘿,伙計(jì)們,我試圖DHT11溫度傳感器中提取數(shù)據(jù)。你能告訴我是否存在一個(gè)示例項(xiàng)目或一個(gè)圖書館?試著自己寫還沒(méi)有成功…
    發(fā)表于 09-12 06:16

    如何特征值中提取兩個(gè)字節(jié)?

    請(qǐng)求時(shí),很容易WReqq=(CyLay-GATSSAWReqEyReqqPARAMYT**)事件PARAMARM中提取值,其值如下:LILUNIT8值=WReq-& Gt;但這不
    發(fā)表于 10-15 13:24

    如何以編程方式STL庫(kù)中提取版本信息?

    我們正在將 STL 庫(kù)集成到需要 IEC 61508 安全完整性級(jí)別 2 (SIL2) 的項(xiàng)目環(huán)境中。我們?nèi)绾我跃幊谭绞?b class='flag-5'>從 STL 庫(kù)中提取版本信息?API 沒(méi)有顯示任何相關(guān)信息。另外,我們要使用的最新版本是什么?
    發(fā)表于 12-30 08:18

    如何通過(guò)M480系列的PDMAA步態(tài)模式RGB顏色陣列中提取

    應(yīng)用程序: 以 PDMA 向下模式 RGB 顏色陣列中提取紅色、 綠色 和 藍(lán)色 數(shù)據(jù) 。 BSP 版本: M480系列 BSP CMSIS V3.04.000 硬件
    發(fā)表于 08-22 08:23

    JAVA教程之壓縮包中提取文件

    JAVA教程之壓縮包中提取文件,很好的JAVA的資料,快來(lái)學(xué)習(xí)吧
    發(fā)表于 04-11 17:28 ?3次下載

    如何HTML或XML文件中提取數(shù)據(jù)的Python爬蟲庫(kù)Beautiful Soup概述

    Beautiful Soup是一個(gè)可以HTML或XML文件中提取數(shù)據(jù)的Python庫(kù),簡(jiǎn)單來(lái)說(shuō),它能將HTML的標(biāo)簽文件解析成樹形結(jié)構(gòu),然后方便地獲取到指定標(biāo)簽的對(duì)應(yīng)屬性。
    的頭像 發(fā)表于 07-29 09:56 ?2.6w次閱讀

    新加坡研發(fā)空氣中提取水的氣凝膠

    新加坡國(guó)立大學(xué)的研究人員創(chuàng)造了一種新的物質(zhì),能夠在不需要外部動(dòng)力的情況下空氣中提取水。這種物質(zhì)是一種氣凝膠,可用于為生活在難以找到清潔飲用水的環(huán)境中的人們制造飲用水。氣凝膠是一種固體材料,重量特別輕。
    的頭像 發(fā)表于 01-21 14:47 ?2080次閱讀

    IPM如何可用的IGBT器件中提取最佳性能?

    和欠壓檢測(cè)是IPM中常見的三種自保護(hù)功能。在本文中,我們將研究該技術(shù)的一些基本概念,了解IPM如何可用的IGBT器件中提取最佳性能。 功率BJT,MOSFET和IGBT 功率BJT具有理想的導(dǎo)通狀態(tài)傳導(dǎo)性能;但是,它們是電流
    的頭像 發(fā)表于 02-01 16:04 ?3750次閱讀
    IPM如何<b class='flag-5'>從</b>可用的IGBT器件<b class='flag-5'>中提取</b>最佳性能?

    MySQL端口可以MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)和檢索數(shù)據(jù)

    使用選定的表和列生成一個(gè)XML架構(gòu)結(jié)構(gòu)。 生成輸入映射后,當(dāng)端口接收到與輸入映射的XML結(jié)構(gòu)匹配的XML文件時(shí),它將自動(dòng)將數(shù)據(jù)插入數(shù)據(jù)庫(kù)。生成輸出映射后,端口將從數(shù)據(jù)庫(kù)中提取
    的頭像 發(fā)表于 02-15 14:07 ?1688次閱讀

    如何使用OpenCV和Python圖像中提取感興趣區(qū)域

    今天我們將一起探究如何使用OpenCV和Python圖像中提取感興趣區(qū)域(ROI)。 在之間的文章中,我們完成了圖像邊緣提取,例如從臺(tái)球桌中提取桌邊。使用了簡(jiǎn)單的OpenC
    的頭像 發(fā)表于 02-07 14:42 ?1862次閱讀

    光體積圖中提取呼吸速率的信號(hào)處理技術(shù)的比較

    電子發(fā)燒友網(wǎng)站提供《光體積圖中提取呼吸速率的信號(hào)處理技術(shù)的比較.pdf》資料免費(fèi)下載
    發(fā)表于 06-12 09:20 ?0次下載

    OST中提取郵箱數(shù)據(jù)和重置丟失的WindowsServer 密碼的工具

    ? ?還原Exchange數(shù)據(jù)庫(kù) MVP 和 IT 管理員強(qiáng)烈推薦的 5 合 1 專用工具套件,用于修復(fù)損壞的 EDB 、備份中提取郵箱以及將 Exchange 數(shù)據(jù)庫(kù) (EDB)
    的頭像 發(fā)表于 06-24 11:58 ?1244次閱讀
    OST<b class='flag-5'>中提取</b>郵箱<b class='flag-5'>數(shù)據(jù)</b>和重置丟失的WindowsServer 密碼的工具
    主站蜘蛛池模板: 亚洲人成网站在线播放| 伦理电影2499伦理片| 国产成人精品久久一区二区三区| 国拍自产精品福利区| 青柠电影高清在线观看| 小小水蜜桃视频高清在线播放| 2020精品极品国产色在线| 国产成人在线小视频| 久久视频这里只精品6国产| 天天噜日日噜夜夜噜| 99久久99久久精品国产片果冻| 国产一区二区三区四区五在线观看| 欧美午夜精品一区区电影| 亚洲手机在线人成视频| 国产69精品9999XXXX| 男人的天堂黄色片| 伊人yinren6综合网色狠狠 | 99日韩精品| 久久国产加勒比精品无码| 亚洲国产精品久久无套麻豆| 国产超碰精久久久久久无码AV| 欧美s00老人| 伊人青青操| 韩国女人高潮嗷嗷叫视频| 同桌上课把奶露出来给我玩| 扒开美女下面粉嫩粉嫩冒白浆| 巨污全肉np一女多男| 亚洲无吗在线视频| 国产毛多水多高潮高清| 首页_亚洲AV色老汉影院| HEYZO无码中文字幕人妻| 免费国产综合视频在线看| 中文字幕亚洲无限码| 九九久久国产精品免费热6| 亚洲欧美综合中文字幕| 花蝴蝶高清观看免费| 亚洲一区精品在线| 久久精品国产亚洲AV影院| 在线观看亚洲 日韩 国产| 久久精品国产亚洲AV热无遮挡| 亚洲永久精品ww47app|