V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
datayes2015
V2EX  ›  Python

使用 SVR 预测股票开盘价 v1.0

  •  
  •   datayes2015 · 2016-11-14 14:31:36 +08:00 · 3903 次点击
    这是一个创建于 2712 天前的主题,其中的信息可能已经有所发展或是发生改变。
    之前发过一篇:涨跌幅度分级,使用 SVM 分类预测 https://uqer.io/community/share/57ff4e54228e5b3658fac3f5 ,受欢迎程度颇高哈。今天就再发一篇和机器学习相关的模型——利用 SVR 模型来预测股票开盘价。
    一、策略概述

    本策略主旨思想是利用 SVR 建立的模型对股票每日开盘价进行回归拟合,即把前一日的 ['openPrice','highestPrice','lowestPrice','closePrice','turnoverVol','turnoverValue'] 作为当日 'openPrice' 的自变量,当日 'openPrice' 作为因变量。 SVR 的实现使用第三方库 scikit-learn 。

    二、 SVR

    SVR 详情
    SVR 参考文献见下方: https://uqer.io/community/share/5646f635f9f06c4446b48126





    代码请参考: https://uqer.io/community/share/5646f635f9f06c4446b48126
    三、 PS

    原本使用前一天数据预测当天的,但在 Quartz 中,交易策略被具体化为根据一定的规则,判断每个交易日以开盘价买入多少数量的何种股票。回测不影响,但在使模拟盘时无法获取当天的 closePrice 等,所以将程序改为用地 n-2 个交易日的数据作为自变量,第 n 个交易日的 openPrice 作为因变量。
    股票筛选的方法还很欠缺,本程序只用了'去除流动性差的股票'和'净利润增长率大于 1 的前 N 支股票'分别进行股票筛选测试,个人感觉都不很理想,还希望大牛们能提供一些有效的筛选方法。
    对于股票指数来说,大多数时候都无法对其进行精确的预测,本策略只做参考。
    期间发现通过 get_attribute_history 与 DataAPI.MktEqudGet 获取的数据中,有些股票的数据存在一些差异。
    关于止损,同样的止损策略,在其他平台可以明显看到,但在 Uqer 感觉并不起作用,不知是不是代码编写存在错误?还望大牛指正。
    程序写的有点乱七八糟的,还望大家见谅,多有不足还望指导!
    References:
    “ A Tutorial on Support Vector Regression ” Alex J. Smola, Bernhard Schölkopf -Statistics and Computing archive Volume 14 Issue 3, August 2004, p. 199-222
    代码请参考: https://uqer.io/community/share/5646f635f9f06c4446b48126

    14 条回复    2016-11-15 23:28:30 +08:00
    sup
        1
    sup  
       2016-11-14 14:50:23 +08:00
    棒~
    loryyang
        2
    loryyang  
       2016-11-14 14:55:48 +08:00
    这个有沟通交流群之类的不?
    bsklqgy
        3
    bsklqgy  
       2016-11-14 15:10:19 +08:00
    准不准,发财了没?
    echopan
        4
    echopan  
       2016-11-14 15:46:45 +08:00
    我好奇知道准不准?
    aqqwiyth
        5
    aqqwiyth  
       2016-11-14 15:58:51 +08:00   ❤️ 1
    准的话 还会来发帖 找人填坑啊
    lixuda
        6
    lixuda  
       2016-11-14 17:14:37 +08:00
    软文而已
    datayes2015
        7
    datayes2015  
    OP
       2016-11-14 17:33:48 +08:00
    datayes2015
        8
    datayes2015  
    OP
       2016-11-14 17:34:23 +08:00
    仁者见仁,智者见智吧:)
    doskoi
        9
    doskoi  
       2016-11-14 18:20:32 +08:00
    哈哈哈哈红红火火恍恍惚惚
    gimp
        10
    gimp  
       2016-11-15 18:01:11 +08:00
    珍爱生命,远离 A 股
    datayes2015
        11
    datayes2015  
    OP
       2016-11-15 18:10:32 +08:00
    @gimp 哈哈,说得好,去年股灾就没多过,所以今年想用更理性的方法研究研究,还个本:)
    e0n12uk4
        12
    e0n12uk4  
       2016-11-15 18:21:27 +08:00 via iPhone
    训练后的模型,支持向量占比多大?这是衡量模型复杂度和有没有过拟合的关键点噢
    aaronrzh
        13
    aaronrzh  
       2016-11-15 22:21:34 +08:00
    @e0n12uk4 看来是砖家
    billgreen1
        14
    billgreen1  
       2016-11-15 23:28:30 +08:00
    我猜想你是按照预测出的价格大于当前价格,你就买入,如果低于,你就卖出。

    你可以试试不按照这个来,每次随机的买入和卖出,看看是不是效果差不多。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1341 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 23:40 · PVG 07:40 · LAX 16:40 · JFK 19:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.