python while 循环 全局变量_黄老师Python学院编程原来如此简单 第一讲

作者: 黄老师  发布时间: 05/28 2020 15:00

24bef1d608cd17b07b244ec79eda32b3.gif

9a0f72cfb9318a8273dd8c88fe2f8772.png

《两行代码爬取股票的全部信息》

先看效果:

下图展示的是黄老师用python爬取的英维克(代码是002837)的日k数据,是3年内的所有日k信息哦,而且最新的数据可以到最近一个交易日结束。

70aa467ca5206b26dbf368997608d546.png

数据解释:

e6bec8cc4316e20a53c179d3abf52ffa.png

可能你会觉得,要实现这个,应该要很长的代码来写吧。其实不难,爬取这些信息,并且把信息整整齐齐地存到电脑里,只需要两行简单的代码就行了。你别不相信,用的就是下面两行代码:

9ca6cdeaf63f1d6e070ff3f5c30bd409.png

注意,在调用这两行代码时,要引入必要的包,如下。

f4e5f3d41b1743fb4c343b16aaeb62b4.png

如果你的python还没有安装这些包,自己去百度一下,怎么用pip安装这些包吧,很简单很简单的,黄老师在这里就不详细说了。

代码讲解

第一行代码

c9a662c6e24e3a3f6472e1ae3aa7a558.png

其实,这里面起关键作用的是tushare包。Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。如果你想进一步了解,可以搜索下面网址。

6201c7b2dd72a4cf58e165aa55efe026.png

这个网站会教你更多更方便的获取股票数据和处理股票数据的方法。

第二行代码

b1f3373a6469575ffa3a7b59b105eaf0.png

这个代码的目的:就是把爬取到的数据存入excel表格中,注意,爬取到的数据形式是dataframe,这个数据形式由列名(也就是第一行的表头),索引(第一列的日期),数值(其他地方的数据)三部分组成的。这三部分不是在一起的,所以在导出到excel表格的时候,要想好导哪一部分,还是三部分一起导。这里用的是默认选项,也就是三部分一起导。

to_excel的常用参数说明:

6e8c5912128bdc560b5d17b38819f10c.png

———————————————— 完结

——接下来是学习时间了:

一、for循环

for循环可以用来遍历某一对象(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个二元素以此访问一遍)。

1、for循环使用情景

  • 我们想要某个操作重复执行且循环次数已知是可以使用for循环;

  • 所有否循环均可以用while实现。

2、语法格式

c2987305560559c1be27f0f28c0c8ffb.png

3、for循环操作实例

for循环可遍历除数字以外的数据基本类型,如字符串,元组,列表,集合,字典,文件等。我们还可以通过序列索引进行遍历。具体操作如下所示:

①for循环遍历字符串

8f7924cc4650f63e5d0f22777b70a959.png

②for循环遍历元组

5c471894221d56d2519fad80951207fd.png

③for循环遍历列表

de9b74039cab62d8a2d7bf96626fa1b0.png

④for循环遍历集合

dc7d917157647132d6a3d00737c5a421.png

⑤for 循环遍历字典

注意:Python 字典(Dictionary) items() 函数以列表返回可遍历的(键, 值) 元组数组。

d9aa5c1f17e264c327739ffaace9e365.png

⑥遍历文件

facfa798c674075d20717c4e52b0df90.png

⑦for循环实现1到9连乘

50764b4547797af035dddb031c2d9e56.png

⑧除以上之外,我们还可以通过序列索引进行遍历

range的用法:range(5)——>1个参数,从0开始到5不包含5(即含左不含右);range(5,15)——>2个参数,从5开始到15不包含15;range(5,55,5)——>3个参数,从5开始到55不包含55,最后的参数5是步长。

下面实例我们使用内置函数len()和range();函数len()返回列表的长度,即元素个数。range返回一个整数序列。

24e58f343827c712100fd23865c3f67f.png

———————————————— 完结

二、while循环

while循环,只要条件满足,就不断循环,条件不满足时退出循环。其中,执行语句可以是单个语句或者语句块;判断条件可以是任何表达式,任何非0,或非空(null)的值均为True。

注意:while循环的判断条件是boolean类型的表达式!

1、语法格式

abc6bd2cda834ebad7579fd25c22dd5d.png

2、while循环操作实例:

①求1到100的偶数和

24a2f6b9f9ab03f22bffe0c169eb042f.png

②打印1-100以内所有3和5的倍数,3的倍数以及5的倍数:

8f8d99033728fd6f0ef424c5f4e5fcdb.png

总结:for循环和while循环,两者的相同点在于都能循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。

———————————————— 完结

三、嵌套循环

Python语言允许在一个循环体里面嵌入另一个循环。可以for(while)循环嵌套for(while)循环,也可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环,反之,你可以在for循环中嵌入while循环。

① for循环嵌套for循环——>打印九九乘法表

edb3f1a92315bfea1849ae2c84031b8e.png

- The End-


黄老师的公众号文章均为原创内容并享有著作权,未经授权禁止转载,否则将追究相应的法律责任。

01.

个性订制策略指标/带交易指令

46ff3f0c3d052c5c1d37226bc00be3d6.png

4e14f185fdab90d7df6d4eecc6effd3a.png

c3261b4af5005980b1480f7c1dbf4ff7.gif

0d7e88cb046e1dc5fd5c2cc81a6b5a12.png

a45b7708c1dc8b5d76b8227f74ec2dd9.png

e8f422c51bbee313615188a3343a84ad.png

8c4eff37ea914fb9ddcf429baec492e9.png

(文华自动化程序开仓实例:股票&期货)

一.文华模型模型编写:

1.公式编写(400+个函数,麦语言)

2.基本面量化函数

3.策略优化函数

4.资金头寸函数

5.止损专用指令

二.模型回测:

1.逐笔tick数据回测

2.专业测试报告

3.回测资金曲线(信号复盘)

4.枚举法参数优化

5.遗传算法参数优化

6.多模型组合回测

02.

 订制个性化指标须知事项

a62545c3f5d574c45a30b1e69a4474f4.gif

《黄老师指标》提供专业的指标/模型编写;

代编写通达信公式指标或选股公式,定制文华程序化交易模型,开拓者TB交易策略,金字塔程序化交易模型,编写博易大师指标代写,或者是通达信,大智慧,同花顺,益盟等软件指标公式,选股公式代编写。

4c9ea9dc0d59a887ed9cb3341eaf88e9.gif

公式编写要求:

    请将相关思路用文字描述出来,如果实在打字太慢可以拍照或加黄老师的微信(kenhungsy)发语音录音给我。

e144acff163fa575b2ee6b9d099b48bf.png

如果选股公式:要给出具体的选股条件,符合什么条件选股。(例如,KDJ金叉同时收盘价大于20均线时选股)

如果交易模型:要给出开多条件,开空条件,平多条件,平空条件,有加仓减仓条件须另外说明。(例如:三连阳开多,三连阴开空,亏损20点止损平多平空)

02718b93430d89079189e7ece3e3cad8.png

如果是指标:需给出具体的运算思路及显示样式。(例如:我想编写上一次5均线10均线 从金叉 到  死叉时的最高价。在死叉时画出。)

主要业务包括:代编写公式指标、选股公式、预警公式、程序化交易模型,及不同软件间指标的改编写,如同花顺改编成通达信,大智慧改编成同花顺等,通达信编成文华...

f1656e5e8bf1eee35a286163cc1e6570.png

感谢您抽出 11110aac27a2516b32f19ccad96fbc11.gif 417d3dfeee429ea0345c30061aa25f34.gif·d632b63e08f6edbc293bdbe22c1b9026.gif cfdae4997b67b955338911e49d200903.gif来阅读黄老师此文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值