社保停交后,医保处于被冻结状态,不能使用。

默认分类李魔佛 发表了文章 • 0 个评论 • 8513 次浏览 • 2016-07-30 12:30 • 来自相关话题

 社保停交后,医保处于被冻结状态,不能使用。

医疗保险指通过国家立法,按照强制性社会保险原则基本医疗保险费应由用人单位和职工个人按时足额缴纳。不按时足额缴纳的,不计个人帐户,基本医疗保险统筹基金不予支付其医疗费用。

医疗保险是为补偿疾病所带来的医疗费用的一种保险。职工因疾病、负伤、生育时,由社会或企业提供必要的医疗服务或物质帮助的社会保险。如中国的公费医疗、劳保医疗。

中国职工的医疗费用由国家、单位和个人共同负担,以减轻企业负担,避免浪费。发生保险责任事故需要进行治疗是按比例付保险金。

医疗保险在退休时必须积累一定的缴费年限(含视同缴费年限),一般规定为20年-30年,并且实际缴费年限必须达到5年(或10年),才可以在退休以后免费终身享受医疗保险保障待遇。如果在退休时的累计缴费年限不足规定要求,可以按当时的费率标准补交所差的医疗保险缴费年限。

职工医疗保险补缴:

一、医保机构征缴部门根据医疗保险欠费情况,建立欠费数据信息,填制《社会保险费补缴通知单》,通知参保单位补缴欠费。

二、对因筹资困难,无法一次足额缴清欠费的参保单位,医保机构征缴部门与其签订社会保险补缴协议。如欠费单位发生被兼并、分立、破产等情况时,按下列方法签订补缴协议。

1、欠费单位被兼并的,与兼并方签订补缴协议。

2、欠费单位分立的,与各分立方签订补缴协议。

3、欠费单位进入破产程序的,与清算组签订清偿协议。

4、单位被拍卖出售或租赁的,与主管部门签订补缴协议。

三、参保单位根据《社会保险费补缴通知单》或补缴协议办理补缴,医保机构征缴部门予以受理,并通知医保机构财务管理部门收款。

四、破产单位无法完全清偿的欠费,医保机构征缴部门受理单位破产清算组提出的申请,审核后送稽核监督部门处理。

五、医保机构征缴部门依据财务管理部门传来的职工医疗保险补缴欠费到账信息和稽核监督部门传来的核销信息,调整参保单位欠费信息。

 
 
也就是说,你工作了20年,但是突然想放松一下,间隔年一下,去个游山玩水,社保中断了交。 这个时候你的社保卡是冻结状态,这个时候你的社保卡不能到医院看病。 除非你去游山玩水期间,自己去交社保的钱,不中断。
 
这种政策真扯淡。 所以说,国家的这些政策,完全弊大于利。 医保上的钱,如果我自己全部自己拿着,去理财,福利收益20年怎么也可以翻一翻吧,一年年收益只需要几个点就够了。(1+1*x)**20=2, (其中x为年收益率,**20 是20次方,复利计算公司), 可以算出 x=3.5%, 指数运算差点忘记了擦。
而且我爱什么时候用就什么时候用, 不要考虑中断不中断。  反正呢,ZF想要把你的口袋的钱放到他们那里,所以这笔钱,你不能动,其实我心里已经把当做这笔钱花了出去,看病能拿回一点算一点, 心里一种强烈被剥削的感觉。
  查看全部


 社保停交后,医保处于被冻结状态,不能使用。

医疗保险指通过国家立法,按照强制性社会保险原则基本医疗保险费应由用人单位和职工个人按时足额缴纳。不按时足额缴纳的,不计个人帐户,基本医疗保险统筹基金不予支付其医疗费用。

医疗保险是为补偿疾病所带来的医疗费用的一种保险。职工因疾病、负伤、生育时,由社会或企业提供必要的医疗服务或物质帮助的社会保险。如中国的公费医疗、劳保医疗。

中国职工的医疗费用由国家、单位和个人共同负担,以减轻企业负担,避免浪费。发生保险责任事故需要进行治疗是按比例付保险金。

医疗保险在退休时必须积累一定的缴费年限(含视同缴费年限),一般规定为20年-30年,并且实际缴费年限必须达到5年(或10年),才可以在退休以后免费终身享受医疗保险保障待遇。如果在退休时的累计缴费年限不足规定要求,可以按当时的费率标准补交所差的医疗保险缴费年限。

职工医疗保险补缴:

一、医保机构征缴部门根据医疗保险欠费情况,建立欠费数据信息,填制《社会保险费补缴通知单》,通知参保单位补缴欠费。

二、对因筹资困难,无法一次足额缴清欠费的参保单位,医保机构征缴部门与其签订社会保险补缴协议。如欠费单位发生被兼并、分立、破产等情况时,按下列方法签订补缴协议。

1、欠费单位被兼并的,与兼并方签订补缴协议。

2、欠费单位分立的,与各分立方签订补缴协议。

3、欠费单位进入破产程序的,与清算组签订清偿协议。

4、单位被拍卖出售或租赁的,与主管部门签订补缴协议。

三、参保单位根据《社会保险费补缴通知单》或补缴协议办理补缴,医保机构征缴部门予以受理,并通知医保机构财务管理部门收款。

四、破产单位无法完全清偿的欠费,医保机构征缴部门受理单位破产清算组提出的申请,审核后送稽核监督部门处理。

五、医保机构征缴部门依据财务管理部门传来的职工医疗保险补缴欠费到账信息和稽核监督部门传来的核销信息,调整参保单位欠费信息。


 
 
也就是说,你工作了20年,但是突然想放松一下,间隔年一下,去个游山玩水,社保中断了交。 这个时候你的社保卡是冻结状态,这个时候你的社保卡不能到医院看病。 除非你去游山玩水期间,自己去交社保的钱,不中断。
 
这种政策真扯淡。 所以说,国家的这些政策,完全弊大于利。 医保上的钱,如果我自己全部自己拿着,去理财,福利收益20年怎么也可以翻一翻吧,一年年收益只需要几个点就够了。(1+1*x)**20=2, (其中x为年收益率,**20 是20次方,复利计算公司), 可以算出 x=3.5%, 指数运算差点忘记了擦。
而且我爱什么时候用就什么时候用, 不要考虑中断不中断。  反正呢,ZF想要把你的口袋的钱放到他们那里,所以这笔钱,你不能动,其实我心里已经把当做这笔钱花了出去,看病能拿回一点算一点, 心里一种强烈被剥削的感觉。
 

日内操作 7月29日 特停政策下游资休养生息

股票绫波丽 发表了文章 • 0 个评论 • 2880 次浏览 • 2016-07-30 11:06 • 来自相关话题

人福医药 一个涨停都收到咨询函。
 
何况其他?
 
为何自己目前还满仓运行?
 
错误
人福医药 一个涨停都收到咨询函。
 
何况其他?
 
为何自己目前还满仓运行?
 
错误

日内操作 7月28日 价投的天下 中小创的地狱

股票绫波丽 发表了文章 • 0 个评论 • 2753 次浏览 • 2016-07-29 11:23 • 来自相关话题

中小创跌得一塌糊涂。 不少家电,白酒类个股接连创新高。
 
板块相应出来了,可惜自己一直持有的中小创。
中小创跌得一塌糊涂。 不少家电,白酒类个股接连创新高。
 
板块相应出来了,可惜自己一直持有的中小创。

git 比较两个分支的不同

Linux李魔佛 发表了文章 • 0 个评论 • 5851 次浏览 • 2016-07-28 22:31 • 来自相关话题

git diff [branchA] [branchB]用以上这个命令可输出两个分支的区别,但是不同的文件太多,在命令行查看不是很方便,想输出到文件中查看,不知道如何加参数?

===================================
补充:找到答案:// >> 后加输出文件的路径、文件名和后缀名 git diff [branchA] [branchB] >>d:/diff/exportname.diff
  查看全部

git diff [branchA] [branchB]用以上这个命令可输出两个分支的区别,但是不同的文件太多,在命令行查看不是很方便,想输出到文件中查看,不知道如何加参数?

===================================
补充:找到答案:// >> 后加输出文件的路径、文件名和后缀名 git diff [branchA] [branchB] >>d:/diff/exportname.diff
 

git冲突 解决

Linux李魔佛 发表了文章 • 0 个评论 • 4763 次浏览 • 2016-07-28 22:06 • 来自相关话题

Fatal: cannot do a partial commit during a merge
 
在提交单个文件的时候出现这个错误.

意思是不能部分提交代码.




原因是git认为你有部分代码没有做好提交的准备,比如没有添加


解决方法是

1. 提交全部


git commit -a 





2. 如果不想提交全部,那么可以通过添加 -i 选项

git commit file/to/path -i -m "merge"




上述情况一般出现在解决本地working copy冲突时出现, 本地文件修改(手工merge)完成后,要添加并提交,使得本地版本处于clean的状态.

这样以后git pull就不再会报错.
 
 
 
冲突处理

当两条分支对同一个文件的同一个文本块进行了不同的修改,并试图合并时,Git不能自动合并的,称之为冲突(conflict)。解决冲突需要人工处理。

比如当前在master分支,想把dev分支merge过来,结果产生了一个冲突,打开文件内容可以看到这么一个冲突:[复制代码]
<<<<<<< HEAD test in master ======= test in dev >>>>>>> dev
[复制代码]  

<<<<<<<标记冲突开始,后面跟的是当前分支中的内容。

HEAD指向当前分支末梢的提交。

=======之后,>>>>>>>之前是要merge过来的另一条分支上的代码。

>>>>>>>之后的dev是该分支的名字。

对于简单的合并,手工编辑,然后去掉这些标记,最后像往常的提交一样先add再commit即可。 查看全部
Fatal: cannot do a partial commit during a merge
 
在提交单个文件的时候出现这个错误.

意思是不能部分提交代码.




原因是git认为你有部分代码没有做好提交的准备,比如没有添加


解决方法是

1. 提交全部


git commit -a 





2. 如果不想提交全部,那么可以通过添加 -i 选项

git commit file/to/path -i -m "merge"




上述情况一般出现在解决本地working copy冲突时出现, 本地文件修改(手工merge)完成后,要添加并提交,使得本地版本处于clean的状态.

这样以后git pull就不再会报错.
 
 
 
冲突处理

当两条分支对同一个文件的同一个文本块进行了不同的修改,并试图合并时,Git不能自动合并的,称之为冲突(conflict)。解决冲突需要人工处理。

比如当前在master分支,想把dev分支merge过来,结果产生了一个冲突,打开文件内容可以看到这么一个冲突:[复制代码]
<<<<<<< HEAD test in master ======= test in dev >>>>>>> dev
[复制代码]  

<<<<<<<标记冲突开始,后面跟的是当前分支中的内容。

HEAD指向当前分支末梢的提交。

=======之后,>>>>>>>之前是要merge过来的另一条分支上的代码。

>>>>>>>之后的dev是该分支的名字。

对于简单的合并,手工编辑,然后去掉这些标记,最后像往常的提交一样先add再commit即可。

怎么segmentfault上的问题都这么入门级别的?

python李魔佛 发表了文章 • 0 个评论 • 2490 次浏览 • 2016-07-28 16:37 • 来自相关话题

遇到一些问题,上去segmentfault上搜索答案,以为segmentfault是中文版的stackoverflow。 结果大失所望。
基本都是一些菜鸟的问题。
 
搜索关键字: python
出来的是





 
结果都是怎么安装python,选择python2还是python3 这一类的问题。 着实无语。
看来在中国肯义务分享技术的人并不像国外那么多,那么慷慨。
(也有可能大神们都在忙于做项目,没空帮助小白们吧) 查看全部
遇到一些问题,上去segmentfault上搜索答案,以为segmentfault是中文版的stackoverflow。 结果大失所望。
基本都是一些菜鸟的问题。
 
搜索关键字: python
出来的是

segenfault.PNG

 
结果都是怎么安装python,选择python2还是python3 这一类的问题。 着实无语。
看来在中国肯义务分享技术的人并不像国外那么多,那么慷慨。
(也有可能大神们都在忙于做项目,没空帮助小白们吧)

如何使用pandas把某些行的数据进行算术处理?

回复

量化交易-Ptrade-QMT李魔佛 发起了问题 • 1 人关注 • 0 个回复 • 6286 次浏览 • 2016-07-28 15:35 • 来自相关话题

每天输出一篇高质量文章 ---始于2016年7月28日

30天新尝试李魔佛 发表了文章 • 0 个评论 • 3006 次浏览 • 2016-07-28 12:36 • 来自相关话题

以30天为一个短周期,定期回顾。 
平时太多的输入,但是输出很少。 这好比学校里学了很多东西,但是不做作业,不考试,这样永远无法知道学生的水平。
 
即使质量不高,我也要坚持。 百篇里能出一篇也不错。
 

 
 
以30天为一个短周期,定期回顾。 
平时太多的输入,但是输出很少。 这好比学校里学了很多东西,但是不做作业,不考试,这样永远无法知道学生的水平。
 
即使质量不高,我也要坚持。 百篇里能出一篇也不错。
 

 
 

AttributeError: 'module' object has no attribute 'pyplot'

回复

python李魔佛 回复了问题 • 1 人关注 • 1 个回复 • 9382 次浏览 • 2016-07-28 12:31 • 来自相关话题

日内操作 7月27日 大盘暴跌

股票绫波丽 发表了文章 • 0 个评论 • 2734 次浏览 • 2016-07-27 16:28 • 来自相关话题

1500个股票跌到-5%以上。
几周的努力都付诸东流。 股市注定是一个1盈2平7亏得地方。
而我,大概率的落到了7亏得那大部分人里。
 
不想说太多技术的东西。
 
午盘开盘前,11点多的时候可以跑掉,但是心里总是心存侥幸。 希望下午尾盘能有机会V上去。 股市里最怕的就是这种希望,没有凭借概率说话。
 
没有概率上的胜率,只能期盼奇迹。 但是,奇迹是小概率事件,期待奇迹的发生,不是一个胜者该做的。 
 
多回顾,多反省,多空仓。 纪律和模式的重要性,会让你能够避免失血过多而在股市存活下来。 查看全部
1500个股票跌到-5%以上。
几周的努力都付诸东流。 股市注定是一个1盈2平7亏得地方。
而我,大概率的落到了7亏得那大部分人里。
 
不想说太多技术的东西。
 
午盘开盘前,11点多的时候可以跑掉,但是心里总是心存侥幸。 希望下午尾盘能有机会V上去。 股市里最怕的就是这种希望,没有凭借概率说话。
 
没有概率上的胜率,只能期盼奇迹。 但是,奇迹是小概率事件,期待奇迹的发生,不是一个胜者该做的。 
 
多回顾,多反省,多空仓。 纪律和模式的重要性,会让你能够避免失血过多而在股市存活下来。

所能承受的困惑

30天新尝试低调的哥哥 发表了文章 • 0 个评论 • 2723 次浏览 • 2016-07-25 21:42 • 来自相关话题

不满足现状,空想着改变。
但是行动力不足以改变任何东西,日复一日,年复一年。所以,平庸的人就是这么诞生的了。
 
百人里面才会有甚少的一两个人,有突破的意志,能以跃出浅潭浊水,潜龙出海。
 
 
不满足现状,空想着改变。
但是行动力不足以改变任何东西,日复一日,年复一年。所以,平庸的人就是这么诞生的了。
 
百人里面才会有甚少的一两个人,有突破的意志,能以跃出浅潭浊水,潜龙出海。
 
 

ubuntu的pycharm中文注释显示乱码 ?

回复

python李魔佛 回复了问题 • 1 人关注 • 1 个回复 • 10920 次浏览 • 2016-07-25 12:22 • 来自相关话题

问一下,现在的“话题”可以由普通注册人员自行添加么?

默认分类低调的哥哥 回复了问题 • 2 人关注 • 2 个回复 • 4990 次浏览 • 2016-07-25 08:41 • 来自相关话题

tushare 源码分析 之 fundamental.py

量化交易-Ptrade-QMT李魔佛 发表了文章 • 0 个评论 • 14933 次浏览 • 2016-07-22 08:56 • 来自相关话题

python的tushare用来做数据分析是一个不错的工具。
 
下面来具体看看里面的一些具体的函数是怎么实现的。
 
fundamental.py  这个文件是获取企业的基本面信息的。 
 
比如 在主程序 main中,import tushare as ts
df=ts.get_stock_basics()那么我们来看看get_stock_basics函数的实现。def get_stock_basics():
"""
获取沪深上市公司基本情况
Return
--------
DataFrame
code,代码
name,名称
industry,细分行业
area,地区
pe,市盈率
outstanding,流通股本
totals,总股本(万)
totalAssets,总资产(万)
liquidAssets,流动资产
fixedAssets,固定资产
reserved,公积金
reservedPerShare,每股公积金
eps,每股收益
bvps,每股净资
pb,市净率
timeToMarket,上市日期
"""
request = Request(ct.ALL_STOCK_BASICS_FILE)
text = urlopen(request, timeout=10).read()
text = text.decode('GBK')
text = text.replace('--', '')
df = pd.read_csv(StringIO(text), dtype={'code':'object'})
df = df.set_index('code')
return df
上面通过urlib2的Request函数获取url的信息,然后保存为df格式然后返回。
url路径在这个变量里面: 
ct.ALL_STOCK_BASICS_FILE
 
跳转到这个变量





 
ALL_STOCK_BASICS_FILE = '%s%s/static/all.csv'%(P_TYPE['http'], DOMAINS['oss'])
 
P_TYPE 和DOMAINS 是字典变量, 在同一个文件内可以找到他们的值:P_TYPE = {'http': 'http://', 'ftp': 'ftp://'}

DOMAINS = {'sina': 'sina.com.cn', 'sinahq': 'sinajs.cn',
'ifeng': 'ifeng.com', 'sf': 'finance.sina.com.cn',
'vsf': 'vip.stock.finance.sina.com.cn',
'idx': 'www.csindex.com.cn', '163': 'money.163.com',
'em': 'eastmoney.com', 'sseq': 'query.sse.com.cn',
'sse': 'www.sse.com.cn', 'szse': 'www.szse.cn',
'oss': '218.244.146.57', 'idxip':'115.29.204.48',
'shibor': 'www.shibor.org', 'mbox':'www.cbooo.cn'}
 
然后把上面的字典值抽取出来:
 
那么url就是 http://218.244.146.57/static/all.csv , 你可以试试在浏览器里直接输入。 看到了吗?
可以直接下载一个all.csv格式的文件,打开后可以看到里面很多企业基本面的信息。
 






 
 
获取业绩报表
def get_report_data(year, quarter):
    """
        获取业绩报表数据
    Parameters
    --------
    year:int 年度 e.g:2014
    quarter:int 季度 :1、2、3、4,只能输入这4个季度
       说明:由于是从网站获取的数据,需要一页页抓取,速度取决于您当前网络速度
       
    Return
    --------
    DataFrame
        code,代码
        name,名称
        eps,每股收益
        eps_yoy,每股收益同比(%)
        bvps,每股净资产
        roe,净资产收益率(%)
        epcf,每股现金流量(元)
        net_profits,净利润(万元)
        profits_yoy,净利润同比(%)
        distrib,分配方案
        report_date,发布日期
    """
 
函数主要通过 request = Request(url) 在财经网站获取信息。request = Request(ct.REPORT_URL%(ct.P_TYPE['http'], ct.DOMAINS['vsf'], ct.PAGES['fd'],year, quarter, pageNo, ct.PAGE_NUM[1]))
text = urlopen(request, timeout=10).read()
Request里面的参数是一个可变量,通过循环的列表来获取所有的公司业绩报表。
通过定位参数里的变量,可以得到随意一个url, 比如 REPORT_URL = '%s%s/q/go.php/vFinanceAnalyze/kind/mainindex/%s?s_i=&s_a=&s_c=&reportdate=%s&quarter=%s&p=%s&num=%s'
 
那么url =http://vip.stock.finance.sina.com.cn/q/go.php/vFinanceAnalyze/kind/mainindex/index.phtml?s_i=&s_a=&s_c=&reportdate=2014&quarter=1&p=1&num=38
 
那么直接在浏览器输入看看 是什么数据
 





 
看到了2014年第一节度的每个公司的业绩(因为有些是新股,所以2014的数据显示不全)
 
 
注意 df=ts.get_report_data(2016,4)
#第四季度就是年报
 根据作者的意思,这个参数写4就是年报。 (可以自己根据网址内容去到新浪财经去验证)

新版tushare注册码
https://tushare.pro/register?reg=217168 
注册后送积分,只有足够的积分才能够调用一些高权限的接口

待续。 查看全部
python的tushare用来做数据分析是一个不错的工具。
 
下面来具体看看里面的一些具体的函数是怎么实现的。
 
fundamental.py  这个文件是获取企业的基本面信息的。 
 
比如 在主程序 main中,
import tushare as ts
df=ts.get_stock_basics()
那么我们来看看get_stock_basics函数的实现。
def get_stock_basics():
"""
获取沪深上市公司基本情况
Return
--------
DataFrame
code,代码
name,名称
industry,细分行业
area,地区
pe,市盈率
outstanding,流通股本
totals,总股本(万)
totalAssets,总资产(万)
liquidAssets,流动资产
fixedAssets,固定资产
reserved,公积金
reservedPerShare,每股公积金
eps,每股收益
bvps,每股净资
pb,市净率
timeToMarket,上市日期
"""
request = Request(ct.ALL_STOCK_BASICS_FILE)
text = urlopen(request, timeout=10).read()
text = text.decode('GBK')
text = text.replace('--', '')
df = pd.read_csv(StringIO(text), dtype={'code':'object'})
df = df.set_index('code')
return df

上面通过urlib2的Request函数获取url的信息,然后保存为df格式然后返回。
url路径在这个变量里面: 
ct.ALL_STOCK_BASICS_FILE
 
跳转到这个变量

goto.png

 
ALL_STOCK_BASICS_FILE = '%s%s/static/all.csv'%(P_TYPE['http'], DOMAINS['oss'])
 
P_TYPE 和DOMAINS 是字典变量, 在同一个文件内可以找到他们的值:
P_TYPE = {'http': 'http://', 'ftp': 'ftp://'}

DOMAINS = {'sina': 'sina.com.cn', 'sinahq': 'sinajs.cn',
'ifeng': 'ifeng.com', 'sf': 'finance.sina.com.cn',
'vsf': 'vip.stock.finance.sina.com.cn',
'idx': 'www.csindex.com.cn', '163': 'money.163.com',
'em': 'eastmoney.com', 'sseq': 'query.sse.com.cn',
'sse': 'www.sse.com.cn', 'szse': 'www.szse.cn',
'oss': '218.244.146.57', 'idxip':'115.29.204.48',
'shibor': 'www.shibor.org', 'mbox':'www.cbooo.cn'}

 
然后把上面的字典值抽取出来:
 
那么url就是 http://218.244.146.57/static/all.csv , 你可以试试在浏览器里直接输入。 看到了吗?
可以直接下载一个all.csv格式的文件,打开后可以看到里面很多企业基本面的信息。
 

allcsv.PNG


 
 
获取业绩报表
def get_report_data(year, quarter):
    """
        获取业绩报表数据
    Parameters
    --------
    year:int 年度 e.g:2014
    quarter:int 季度 :1、2、3、4,只能输入这4个季度
       说明:由于是从网站获取的数据,需要一页页抓取,速度取决于您当前网络速度
       
    Return
    --------
    DataFrame
        code,代码
        name,名称
        eps,每股收益
        eps_yoy,每股收益同比(%)
        bvps,每股净资产
        roe,净资产收益率(%)
        epcf,每股现金流量(元)
        net_profits,净利润(万元)
        profits_yoy,净利润同比(%)
        distrib,分配方案
        report_date,发布日期
    """
 
函数主要通过 request = Request(url) 在财经网站获取信息。
request = Request(ct.REPORT_URL%(ct.P_TYPE['http'], ct.DOMAINS['vsf'], ct.PAGES['fd'],year, quarter, pageNo, ct.PAGE_NUM[1]))
text = urlopen(request, timeout=10).read()

Request里面的参数是一个可变量,通过循环的列表来获取所有的公司业绩报表。
通过定位参数里的变量,可以得到随意一个url, 比如 REPORT_URL = '%s%s/q/go.php/vFinanceAnalyze/kind/mainindex/%s?s_i=&s_a=&s_c=&reportdate=%s&quarter=%s&p=%s&num=%s'
 
那么url =http://vip.stock.finance.sina.com.cn/q/go.php/vFinanceAnalyze/kind/mainindex/index.phtml?s_i=&s_a=&s_c=&reportdate=2014&quarter=1&p=1&num=38
 
那么直接在浏览器输入看看 是什么数据
 

财报.PNG

 
看到了2014年第一节度的每个公司的业绩(因为有些是新股,所以2014的数据显示不全)
 
 
注意
        df=ts.get_report_data(2016,4)
#第四季度就是年报

 根据作者的意思,这个参数写4就是年报。 (可以自己根据网址内容去到新浪财经去验证)

新版tushare注册码
https://tushare.pro/register?reg=217168 
注册后送积分,只有足够的积分才能够调用一些高权限的接口

待续。

30天学会量化交易模型 Day05

量化交易-Ptrade-QMT李魔佛 发表了文章 • 7 个评论 • 13149 次浏览 • 2016-07-19 22:52 • 来自相关话题

tushare数据写入SQLite
 这一节 我们学习如何把得到的数据写入数据库。
 
虽然也可以写入excel或者json,不过考虑到后面用的的排序和其他python脚本的调用,最后选择了轻量级的数据库SQLiite作为首选。# -*-coding=utf-8-*-
#数据库的操作
'''
http://30daydo.com
weigesysu@qq.com
'''
import sqlite3, time, datetime

__author__ = 'rocky'


class SqliteDb():


def __init__(self,dbtable):
'''
self.today = time.strftime("%Y-%m-%d")
self.DBname = self.today + '.db'
self.conn = sqlite3.connect(self.DBname)
'''
today = time.strftime("%Y-%m-%d")
DBname = today + '.db'
self.conn = sqlite3.connect(DBname)
self.dbtable=dbtable
create_tb = "CREATE TABLE %s (date varchar(10),id varchar(6), name varchar(30), p_change REAL,turnover REAL);" %self.dbtable
self.conn.execute(create_tb)
self.conn.commit()

def store_break_high(self,price_high_data):

#data 是创新高的个股信息 dataframe
#print today
#create_tb = 'CREATE TABLE STOCK (date TEXT,id text PRIMARY KEY, p_change REAL,turnover REAL);'

#conn.commit()
#print "(%s,%s,%f,%f)" %(price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3])
insert_data_cmd = "INSERT INTO %s(date,id,name,p_change,turnover) VALUES(\"%s\",\"%s\",\"%s\",%f,%f);" %(self.dbtable,price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3],price_high_data[4])
self.conn.execute(insert_data_cmd)
#self.conn.execute('INSERT INTO STOCK(date,id,name,p_change,turnover) VALUES(?,?,?,?,?)',(price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3],price_high_data[4]))
self.conn.commit()


def close(self):
self.conn.close()
上面创建的表名是 以日期为命名的(前面的下划线是因为数据库的命名规则不能以数字为首)
 
上一篇:30天学会量化交易模型 Day04 (tushare获取破新高的股票)
http://www.30daydo.com/article/70 查看全部
tushare数据写入SQLite
 这一节 我们学习如何把得到的数据写入数据库。
 
虽然也可以写入excel或者json,不过考虑到后面用的的排序和其他python脚本的调用,最后选择了轻量级的数据库SQLiite作为首选。
# -*-coding=utf-8-*-
#数据库的操作
'''
http://30daydo.com
weigesysu@qq.com
'''
import sqlite3, time, datetime

__author__ = 'rocky'


class SqliteDb():


def __init__(self,dbtable):
'''
self.today = time.strftime("%Y-%m-%d")
self.DBname = self.today + '.db'
self.conn = sqlite3.connect(self.DBname)
'''
today = time.strftime("%Y-%m-%d")
DBname = today + '.db'
self.conn = sqlite3.connect(DBname)
self.dbtable=dbtable
create_tb = "CREATE TABLE %s (date varchar(10),id varchar(6), name varchar(30), p_change REAL,turnover REAL);" %self.dbtable
self.conn.execute(create_tb)
self.conn.commit()

def store_break_high(self,price_high_data):

#data 是创新高的个股信息 dataframe
#print today
#create_tb = 'CREATE TABLE STOCK (date TEXT,id text PRIMARY KEY, p_change REAL,turnover REAL);'

#conn.commit()
#print "(%s,%s,%f,%f)" %(price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3])
insert_data_cmd = "INSERT INTO %s(date,id,name,p_change,turnover) VALUES(\"%s\",\"%s\",\"%s\",%f,%f);" %(self.dbtable,price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3],price_high_data[4])
self.conn.execute(insert_data_cmd)
#self.conn.execute('INSERT INTO STOCK(date,id,name,p_change,turnover) VALUES(?,?,?,?,?)',(price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3],price_high_data[4]))
self.conn.commit()


def close(self):
self.conn.close()

上面创建的表名是 以日期为命名的(前面的下划线是因为数据库的命名规则不能以数字为首)
 
上一篇:30天学会量化交易模型 Day04 (tushare获取破新高的股票)
http://www.30daydo.com/article/70

SQL 笔记 (新人会遇到的坑)

Linux李魔佛 发表了文章 • 0 个评论 • 2889 次浏览 • 2016-07-18 22:31 • 来自相关话题

自学的SQL,有些坑,自己经历过的。记录下来,我觉得以后的人肯定会踩到的。 
这里记录下来,说不定除了能够提醒自己,还能够帮助别人。
 
1. SQL的表名命名规则跟C,C++的变量命名规则一样,只能包含数字,字母,下划线。 而且不能够以数字开头。
(之前曾经很傻的用日期作为表名,结果一堆报错的。





 
如果硬要用日期,不妨在前面放一个下划线。

 
  查看全部
自学的SQL,有些坑,自己经历过的。记录下来,我觉得以后的人肯定会踩到的。 
这里记录下来,说不定除了能够提醒自己,还能够帮助别人。
 
1. SQL的表名命名规则跟C,C++的变量命名规则一样,只能包含数字,字母,下划线。 而且不能够以数字开头。
(之前曾经很傻的用日期作为表名,结果一堆报错的。

sql.PNG

 
如果硬要用日期,不妨在前面放一个下划线。

 
 

python sqlite 插入的数据含有变量,结果不一致

回复

python李魔佛 回复了问题 • 1 人关注 • 1 个回复 • 7969 次浏览 • 2016-07-18 07:50 • 来自相关话题

使用pandas的dataframe数据进行操作的总结

python李魔佛 发表了文章 • 0 个评论 • 5923 次浏览 • 2016-07-17 16:47 • 来自相关话题

t = df.iloc[0]<class 'pandas.core.series.Series'>
 
#使用iloc后,t已经变成了一个子集。 已经不再是一个dataframe数据。 所以你使用 t['high'] 返回的是一个值。此时t已经没有index了,如果这个时候调用 t.index
 
t=df[:1]
class 'pandas.core.frame.DataFrame'>
 
#这是返回的是一个DataFrame的一个子集。 此时 你可以继续用dateFrame的一些方法进行操作。
 
 
 
 
 
删除dataframe中某一行
 
df.drop()
 
df的内容如下:





 
    df.drop(df[df[u'代码']==300141.0].index,inplace=True)
    print df
 
输出如下





 
记得参数inplace=True, 因为默认的值为inplace=False,意思就是你不添加的话就使用Falase这个值。
这样子原来的df不会被修改, 只是会返回新的修改过的df。 这样的话需要用一个新变量来承接它
new_df=df.drop(df[df[u'代码']==300141.0].index)
 

判断DataFrame为None
  if df is None:
print "None len==0"
return False
  查看全部
t = df.iloc[0]<class 'pandas.core.series.Series'>
 
#使用iloc后,t已经变成了一个子集。 已经不再是一个dataframe数据。 所以你使用 t['high'] 返回的是一个值。此时t已经没有index了,如果这个时候调用 t.index
 
t=df[:1]
class 'pandas.core.frame.DataFrame'>
 
#这是返回的是一个DataFrame的一个子集。 此时 你可以继续用dateFrame的一些方法进行操作。
 
 
 
 
 
删除dataframe中某一行
 
df.drop()
 
df的内容如下:

drop.PNG

 
    df.drop(df[df[u'代码']==300141.0].index,inplace=True)
    print df
 
输出如下

after_drop.PNG

 
记得参数inplace=True, 因为默认的值为inplace=False,意思就是你不添加的话就使用Falase这个值。
这样子原来的df不会被修改, 只是会返回新的修改过的df。 这样的话需要用一个新变量来承接它
new_df=df.drop(df[df[u'代码']==300141.0].index)
 

判断DataFrame为None
 
    if df is None:
print "None len==0"
return False

 

30天学会量化交易模型 Day04

量化交易-Ptrade-QMT李魔佛 发表了文章 • 4 个评论 • 21553 次浏览 • 2016-07-16 21:28 • 来自相关话题

tushare获取破新高的股票

 股市有句话,新高后有新高。
因为新高后说明消化了前面的套牢盘。 所以这个时候的阻力很小。
 
下面使用一个例子来用代码获取当天创新高的股票。
 






使用的是tushare#-*-coding=utf-8-*-
__author__ = 'rocky'
'''
http://30daydo.com
weigesysu@qq.com
'''
#获取破指定天数内的新高 比如破60日新高
import tushare as ts
import datetime
info=ts.get_stock_basics()

def loop_all_stocks():
for EachStockID in info.index:
if is_break_high(EachStockID,60):
print "High price on",
print EachStockID,
print info.ix[EachStockID]['name'].decode('utf-8')



def is_break_high(stockID,days):
end_day=datetime.date(datetime.date.today().year,datetime.date.today().month,datetime.date.today().day)
days=days*7/5
#考虑到周六日非交易
start_day=end_day-datetime.timedelta(days)

start_day=start_day.strftime("%Y-%m-%d")
end_day=end_day.strftime("%Y-%m-%d")
df=ts.get_h_data(stockID,start=start_day,end=end_day)

period_high=df['high'].max()
#print period_high
today_high=df.iloc[0]['high']
#这里不能直接用 .values
#如果用的df【:1】 就需要用.values
#print today_high
if today_high>=period_high:
return True
else:
return False

loop_all_stocks()
可以修改 函数 is_break_high(EachStockID,60) 中的60 为破多少天内的新高。
 
上一篇:30天学会量化交易模型 Day03
http://www.30daydo.com/article/15
 
下一篇: 30天学会量化交易模型 Day05 (tushare数据写入SQLite)
http://www.30daydo.com/article/73 查看全部
tushare获取破新高的股票

 股市有句话,新高后有新高
因为新高后说明消化了前面的套牢盘。 所以这个时候的阻力很小。
 
下面使用一个例子来用代码获取当天创新高的股票。
 

createhigh.PNG


使用的是tushare
#-*-coding=utf-8-*-
__author__ = 'rocky'
'''
http://30daydo.com
weigesysu@qq.com
'''
#获取破指定天数内的新高 比如破60日新高
import tushare as ts
import datetime
info=ts.get_stock_basics()

def loop_all_stocks():
for EachStockID in info.index:
if is_break_high(EachStockID,60):
print "High price on",
print EachStockID,
print info.ix[EachStockID]['name'].decode('utf-8')



def is_break_high(stockID,days):
end_day=datetime.date(datetime.date.today().year,datetime.date.today().month,datetime.date.today().day)
days=days*7/5
#考虑到周六日非交易
start_day=end_day-datetime.timedelta(days)

start_day=start_day.strftime("%Y-%m-%d")
end_day=end_day.strftime("%Y-%m-%d")
df=ts.get_h_data(stockID,start=start_day,end=end_day)

period_high=df['high'].max()
#print period_high
today_high=df.iloc[0]['high']
#这里不能直接用 .values
#如果用的df【:1】 就需要用.values
#print today_high
if today_high>=period_high:
return True
else:
return False

loop_all_stocks()

可以修改 函数 is_break_high(EachStockID,60) 中的60 为破多少天内的新高。
 
上一篇:30天学会量化交易模型 Day03
http://www.30daydo.com/article/15
 
下一篇: 30天学会量化交易模型 Day05 (tushare数据写入SQLite)
http://www.30daydo.com/article/73

安卓系统常用命令 adb shell

Android李魔佛 发表了文章 • 0 个评论 • 4068 次浏览 • 2016-07-16 16:44 • 来自相关话题

定期更新:
1. 安卓关机(非重启): adb shell svc power shutdown
 
2. android开机的时候跳过初始化设置 (setup wizard): adb shell input text 1396611460
 
3.
定期更新:
1. 安卓关机(非重启): adb shell svc power shutdown
 
2. android开机的时候跳过初始化设置 (setup wizard): adb shell input text 1396611460
 
3.

汇金(国家队)最近增持的个股 2016年4月之后

股票李魔佛 发表了文章 • 0 个评论 • 2547 次浏览 • 2016-07-14 22:59 • 来自相关话题

无意中查询了一下数据,发现汇金增持了4家公司。 其余的均保持不变。
有点意思,个人猜测,有可能是养老金悄悄进入的市场。
 





 
 
保持关注。
 
无意中查询了一下数据,发现汇金增持了4家公司。 其余的均保持不变。
有点意思,个人猜测,有可能是养老金悄悄进入的市场。
 

汇金持股.PNG

 
 
保持关注。
 

pycharm 添加了中文注释后无法运行?

回复

python李魔佛 回复了问题 • 1 人关注 • 1 个回复 • 6550 次浏览 • 2016-07-14 17:56 • 来自相关话题

雪人股份 继续跟踪 7月12日

股票李魔佛 发表了文章 • 0 个评论 • 2606 次浏览 • 2016-07-12 08:26 • 来自相关话题

最近2个交易日雪人股份的股价涨幅有20%。 看看龙虎榜,结合之前的跟庄分析雪人股份 大宗交易分析 寻找主力痕迹, 福州五一路,最近2个交易日出货3000万,但是也继续买入了2000多万,而之前的大宗交易,入了大概4000万的货,所以福州五一路后记还会有一段拉伸。 而那个马甲的长城福州五一路的货全部出完了。大概就1500万。
 
所以后期还是可以再介入一波。
 





 
雪人股份 后续分析 6月30日 查看全部
最近2个交易日雪人股份的股价涨幅有20%。 看看龙虎榜,结合之前的跟庄分析雪人股份 大宗交易分析 寻找主力痕迹, 福州五一路,最近2个交易日出货3000万,但是也继续买入了2000多万,而之前的大宗交易,入了大概4000万的货,所以福州五一路后记还会有一段拉伸。 而那个马甲的长城福州五一路的货全部出完了。大概就1500万。
 
所以后期还是可以再介入一波。
 

雪人7-11.PNG

 
雪人股份 后续分析 6月30日

ubuntu命令行的路径太长 如何缩短显示?

回复

Linux李魔佛 回复了问题 • 1 人关注 • 1 个回复 • 6851 次浏览 • 2016-07-10 17:38 • 来自相关话题

python 爬虫下载的图片打不开?

python李魔佛 发表了文章 • 0 个评论 • 7176 次浏览 • 2016-07-09 17:33 • 来自相关话题

 
代码如下片段
 
__author__ = 'rocky'
import urllib,urllib2,StringIO,gzip
url="http://image.xitek.com/photo/2 ... ot%3B
filname=url.split("/")[-1]
req=urllib2.Request(url)
resp=urllib2.urlopen(req)
content=resp.read()
#data = StringIO.StringIO(content)
#gzipper = gzip.GzipFile(fileobj=data)
#html = gzipper.read()
f=open(filname,'w')
f.write()
f.close()

运行后生成的文件打开后不显示图片。
 
后来调试后发现,如果要保存为图片格式, 文件的读写需要用'wb', 也就是上面代码中
f=open(filname,'w') 改一下 改成

f=open(filname,'wb')
 
就可以了。
  查看全部
 
代码如下片段
 
__author__ = 'rocky'
import urllib,urllib2,StringIO,gzip
url="http://image.xitek.com/photo/2 ... ot%3B
filname=url.split("/")[-1]
req=urllib2.Request(url)
resp=urllib2.urlopen(req)
content=resp.read()
#data = StringIO.StringIO(content)
#gzipper = gzip.GzipFile(fileobj=data)
#html = gzipper.read()
f=open(filname,'w')
f.write()
f.close()

运行后生成的文件打开后不显示图片。
 
后来调试后发现,如果要保存为图片格式, 文件的读写需要用'wb', 也就是上面代码中
f=open(filname,'w') 改一下 改成

f=open(filname,'wb')
 
就可以了。
 

判断网页内容是否经过gzip压缩 python代码

python李魔佛 发表了文章 • 0 个评论 • 4037 次浏览 • 2016-07-09 15:10 • 来自相关话题

同一个网页某些页面会通过gzip压缩网页内容,给正常的爬虫造成一定的错误干扰。
 
那么可以在代码中添加一个判断,判断网页内容是否经过gzip压缩,是的话多一个处理就可以了。
 





 
同一个网页某些页面会通过gzip压缩网页内容,给正常的爬虫造成一定的错误干扰。
 
那么可以在代码中添加一个判断,判断网页内容是否经过gzip压缩,是的话多一个处理就可以了。
 

gzip.PNG

 

深港通标的个股 -- 年内定会开通

股票李魔佛 发表了文章 • 0 个评论 • 2934 次浏览 • 2016-07-07 12:03 • 来自相关话题

为什么谈论这个? 因为最近盘中会发现不断有大单进入这些个股。 属于个股异动,但是股价确没有跟着大单上涨。 所以个人感觉后续会有一波好行情。
 





 
为什么谈论这个? 因为最近盘中会发现不断有大单进入这些个股。 属于个股异动,但是股价确没有跟着大单上涨。 所以个人感觉后续会有一波好行情。
 

深港通.PNG

 

linux locate 搜索挂载的分区文件

Linux李魔佛 发表了文章 • 0 个评论 • 2955 次浏览 • 2016-07-07 11:17 • 来自相关话题

一般linux的locate命令会忽略挂载分区的文件,所以即使你挂载分区后使用updatedb也没用。
可以修改updatedb的配置文件来修改sudo gedit /etc/updatedb.conf
把文件中的PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs"
/media 去掉就可以了。
这个参数是设置忽略哪些查找的路径。
  查看全部

一般linux的locate命令会忽略挂载分区的文件,所以即使你挂载分区后使用updatedb也没用。
可以修改updatedb的配置文件来修改
sudo gedit /etc/updatedb.conf

把文件中的
PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs"

/media 去掉就可以了。
这个参数是设置忽略哪些查找的路径。
 

股市中的数学 (1)

股票李魔佛 发表了文章 • 0 个评论 • 3043 次浏览 • 2016-07-02 09:54 • 来自相关话题

数学源于生活,在股市中也处处用得着。 
 
股价连续n个涨停板后的涨幅是 = (1.1的n次方 -1 )
比如, 新股连续一周涨停板,那么一周的涨幅就是 1.1(**5)-1=61%
 
1 day's raise is 10.00
2 day's raise is 21.00
3 day's raise is 33.10
4 day's raise is 46.41
5 day's raise is 61.05
 
 
  查看全部
数学源于生活,在股市中也处处用得着。 
 
股价连续n个涨停板后的涨幅是 = (1.1的n次方 -1 )
比如, 新股连续一周涨停板,那么一周的涨幅就是 1.1(**5)-1=61%
 
1 day's raise is 10.00
2 day's raise is 21.00
3 day's raise is 33.10
4 day's raise is 46.41
5 day's raise is 61.05

 
 
 

定向增发与非公开发行

量化交易李魔佛 发表了文章 • 0 个评论 • 3691 次浏览 • 2016-07-01 23:14 • 来自相关话题

股市经常看公告,会有定向增发和非公开发行这样的字眼,解释如下:
定向增发与非公开发行目前已经是一个概念了。
定向增发是指上市公司向符合条件的少数特定投资者非公开发行股份的行为,规定要求发行对象不得超过10人,发行价不得低于公告前20个交易市价的90%,发行股份12个月内(认购后变成控股股东或拥有实际控制权的36个月内) 不得转让。

2006年证监会推出的《再融资管理办法》中,关于非公开发行,除了规定发行对象不得超过10人,发行价不得低于市价的90%,发行股份12个月内(大股东认购的为36个月)不得转让,以及募资用途需符合国家产业政策、上市公司及其高管不得有违规行为等外,没有其他条件。
 
感觉不公开的东西才是好东东~
 
非定向增发的估计都是没人要的。。 查看全部
股市经常看公告,会有定向增发和非公开发行这样的字眼,解释如下:
定向增发与非公开发行目前已经是一个概念了。
定向增发是指上市公司向符合条件的少数特定投资者非公开发行股份的行为,规定要求发行对象不得超过10人,发行价不得低于公告前20个交易市价的90%,发行股份12个月内(认购后变成控股股东或拥有实际控制权的36个月内) 不得转让。

2006年证监会推出的《再融资管理办法》中,关于非公开发行,除了规定发行对象不得超过10人,发行价不得低于市价的90%,发行股份12个月内(大股东认购的为36个月)不得转让,以及募资用途需符合国家产业政策、上市公司及其高管不得有违规行为等外,没有其他条件。
 
感觉不公开的东西才是好东东~
 
非定向增发的估计都是没人要的。。