学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
五、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
第一步,我们照常从tushare获取数
import tushare as ts
import pandas as pd
token = ‘Your token’ # 输入你的接口密匙,获取方式及相关权限见Tushare官网。这句话不能照抄!
pro = ts.pro_api(token)
def get_data(tscode):
df = pro.daily(ts_code=tscode)
df = df.loc[:, [‘trade_date’, ‘open’, ‘high’, ‘low’, ‘close’, ‘vol’]]
df.rename(
columns={
‘trade_date’: ‘Date’, ‘open’: ‘Open’,
‘high’: ‘High’, ‘low’: ‘Low’,
‘close’: ‘Close’, ‘vol’: ‘Volume’},
inplace=True) # 重定义列名,方便统一规范操作。
df[‘Date’] = pd.to_datetime(df[‘Date’]) # 转换日期列的格式,便于作图
df.set_index([‘Date’], inplace=True) # 将日期列作为行索引
df = df.sort_index() # 倒序以便作图
return df
=================================================================================
RSI即相对强弱指标(Relative Strength Index),是在股票市场上用于衡量证券自身内在强度的指标,用于判断股票买方力量与卖方力量的强弱,进而预测价格走势。
计算公式如下:
R S I = 100 − 100 1 + R S \displaystyle RSI=100-\frac{100}{1+RS} RSI=100−1+RS100 或 R S I = 100 × R S 1 + R S \displaystyle RSI=100×\frac{RS}{1+RS} RSI=100×1+RSRS
其中: R S = U P D O W N \displaystyle RS=\frac{UP}{DOWN} RS=DOWNUP
故上述公式也即 R S I = 100 × U P U P + D O W N \displaystyle RSI=100×\frac{UP}{UP+DOWN} RSI=100×UP+DOWNUP
-
UP表示t期内股价上涨幅度的平均值
-
DOWN表示t期内股价下跌幅度的平均值
-
该均值使用不同均值类型计算出的结果会有所差异。
-
RSI接近于0的时候,UP≪Down
-
RSI接近于100的时候UP≫Down
-
RSI取值为50时UP=Down
总之
-
RSI大于50越多,表明股票上涨的力量超过下跌的力量越大。
-
RSI小于50越多,表明股票下跌的力量超过上涨的力量越大。
=======================================================================================
默认时间跨度设为6天
import pandas as pd
import numpy as np
def rsi(price, period=6):
clprcChange = price - price.shift(1)
clprcChange = clprcChange.dropna()
indexprc = clprcChange.index
upPrc = pd.Series(0, index=indexprc)
upPrc[clprcChange > 0] = clprcChange[clprcChange > 0]
downPrc = pd.Series(0, index=indexprc)
downPrc[clprcChange < 0] = -clprcChange[clprcChange < 0]
risdata = pd.concat([price, clprcChange, upPrc, downPrc], axis=1)
risdata.columns = [‘price’, ‘PrcChange’, ‘upPrc’, ‘downPrc’]
risdata = risdata.dropna()
SMUP = []
SMDOWN = []
for i in range(period, len(upPrc) + 1):
SMUP.append(np.mean(upPrc.values[(i - period): i], dtype=np.float32))
SMDOWN.append(np.mean(downPrc.values[(i - period): i], dtype=np.float32))
rsi = [100 * SMUP[i] / (SMUP[i] + SMDOWN[i]) for i in range(0, len(SMUP))]
indexRsi = indexprc[(period - 1):]
rsi = pd.Series(rsi, index=indexRsi)
return rsi
韦尔斯·威尔德(Wells Wilder)指出,通过运用月周期28天的一半来计算RSI的值进行预测是有效的,他推荐14日为时间跨度。
一些常用的看盘软件设有6日RSI,12日RSI,24日RSI三个RSI指标。
-
6日近似一周的时间周期
-
12日近似半个月的时间周期
-
24日近似一个月的时间周期
-
此外也有人用RSI1表示6日相对强度指标,RSI2日表示12日相对强度指标,RSI3表示24日相对强度指标。
=========================================================================================
import matplotlib.pyplot as plt
传入rsi_x时要记着切片
def rsi_plot(rsi_x):
plt.rcParams[‘font.sans-serif’] = [‘SimHei’]
plt.rcParams[‘axes.unicode_minus’] = False
fig,ax = plt.subplots()
plt.xlim(rsi_x.index[0],rsi_x.index[-1])
plt.ylim(0,100)
plt.grid(True)
plt.xlabel(‘日期’)
plt.ylabel(‘rsi_values’)
fig.patch.set_facecolor(‘red’)
fig.patch.set_alpha(0.6)
ax.patch.set_facecolor(‘yellow’)
ax.patch.set_alpha(1)
plt.plot(rsi_x,color=‘r’)
plt.title(‘RSI指标图’)
================================================================================
以平安银行为例
df = get_data(‘000001.SZ’)
计算rsi
rsi6=rsi(df.Close)
以2020年全年数据为例绘图
rsi_plot(rsi6[‘2020’])
图像效果如下:
========================================================================================
除了上边说到的0,50,100三个位点的状况,我们还可以刻画超买线,超卖线,和中心线。
RSI取值等于80和20分别为比较常用的“超买线”和“超卖线”。RSI为80表示超买的临界点,RSI为20表示超卖的临界点,RSI取值为50设定为“中心线”,表明买入力量等于卖出力量。
-
RSI大于80时,股票出现超买信号,股票买入力量过大,买入力量未来可能会减小,股票价格可能会下跌;
-
RSI小于20时,股票出现超卖信号,股票卖出力量过大,卖出力量未来可能会回归正常,因此股票价格可能会上涨。
-
超买线和超卖线的刻画可以有所变化,90和10也是可以的,70和30也已被验证能够有效预测股票走势。具体选择,仁者见仁智者见智。
===========================================================================================
文末有福利领取哦~
👉一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
👉二、Python必备开发工具
👉三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉 四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
👉五、Python练习题
检查学习结果。
👉六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!