本文目錄一覽:
- 1、如何利用Python預測股票價格
- 2、怎麼用python計算股票
- 3、釘釘怎樣查看公司股票
- 4、如何選取過去每個月股票的市值 python
- 5、如何用python計算某支股票持有90天的收益率
- 6、python的量化代碼怎麼用到股市中
如何利用Python預測股票價格
預測股票價格沒有意義。
單支股票價格,多股組合,大盤這些都可以使用神經網絡來學習,02年就做過了,漲跌預測平均能達到54%到57%的準確率,但是只能定性,無法定量,因此,在扣除印花稅之後無利可圖。
純粹使用股票交易數據來預測並保證總體獲利不是程序能辦到的,人也辦不到。
目前世界上最先進的炒股機器也只能利用網絡時差那微不可計的零點幾秒在歐洲與美國證券間倒來倒去,那套系統研發費用數千萬,硬件(主要是獨立光纜)費用以億計。
怎麼用python計算股票
作為一個python新手,在學習中遇到很多問題,要善於運用各種方法。今天,在學習中,碰到了如何通過收盤價計算股票的漲跌幅。
第一種:
讀取數據並建立函數:
import numpy as np
import matplotlib.pyplot as plt
from scipy.interpolate import spline
from pylab import *
import pandas as pd
from pandas import Series
a=pd.read_csv(‘d:///1.csv’,sep=’,’)#文件位置
t=a[‘close’]
def f(t):
s=[]
for i in range(1,len(t)):
if i==1:
continue
else:
s.append((t[i]-t[i-1])/t[i]*100)
print s
plot(s)
plt.show()
f(t)
第二種:
利用pandas裡面的方法:
import pandas as pd
a=pd.read_csv(‘d:///1.csv’)
rets = a[‘close’].pct_change() * 100
print rets
第三種:
close=a[‘close’]
rets=close/close.shift(1)-1
print rets
總結:python是一種非常好的編程語言,一般而言,我們可以運用構建相關函數來實現自己的思想,但是,眾所周知,python中裡面的有很多科學計算包,裡面有很多方法可以快速解決計算的需要,如上面提到的pandas中的pct_change()。因此在平時的使用中應當學會尋找更好的方法,提高運算速度。
釘釘怎樣查看公司股票
藉助python的強大功能,把提前設置好的股票信息推送到釘釘上。
首先通過接口獲取股市實時信息,通過python的requests模塊可以獲取實時信息。
之後設置計算股票漲跌幅,並判斷是否需要報警,運算出結果發送到釘釘,最後給釘釘群添加機器人,報警信息就是由機器人發送到釘釘上,你就可以實時看到了。
如何選取過去每個月股票的市值 python
類似,可以修改一下
股票漲跌幅數據是量化投資學習的基本數據資料之一,下面以python代碼編程為工具,獲得所需要的歷史數據。主要步驟有:
(1) #按照市值從小到大的順序活得N支股票的代碼;
(2) #分別對這一百隻股票進行100支股票操作;
(3) #獲取從2016.05.01到2016.11.17的漲跌幅數據;
(4) #選取記錄大於40個的數據,去除次新股;
(5) #將文件名名為“股票代碼.csv”。
具體代碼如下:
# -*- coding: utf-8 -*-
“””
Created on Thu Nov 17 23:04:33 2016
獲取股票的歷史漲跌幅,並分別存為csv格式
@author: yehxqq151376026
“””
import numpy as np
import pandas as pd
#按照市值從小到大的順序活得100支股票的代碼
df = get_fundamentals(
query(fundamentals.eod_derivative_indicator.market_cap)
.order_by(fundamentals.eod_derivative_indicator.market_cap.asc())
.limit(100),’2016-11-17′, ‘1y’
)
#分別對這一百隻股票進行100支股票操作
#獲取從2016.05.01到2016.11.17的漲跌幅數據
#選取記錄大於40個的數據,去除次新股
#將文件名名為“股票代碼.csv”
for stock in range(100):
priceChangeRate = get_price_change_rate(df[‘market_cap’].columns[stock], ‘20160501’, ‘20161117’)
if priceChangeRate is None:
openDays = 0
else:
openDays = len(priceChangeRate)
if openDays 40:
tempPrice = priceChangeRate[39:(openDays – 1)]
for rate in range(len(tempPrice)):
tempPrice[rate] = “%.3f” %tempPrice[rate]
fileName = ”
fileName = fileName.join(df[‘market_cap’].columns[i].split(‘.’)) + ‘.csv’
fileName
tempPrice.to_csv(fileName)
如何用python計算某支股票持有90天的收益率
首先你要先獲得這支股票90天的數據,可以存在一個arry中。
然後計算收益率 r = (arry[89]-arry[0])/arry[0],如果要計算任意連續90天的話只要循環就可以了。
許多人更喜歡去做短線,因為短線刺激,無法承受長線持股待漲的煎熬,可是假如不會做短線,則可能會導致虧得更快。做T的秘籍大家一定很想知道,今天就給大家講講。
我準備了好處給大家,機構精選的牛股大盤點!希望大家不要錯過–速領!今日機構牛股名單新鮮出爐!
一、股票做T是什麼意思
現在市場上,A股的交易市場模式是T+1,意思就是今天買的股票,只有明天才能賣出。
而股票做T,當天買入的股票在當天賣出,這就是股票進行T+0的交易操作,投資人在可交易的一天通過股票的漲幅和跌停有了股票差價,在股票大幅下跌時趕緊買入,漲得差不多之後再將買入的部分賣出,就是用這種方法賺錢的。
假如說,在昨天我手裡還有1000股的xx股票,市價10元/股。今天一大早發現該股居然跌到了9.5元/股,然後趁機買入了1000股。結果到了下午時,這隻股票的價格就突然間大幅上漲到一股10.5元,我就急忙地以10.5/股的價格售出1000股,然後獲取(10.5-9.5)×1000=1000元的差價,這就是做T。
但是,不是每種股票做T都合適!正常來說,那些日內振幅空間較大的股票,它們是適合去做T的,比如說,每日能有5%的振幅空間。想知道某隻股票適不適合的,點開這裡去看一下吧,專業的人員會為你估計挑選出最適合你的T股票!【免費】測一測你的股票到底好不好?
二、股票做T怎麼操作
怎麼才能夠把股票做到T?正常情況下分為兩種方式,分別為正T和倒T。
正T即先買後賣,投資手裡,手裡面賺有這款股票,在當天股票開盤的時候下跌到了最低點時,投資者買入1000股,等到股票變高的時候在高點,將這1000股徹底賣出,持有的總股票數還是跟以前一樣,T+0的效果這樣就能夠達到了,又能夠享有中間賺取的差價。
而倒T即先賣後買。投資者通過嚴密計算得出,股票存在下降風險,因此在高位點先賣出手中的一部分股票,接着等股價回落後再去買進,總量仍舊有辦法保持不變,然而,收益是會產生的。
比方投資者,他佔有該股2000股,而10元/股是當天早上的市場價,覺得持有的股票在短時間內就會有所調整,,於是賣出手中的1500股,等股票跌到一股只需要9.5元時,這隻股票差不多就已經能讓他們感到滿意了,再買入1500股,這就賺取了(10-9.5)×1500=750元的差價。
這時有人就問了,那要如何知道買入的時候正好是低點,賣出的時候正好是高點?
其實有一款買賣點捕捉神器,它能夠判斷股票的變化趨勢,絕對能讓你每次都抓住重點,點開鏈接就能立刻領取到了:【智能AI助攻】一鍵獲取買賣機會
應答時間:2021-09-23,最新業務變化以文中鏈接內展示的數據為準,請點擊查看
python的量化代碼怎麼用到股市中
2010 ~ 2017 滬深A股各行業量化分析
在開始各行業的量化分析之前,我們需要先弄清楚兩個問題:
第一,A股市場上都有哪些行業;
第二,各行業自2010年以來的營收、凈利潤增速表現如何?
第一個問題
很好回答,我們使用JQData提供的獲取行業成分股的方法,輸入get_industries(name=’sw_l1′)
得到申萬一級行業分類結果如下:它們分別是:【農林牧漁、採掘、化工、鋼鐵、有色金屬、電子、家用電器、食品飲料、紡織服裝、輕工製造、醫藥生物、公用事業、交通運輸、房地產、商業貿易、休閑服務、綜合、建築材料、建築裝飾、電器設備、國防軍工、計算機、傳媒、通信、銀行、非銀金融、汽車、機械設備】共計28個行業。
第二個問題
要知道各行業自2010年以來的營收、凈利潤增速表現,我們首先需要知道各行業在各個年度都有哪些成分股,然後加總該行業在該年度各成分股的總營收和凈利潤,就能得到整個行業在該年度的總營收和總利潤了。這部分數據JQData也為我們提供了方便的接口:通過調用get_industry_stocks(industry_code=‘行業編碼’, date=‘統計日期’),獲取申萬一級行業指定日期下的行業成分股列表,然後再調用查詢財務的數據接口:get_fundamentals(query_object=‘query_object’, statDate=year)來獲取各個成分股在對應年度的總營收和凈利潤,最後通過加總得到整個行業的總營收和總利潤。這裡為了避免非經常性損益的影響,我們對凈利潤指標最終選取的扣除非經常性損益的凈利潤數據。
我們已經獲取到想要的行業數據了。接下來,我們需要進一步分析,這些行業都有什麼樣的增長特徵。
我們發現,在28個申萬一級行業中,有18個行業自2010年以來在總營收方面保持了持續穩定的增長。它們分別是:【農林牧漁,電子,食品飲料,紡織服裝,輕工製造,醫藥生物,公用事業,交通運輸,房地產,休閑服務,建築裝飾,電氣設備,國防軍工,計算機,傳媒,通信,銀行,汽車】;其他行業在該時間範圍內出現了不同程度的負增長。
那麼,自2010年以來凈利潤保持持續增長的行業又會是哪些呢?結果是只有5個行業保持了基業長青,他們分別是醫藥生物,建築裝飾,電氣設備,銀行和汽車。(註:由於申萬行業在2014年發生過一次大的調整,建築裝飾,電氣設備,銀行和汽車實際從2014年才開始統計。)
從上面的分析結果可以看到,真正能夠保持持續穩定增長的行業並不多,如果以扣非凈利潤為標準,那麼只有醫藥生物,建築裝飾,電氣設備,銀行和汽車這五個行業可以稱之為優質行業,實際投資中,就可以只從這幾個行業中去投資。這樣做的目的是,一方面,能夠從行業大格局層面避免行業下行的風險,繞開一個可能出現負增長的的行業,從而降低投資的風險;另一方面,也大大縮短了我們的投資範圍,讓投資者能夠專註於從真正好的行業去挑選公司進行投資。
「2010-2017」投資於優質行業龍頭的收益表現
選好行業之後,下面進入選公司環節。我們知道,即便是一個好的行業也仍然存在表現不好的公司,那麼什麼是好的公司呢,本文試圖從營業收入規模和利潤規模和來考察以上五個基業長青的行業,從它們中去篩選公司作為投資標的。
3.1按營業收入規模構建的行業龍頭投資組合
首先,我們按照營業收入規模,篩選出以上5個行業【醫藥生物,建築裝飾,電氣設備,銀行和汽車】從2010年至今的行業龍頭如下表所示:
可以看到,雖然時間跨度很長,但是在這5個行業中,營收規模大的公司始終處於領先地位。它們分別是【上海醫藥,中國建築,上海電氣,工商銀行,上汽集團】。
由於各年度上市公司年報的公布截止日是4月30日,待所有上市公司年報公布後,確定行業龍頭,然後將這些行業龍頭構建成一個投資組合。那麼,持有投資組合的收益表現如何呢?為了保證投資時間的一致性,我們假設從2015年4月30號之後的第一個交易日開始投資,本金是100萬,每個標的投資權重相同,都是20%,並且忽略交易成本,那麼持有該組合至2018年4月30號的投資收益是多少呢?
我們利用JQData提供的獲取行情接口get_price(security=’股票代碼’, start_date=’開始交易日’, end_date=’投資截止日’, frequency=’daily’, fields=None, skip_paused=False, fq=’pre’),分別獲取組合中各個公司在各年度開始交易日和投資截止日(4.30之後的第一個交易日)的價格,得到最終的投資結果如下圖所示:
可以看到,除了2015.5.4-2016.5.3股災期間,該組合投資收益率和上證指數、滬深300指數有一個同步的大幅下跌外,從2016.5.3至2018年5.2,改組合連續兩年獲得了正收益,並在2016年大幅跑贏另外兩個基準指數20%以上。
聰明的讀者一定會問這樣一個問題,如果我從2018年5月2號開始,投資100萬買入這樣一個按營收規模衡量的行業龍頭組合,至2018年5月30號,收益表現會如何呢?答案是【3.04%】,而同期上證指數收益率和滬深300收益率分別是【-0.20%】和【-0.39%】,可以說表現非常之好了。具體收益如下表所示:
3.2按扣非凈利潤規模構建的行業龍頭投資組合
如果我們按照扣除非經常性損益的凈利潤來衡量,以上5個行業從2010年至今的行業龍頭又會是哪些呢,我們查出來如下表所示:
可以看到,按照扣非凈利潤來構建投資組合,醫藥生物和電氣設備兩個行業分別發生了行業龍頭的更替,如果要構建基於扣非凈利潤的投資組合,那麼我們就需要每年去調整我們的組合標的以保證組合中都是上一年度的行業龍頭。和上述投資回測方式一樣,我們從2015年5月4號買入這樣一個組合,並在之後每年4月30號之後的第一個交易日調整組合中的行業龍頭標的,最終的投資結果如下表所示:
可以看到,即使是2015.4.30-2016.5.3股災期間,該組合也跑贏上證指數和滬深300指數3%左右;而2016.5.3至2018年5.2期間更是大幅跑贏兩個基準指數高達30%以上。
同樣的,如果從2018年5月2號開始,投資100萬買入這樣一個按扣非凈利潤規模衡量的行業龍頭組合,至2018年5月30號,收益表現會如何呢?答案是【2.83%】,對比同期上證指數收益率和滬深300指數的【-0.20%】和【-0.39%】,仍然維持了非常良好的表現。具體收益如下表所示:
結論
通過以上行業分析和投資組合的歷史回測可以看到:
先選行業,再選公司,即使是從2015年股災期間開始投資,至2018年5月1號,仍然能夠獲得相對理想的收益,可以說,紅杉資本的賽道投資法則對於一般投資者還是比較靠譜的。
在構建行業龍頭投資組合時,凈利潤指標顯著優於營業收入指標,獲得的投資收益能夠更大的跑贏全市場收益率
市場是不斷波動的,如果一個投資者從股災期間開始投資,那麼即使他買入了上述優質行業的龍頭組合,在近3年也只能獲得12%左右的累計收益;而如果從2016年5月3日開始投資,那麼至2018年5月2日,2年時間就能獲得超過50%以上的收益了。所以,在投資過程中選擇時機也非常重要。
出自:JoinQuant 聚寬數據 JQData
原創文章,作者:GNKM,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/145576.html