程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

4、Python量化交易-雙均線策略

編輯:Python

目錄

  • 一、數據准備
  • 二、5日均線和30日均線
    • 1 - 均線的概念
    • 2 - 計算5日均線與30日均線
    • 3 - 畫出MA5和MA30
  • 三、金叉和死叉
    • 1 - 金叉和死叉概念
    • 2 - 分析所有金叉日期和死叉日期
  • 四、使用金叉死叉策略回測
    • 1 - 需求分析
    • 2 - 數據處理
    • 3 - 收益回測計算
  • 五、jupyter筆記

一、數據准備

  • 使用tushare包獲取某股票的歷史行情數據:我們已經在3、Python量化交易-股票數據預處理&跌幅買賣收益分析中獲取了股票的歷史數據信息,這裡我們只需要將csv讀取出來即可

二、5日均線和30日均線

1 - 均線的概念

  • 什麼是均線:對於每一個交易日,都可以計算出前N天的移動平均值,然後把這些移動平均值連起來,成為一條線,就叫做N日移動平均線。移動平均線常用線有5天、10天、30天、60天、120天和240天的指標
    • 5天和10天的是短線操作的參照指標,稱做日均線指標;
    • 30天和60天的是中期均線指標,稱做季均線指標;
    • 120天和240天的是長期均線指標,稱做年均線指標
  • 均線計算方法:MA=(C1+C2+C3+…+Cn)/N C:某日收盤價 N:移動平均周期(天數)
  • 均線圖解

2 - 計算5日均線與30日均線

3 - 畫出MA5和MA30


三、金叉和死叉

1 - 金叉和死叉概念

  • 股票分析技術中的金叉和死叉,可以簡單解釋為
    • 分析指標中的兩根線,一根為短時間內的指標線,另一根為較長時間的指標線。
    • 如果短時間的指標線方向拐頭向上,並且穿過了較長時間的指標線,這種狀態叫“金叉”;
    • 如果短時間的指標線方向拐頭向下,並且穿過了較長時間的指標線,這種狀態叫“死叉”;
    • 一般情況下,出現金叉後,操作趨向買入;死叉則趨向賣出。當然,金叉和死叉只是分析指標之一,要和其他很多指標配合使用,才能增加操作的准確性
  • 金叉和死叉圖解

2 - 分析所有金叉日期和死叉日期

  • 切掉無效的數據

  • 金叉與死叉的計算算法



四、使用金叉死叉策略回測

1 - 需求分析

  • 需求:如果我從假如我從2010年1月1日開始,初始資金為100000元,金叉盡量買入,死叉全部賣出,則到今天為止,我的炒股收益率如何?
  • 分析
    • 買賣股票的單價使用開盤價
    • 買賣股票的時機
    • 最終手裡會有剩余的股票沒有賣出去
      • 會有。如果最後一天為金叉,則買入股票。估量剩余股票的價值計算到總收益
        • 剩余股票的單價就是用最後一天的收盤價

2 - 數據處理

  • 1代表金叉,0代表死叉
  • 合並s1和s2,根據日期排序
  • 按需求過濾出2010年到2020的數據

3 - 收益回測計算


五、jupyter筆記

點擊下載jupyter筆記


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved