安装talib库:pip install talib

  1 # 取个数据验证一下
2 set_token('')
3 data = history(symbol = 'SHSE.600519',frequency = '1d',start_time = '2015-01-01',end_time = '2019-12-31', \
4 fields = 'open, high, low, close,amount,volume,eob',df = True)
5
6 # 一、重叠研究(overlap studies)
7 # 1.简单移动平均指标SMA
8 # 参数说明:talib.SMA(a,b)
9 # a:要计算平均数的序列;b:计算平均线的周期。表示计算a的b日移动平均
10 close = data['close'].values
11 SMA = talib.SMA(close,5)
12
13 # 2.布林线BBANDS
14 # 参数说明:talib.BBANDS(close, timeperiod, matype)
15 # close:收盘价;timeperiod:周期;matype:平均方法(bolling线的middle线 = MA,用于设定哪种类型的MA)
16 # MA_Type: 0=SMA, 1=EMA, 2=WMA, 3=DEMA, 4=TEMA, 5=TRIMA, 6=KAMA, 7=MAMA, 8=T3 (Default=SMA)
17 upper, middle, lower = talib.BBANDS(close,5,matype = talib.MA_Type.EMA)
18
19 # 3. DEMA 双移动平均线:DEMA = 2*EMA-EMA(EMA)
20 # 参数说明:talib.DEMA(close, timeperiod = 30)
21 DEMA = talib.DEMA(close, timeperiod = 30)
22
23 # 4. MA
24 # 参数说明:MA(close, timeperiod = 30, matype=0)
25 # close:收盘价;timeperiod:周期;matype:计算平均线方法
26 MA = talib.MA(close, timeperiod = 30, matype = 0)
27
28 # 5. EMA
29 # 参数说明:EMA = talib.EMA(np.array(close), timeperiod=6)
30 # close:收盘价;timeperiod:周期;matype:计算平均线方法
31 EMA = talib.EMA(np.array(close), timeperiod = 6)
32
33 # 6.KAMA:考夫曼的自适应移动平均线
34 # 参数说明:KAMA = talib.KAMA(close, timeperiod = 30)
35 KAMA = talib.KAMA(close, timeperiod = 30)
36
37 # 7. MIDPRICE:阶段中点价格
38 # talib.MIDPOINT(close, timeperiod)
39 # 参数说明:close:收盘价;timeperiod:周期;
40 MIDPOINT = talib.MIDPOINT(close, timeperiod=14)
41
42 # 8.SAR:抛物线指标
43 # SAR(high, low, acceleration=0, maximum=0)
44 # 参数说明:high:最高价;low:最低价;acceleration:加速因子;maximum:极点价
45 SAR = talib.SAR(data['high'].values, data['low'].values, acceleration=0, maximum=0)
46
47 # 9.MIDPRICE:阶段中点价格(Midpoint Price over period)
48 # talib.MIDPOINT(close, timeperiod=14)
49 # 参数说明:close:收盘价;timeperiod:周期;
50 MIDPOINT = talib.MIDPOINT(close, timeperiod=14)
51
52 # 10. T3:三重移动平均线
53 # talib.T3(close, timeperiod=5, vfactor=0)
54 # 参数说明:close:收盘价;timeperiod:周期;vfactor: va 系数,当va=0时,T3就是三重移动平均线;va=1时,就是DEMA
55 T3 = talib.T3(close, timeperiod = 5, vfactor = 0)
56
57 # 11.TEMA:三重指数移动平均线
58 # talib.TEMA(close, timeperiod = 30)
59 # 参数说明:close:收盘价;timeperiod:周期;
60 TEMA = talib.TEMA(close, timeperiod=30)
61
62 # 12.SAREXT:SAR的抛物面扩展
63 # talib.SAREXT(high_p, low_p, startvalue=0, offsetonreverse=0, accelerationinitlong=0, accelerationlong=0, accelerationmaxlong=0, accelerationinitshort=0, accelerationshort=0, accelerationmaxshort=0)
64 SAREXT = talib.SAREXT(data['high'].values, data['low'].values, startvalue=0, offsetonreverse=0, accelerationinitlong=0, accelerationlong=0, accelerationmaxlong=0, accelerationinitshort=0, accelerationshort=0, accelerationmaxshort=0)
65
66 # 13.WMA:移动加权平均法
67 # talib.WMA(close, timeperiod = 30)
68 # 参数说明:close:收盘价;timeperiod:周期;
69 WMA = talib.WMA(close, timeperiod = 30)
70
71
72 # 二、 波动量指标
73 # 1.ATR:真实波动幅度均值
74 # ATR(high, low, close, timeperiod=14)
75 # 参数说明:high:最高价;low:最低价;close:收盘价,timeperiod:周期
76 ATR = talib.ATR(data['high'].values, data['low'].values, close, timeperiod=14)
77
78 # 2.NATR:归一化波动幅度均值
79 # NATR(high, low, close, timeperiod=14)
80 # 参数说明:high:最高价;low:最低价;close:收盘价,timeperiod:周期
81 NATR = talib.NATR(data['high'].values, data['low'].values, close, timeperiod=14)
82
83 # 3.TRANGE:真正的范围
84 # TRANGE(high, low, close)
85 # 参数说明:high:最高价;low:最低价;close:收盘价
86 TRANGE = talib.TRANGE(data['high'].values, data['low'].values, close)
87
88
89 # 三、 量价指标
90 # 1. AD:量价指标
91 # AD(high, low, close, volume)
92 # 参数说明:high:最高价;low:最低价;close:收盘价,volume:成交量
93 AD = talib.AD(data['high'], data['low'], close,data['volume'])
94
95 # 2.ADOSC:震荡指标
96 # ADOSC(high, low, close, volume, fastperiod=3, slowperiod=10)
97 # 参数说明:high:最高价;low:最低价;close:收盘价,volume:成交量; fastperiod:快周期; slowperiod:慢周期
98 ADOSC = talib.ADOSC(data['high'], data['low'], close,data['volume'], fastperiod=3, slowperiod=10)
99
100 # 3.OBV:能量潮
101 # OBV(close, volume)
102 # 参数说明:close:收盘价,volume:成交量
103 OBV = talib.OBV(close, data['volume'])
104
105 # 三、 周期指标
106 # 1.HT_DCPERIOD:希尔伯特变换-主导周期
107 # HT_DCPERIOD(close)
108 # 参数说明:close:收盘价
109 HT_DCPERIOD = talib.HT_DCPERIOD(close)
110
111 # 2.HT_DCPHASE:希尔伯特变换-主导循环阶段
112 # HT_DCPHASE(close)
113 # 参数说明:close:收盘价
114 HT_DCPHASE = talib.HT_DCPHASE(close)
115
116 # 3.HT_PHASOR:希尔伯特变换-希尔伯特变换相量分量
117 # inphase, quadrature = HT_PHASOR(close)
118 # 参数说明:close:收盘价
119 HT_PHASOR_inphase,HT_PHASOR_quadrature = talib.HT_PHASOR(close)
120
121 # 4.HT_SINE:希尔伯特变换-正弦波
122 # sine, leadsine = HT_SINE(close)
123 # 参数说明:close:收盘价
124 HT_SINE_sine,HT_SINE_leadsine = talib.HT_SINE(close)
125
126 # 5.HT_TRENDMODE:希尔伯特变换-趋势与周期模式
127 # integer = HT_TRENDMODE(close)
128 # 参数说明:close:收盘价
129 HT_TRENDMODE = talib.HT_TRENDMODE(close)
130
131
132 # 四、价格变化函数
133 # 1. AVGPRICE:平均价格函数
134 # real = AVGPRICE(open, high, low, close)
135 AVGPRICE = talib.AVGPRICE(data['open'].values, data['high'].values, data['low'].values, close)
136
137 # 2. MEDPRICE:中位数价格
138 # real = MEDPRICE(high, low)
139 # 参数说明:high:最高价;low:最低价;
140 MEDPRICE = talib.MEDPRICE(data['high'].values, data['low'].values)
141
142 # 3. TYPPRICE :代表性价格
143 # real = TYPPRICE(high, low, close)
144 # 参数说明:high:最高价;low:最低价;close:收盘价
145 TYPPRICE = talib.TYPPRICE(data['high'].values, data['low'].values, close)
146
147 # 4. WCLPRICE :加权收盘价
148 # real = WCLPRICE(high, low, close)
149 # 参数说明:high:最高价;low:最低价;close:收盘价
150 WCLPRICE = talib.WCLPRICE(data['high'].values, data['low'].values, close)
151
152 # 五、 动量指标
153 # 1. ADX:平均趋向指数
154 # real = ADX(high, low, close, timeperiod=14)
155 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
156 ADX = talib.ADX(data['high'].values, data['low'].values, close, timeperiod=14)
157
158 # 2. ADXR:平均趋向指数的趋向指数
159 # real = ADXR(high, low, close, timeperiod=14)
160 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
161 ADXR = talib.ADXR(data['high'].values, data['low'].values, close, timeperiod=14)
162
163 # 3. APO :价格震荡指数
164 # real = APO(close, fastperiod=12, slowperiod=26, matype=0)
165 # 参数说明:close:收盘价;fastperiod:快周期; slowperiod:慢周期
166 APO = talib.APO(close, fastperiod=12, slowperiod=26, matype=0)
167
168 # 4. AROON :阿隆指标
169 # aroondown, aroonup = AROON(high, low, timeperiod=14)
170 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
171 AROON_aroondown,AROON_aroonup = talib.AROON(data['high'].values, data['low'].values, timeperiod=14)
172
173 # 5.AROONOSC :阿隆振荡
174 # real = AROONOSC(high, low, timeperiod=14)
175 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
176 AROONOSC = talib.AROONOSC(data['high'].values, data['low'].values, timeperiod=14)
177
178 # 6. BOP :均势指标
179 # real = BOP(open, high, low, close)
180 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
181 BOP= talib.BOP(data['open'].values, data['high'].values, data['low'].values, close)
182
183 # 7. CCI :顺势指标
184 # real = CCI(high, low, close, timeperiod=14)
185 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
186 CCI = talib.CCI(data['high'].values, data['low'].values,close, timeperiod=14)
187
188 # 8. CMO :钱德动量摆动指标
189 # real = CMO(close, timeperiod=14)
190 # 参数说明:close:收盘价;timeperiod:时间周期
191 CMO = talib.CMO(close, timeperiod=14)
192
193 # 9. DX :动向指标或趋向指标
194 # real = DX(high, low, close, timeperiod=14)
195 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
196 DX = talib.DX(data['high'].values, data['low'].values, close, timeperiod=14)
197
198 # 10. MACD:平滑异同移动平均线
199 # macd, macdsignal, macdhist = MACD(close, fastperiod=12, slowperiod=26, signalperiod=9)
200 # 参数说明:high:最高价;low:最低价;close:收盘价;fastperiod:快周期; slowperiod:慢周期
201 MACD_macd,MACD_macdsignal,MACD_macdhist = talib.MACD(close, fastperiod=12, slowperiod=26, signalperiod=9)
202
203 # 11. MACDEXT :MACD延伸
204 # macd, macdsignal, macdhist = MACDEXT(close, fastperiod=12, fastmatype=0, slowperiod=26, slowmatype=0, signalperiod=9, signalmatype=0)
205 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
206 MACDEXT_macd,MACDEXT_macdsignal,MACDEXT_macdhist = talib.MACDEXT(close, fastperiod=12, fastmatype=0, slowperiod=26, slowmatype=0, signalperiod=9, signalmatype=0)
207
208 # 12. MFI :资金流量指标
209 # real = MFI(high, low, close, volume, timeperiod=14)
210 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
211 MFI = talib.MFI(data['high'].values, data['low'].values, close, data['volume'], timeperiod=14)
212
213 # 13. MINUS_DI:DMI 中的DI指标 负方向指标
214 # real = MINUS_DI(high, low, close, timeperiod=14)
215 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
216 MINUS_DI = talib.MINUS_DI(data['high'].values, data['low'].values, close, timeperiod=14)
217
218 # 14. MINUS_DM:上升动向值
219 # real = MINUS_DM(high, low, timeperiod=14)
220 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
221 MINUS_DM = talib.MINUS_DM(data['high'].values, data['low'].values, timeperiod=14)
222
223
224 # 六、波动率指标
225 # 1.MOM: 上升动向值
226 # real = MOM(close, timeperiod=10)
227 # 参数说明:close:收盘价;timeperiod:时间周期
228 MOM = talib.MOM(close, timeperiod=10)
229
230 # 2.PLUS_DI
231 # real = PLUS_DI(high, low, close, timeperiod=14)
232 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
233 PLUS_DI = talib.PLUS_DI(data['high'].values, data['low'].values, close, timeperiod=14)
234
235 # 3.PLUS_DM
236 # real = PLUS_DM(high, low, timeperiod=14)
237 # 参数说明:high:最高价;low:最低价;close:收盘价;timeperiod:时间周期
238 PLUS_DM = talib.PLUS_DM(data['high'].values, data['low'].values, timeperiod=14)
239
240 # 4. PPO: 价格震荡百分比指数
241 # real = PPO(close, fastperiod=12, slowperiod=26, matype=0)
242 # 参数说明:close:收盘价;timeperiod:时间周期,fastperiod:快周期; slowperiod:慢周期
243 PPO = talib.PPO(close, fastperiod=12, slowperiod=26, matype=0)
244
245 # 5.ROC:变动率指标
246 # real = ROC(close, timeperiod=10)
247 # 参数说明:close:收盘价;timeperiod:时间周期
248 ROC = talib.ROC(close, timeperiod=10)
249
250 # 6. ROCP:变动百分比
251 # real = ROCP(close, timeperiod=10)
252 # 参数说明:close:收盘价;timeperiod:时间周期
253 ROCP = talib.ROCP(close, timeperiod=10)
254
255 # 7.ROCR :变动百分率
256 # real = ROCR(close, timeperiod=10)
257 # 参数说明:close:收盘价;timeperiod:时间周期
258 ROCR = talib.ROCR(close, timeperiod=10)
259
260 # 8. ROCR100 :变动百分率(*100)
261 # real = ROCR100(close, timeperiod=10)
262 # 参数说明:close:收盘价;timeperiod:时间周期
263 ROCR100 = talib.ROCR100(close, timeperiod=10)
264
265 # 9. RSI:相对强弱指数
266 # real = RSI(close, timeperiod=14)
267 # 参数说明:close:收盘价;timeperiod:时间周期
268 RSI = talib.RSI(close, timeperiod=14)
269
270 # 10.STOCH :随机指标,俗称KD
271 # slowk, slowd = STOCH(high, low, close, fastk_period=5, slowk_period=3, slowk_matype=0, slowd_period=3, slowd_matype=0)
272 # 参数说明:high:最高价;low:最低价;close:收盘价;fastk_period:N参数, slowk_period:M1参数, slowk_matype:M1类型, slowd_period:M2参数, slowd_matype:M2类型
273 # #matype: 0=SMA, 1=EMA, 2=WMA, 3=DEMA, 4=TEMA, 5=TRIMA, 6=KAMA, 7=MAMA, 8=T3 (Default=SMA)
274 STOCH_slowk,STOCH_slowd = talib.STOCH(data['high'].values, data['low'].values, close, fastk_period=9, slowk_period=3, slowk_matype=1, slowd_period=3, slowd_matype=1)
275
276 # 11. STOCHF :快速随机指标
277 # fastk, fastd = STOCHF(high, low, close, fastk_period=5, fastd_period=3, fastd_matype=0)
278 STOCHF_fastk,STOCHF_fastd = talib.STOCHF(data['high'].values, data['low'].values, close, fastk_period=5, fastd_period=3, fastd_matype=0)
279
280 # 12.STOCHRSI:随机相对强弱指数
281 # fastk, fastd = STOCHRSI(high, low, close, timeperiod=14, fastk_period=5, fastd_period=3, fastd_matype=0)
282 STOCHRSI_fastk,STOCHRSI_fastd = talib.STOCHF(data['high'].values, data['low'].values, close, fastk_period = 5, fastd_period = 3, fastd_matype = 0)
283
284 # 13.TRIX:1-day Rate-Of-Change (ROC) of a Triple Smooth EMA
285 # real = TRIX(close, timeperiod=30)
286 TRIX = talib.TRIX(close, timeperiod=30)
287
288 # 14.ULTOSC:终极波动指标
289 # real = ULTOSC(high, low, close, timeperiod1=7, timeperiod2=14, timeperiod3=28)
290 ULTOSC = talib.ULTOSC(data['high'].values, data['low'].values, close, timeperiod1=7, timeperiod2=14, timeperiod3=28)
291
292 # 15.WILLR :威廉指标
293 # real = WILLR(high, low, close, timeperiod=14)
294 WILLR = talib.WILLR(data['high'].values, data['low'].values, close, timeperiod = 14)
295
296
297 # 七、Statistic Functions 统计学指标
298 # 1. BETA:β系数也称为贝塔系数
299 # real = BETA(high, low, timeperiod=5)
300 BETA = talib.BETA(data['high'].values, data['low'].values, timeperiod = 5)
301
302 # 2. CORREL :皮尔逊相关系数
303 # real = CORREL(high, low, timeperiod=30)
304 CORREL = talib.CORREL(data['high'].values, data['low'].values, timeperiod = 30)
305
306 # 3.LINEARREG :线性回归
307 # real = LINEARREG(close, timeperiod=14)
308 LINEARREG = talib.LINEARREG(close, timeperiod=14)
309
310 # 4.LINEARREG_ANGLE :线性回归的角度
311 # real = LINEARREG_ANGLE(close, timeperiod=14)
312 LINEARREG_ANGLE = talib.LINEARREG_ANGLE(close, timeperiod=14)
313
314 # 5. LINEARREG_INTERCEPT :线性回归截距
315 # real = LINEARREG_INTERCEPT(close, timeperiod=14)
316 LINEARREG_INTERCEPT = talib.LINEARREG_INTERCEPT(close, timeperiod=14)
317
318 # 6.LINEARREG_SLOPE:线性回归斜率指标
319 # real = LINEARREG_SLOPE(close, timeperiod=14)
320 LINEARREG_SLOPE = talib.LINEARREG_SLOPE(close, timeperiod=14)
321
322 # 7.STDDEV :标准偏差
323 # real = STDDEV(close, timeperiod=5, nbdev=1)
324 STDDEV = talib.STDDEV(close, timeperiod=5, nbdev=1)
325
326 # 8.TSF:时间序列预测
327 # real = TSF(close, timeperiod=14)
328 TSF = talib.TSF(close, timeperiod=14)
329
330 # 9. VAR:方差
331 # real = VAR(close, timeperiod=5, nbdev=1)
332 VAR = talib.VAR(close, timeperiod=5, nbdev=1)

python量化指标计算talib函数功能一览表的更多相关文章

  1. Ta-lib函数功能列表

    import tkinter as tk from tkinter import ttk import matplotlib.pyplot as plt import numpy as np impo ...

  2. 使用python装饰器计算函数运行时间的实例

    使用python装饰器计算函数运行时间的实例 装饰器在python里面有很重要的作用, 如果能够熟练使用,将会大大的提高工作效率 今天就来见识一下 python 装饰器,到底是怎么工作的. 本文主要是 ...

  3. 第6.4节 Python动态表达式计算:eval函数详述

    在Python动态执行的函数中,eval是用于执行表达式计算的函数,这个函数用于执行字符串中包含的一个表达式或其编译后对应的代码,不能适用于执行Python语句和完整的代码. 一.    语法 1.  ...

  4. 目前比较流行的Python量化开源框架汇总(交易+风险分析工具)

     注:点击框架名称通往Github talib talib的简称是Technical Analysis Library,主要功能是计算行情数据的技术分析指标 numpy 介绍:一个用python实现的 ...

  5. Python量化投资知识总结贴

    Ricequant 量化社区的初衷让各位爱好量化的人士可以碰撞思维,在分享和争辩中学习到有用且实战的量化知识.有赖于各位在社区中贡献满满的干货以及有质量的讨论,从编程入门教学到技术指标再到多因子选股. ...

  6. Python基础知识之5——函数基础

    函数 函数是一个独立且封闭完成特定功能的代码块,可以在任何地方被调用.Python内置了很多函数,我们可以直接调用,使用的时候,先查询下Python的官方文档即可: http://docs.pytho ...

  7. 用Python进行实时计算——PyFlink快速入门

    Flink 1.9.0及更高版本支持Python,也就是PyFlink. 在最新版本的Flink 1.10中,PyFlink支持Python用户定义的函数,使您能够在Table API和SQL中注册和 ...

  8. Python 函数式编程 & Python中的高阶函数map reduce filter 和sorted

    1. 函数式编程 1)概念 函数式编程是一种编程模型,他将计算机运算看做是数学中函数的计算,并且避免了状态以及变量的概念.wiki 我们知道,对象是面向对象的第一型,那么函数式编程也是一样,函数是函数 ...

  9. Python的函数式编程-传入函数、排序算法、函数作为返回值、匿名函数、偏函数、装饰器

    函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元. ...

  10. Python数据处理与计算——概述

    Python是一种面向对象的,动态的程序设计语言,具有非常简洁而清晰的语法,适合于完成各种高层任务.它既可以用来快速开发程序脚本,也可以用来开发大规模的软件. 随着NumPy.SciPy.Matplo ...

随机推荐

  1. 深入探索Spring AI:源码分析流式回答

    在上一章节中,我们深入分析了Spring AI的阻塞式请求与响应机制,并探讨了如何增强其记忆能力.今天,我们将重点讲解流式响应的概念与实现.毕竟,AI的流式回答功能与其交互体验密切相关,是提升用户满意 ...

  2. KubeSphere v4 开源并发布全新可插拔架构 LuBan

    2024 年 10 月 10 日,KubeSphere 开源社区激动地向大家宣布,KubeSphere v4(开源版)已正式发布,同时发布全新可插拔架构 KubeSphere LuBan. 相较于 K ...

  3. Nuxt.js 应用中的 server:devHandler 事件钩子详解

    title: Nuxt.js 应用中的 server:devHandler 事件钩子详解 date: 2024/10/26 updated: 2024/10/26 author: cmdragon e ...

  4. Nuxt.js 应用中的 imports:context 事件钩子详解

    title: Nuxt.js 应用中的 imports:context 事件钩子详解 date: 2024/10/29 updated: 2024/10/29 author: cmdragon exc ...

  5. 8.Jenkins+Docker+SpringCloud微服务持续集成

    前言 通过前几章的学习,了解了持续集成概念以及相关技术的学习和使用 接下来学习构建一整套SpringCloud微服务+Docker+Jenkins的持续集成案例 环境 架构图 流程说明: 开发人员将代 ...

  6. Gitlab的备份以及密码重置

    关于gitlab代码的备份 要求: 每天备份一次,备份至少7天的数据 备份到远程服务器 开始 编写备份脚本 gitlab_back.sh #! /bin/bash # gitlab 机房备份路径 Lo ...

  7. csv导出特殊字符问题

    昨天听到隔壁组讨论说按照逗号分割implode导出到csv文件,传递文件数据给别人的时候,别人按照都好explode分割回来多一个单元格,他们调查了一下发现是内容里面就是有逗号导致的,居然就这么卡住了 ...

  8. JVM最简生存指南

    本文由 ImportNew - Grey 翻译自 hadihariri.欢迎加入Java小组.转载请参见文章末尾的要求. 最近更新 : 2014年1月9日 为什么要写这个指南 持续更新 目标人群 基础 ...

  9. golang之errors包

    errors包常用方法 func Unwrap(err error) error // 获得err包含下一层错误 func Is(err, target error) bool // 判断err是否包 ...

  10. 基于python搭建FTP服务

    使用python搭建FTP服务非常容易,且非常稳定,更重要的是可以实现一些精细化的控制,例如精细的访问权限配置,详细的日志记录等工作 这里是使用了pyftpdlib模块 1. 安装 pip insta ...