Scikit-Learn 股票投资:p4

前言

按照视频作者sentdex的意思,其实将Machine Learning(机器学习)应用在股票投资上并不难,难就难在对原始数据的获取、清洗和整理。 所以sentdex最开始的视频都是关于数据获取和清洗的教程。

视频

视频出处

视频系列:Scikit-learn Machine Learning with Python and SKlearn

本视频出处:Scikit Learn Machine Learning for investing Tutorial with Python p. 4

优酷:Scikit Learn Machine Learning for investing Tutorial with Python p. 4

数据下载

下载地址:数据

百 度 云: 地址 密码: yyq8

内容

这个视频教学主要用到雅虎上面的财务数据,例如debt to equity, P/E, P/B等等。假设你下载了上面的数据文件, 你就会看到作者直截了当地将雅虎金融上的全部股票遍历一次,并将其历史数据保存为html形式,需要用到的时候再提取。

首先,我们从最简单的开始。 我们会用到 负债/资产比率(Debt/Equity) 单一个数据,并观察和对比能否只通过 负债/资产比率 就可以决定buy or sell 某一股票.

源代码

import pandas as pd
import os
import time
from datetime import datetime

#获取数据的具体路径
path = '../intraQuarter'

#定义一个function,默认值为Total Debt/Equity (mrq),以后可以更改为其他
def Key_Stats(gather="Total Debt/Equity (mrq)"):
    statspath = path+'/_KeyStats'

    #os模块提供的walk方法很强大,能够把给定的目录下的所有目录和文件遍历出来。
    #方法:os.walk(path),遍历path,返回一个对象,他的每个部分都是一个三元组,('目录x',[目录x下的目录list],目录x下面的文件)
    stock_list = [x[0] for x in os.walk(statspath)]   
    #stock_list[1:] -- 主要作用是跳过根目录intraQuarter
    for each_dir in stock_list[1:]:
        #os.listdir(each_dir):列出each_dir下的目录和文件
        each_file = os.listdir(each_dir)
        if len(each_file) > 0:
            for file in each_file:
                #将文件名转换为时间序列
                date_stamp = datetime.strptime(file, '%Y%m%d%H%M%S.html')
                #转换为unix_time
                unix_time = time.mktime(date_stamp.timetuple())
                print(date_stamp, unix_time)
                
                time.sleep(15)
    
Key_Stats()

最后

虽然分c君_BingWong只是作为一名搬运工,连码农都称不上。 但制作代码中的注释、翻译和搬运都花了很多时间,请各位大侠高抬贵手,在转载时请注明出处。

添加新评论