`
cywhoyi
  • 浏览: 412454 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

基于K-Means算法,探索股票趋势的数据可视化

 
阅读更多

公司举办编程大赛,想到最近股票跌宕起伏,然后无心睡眠,所以跟我叔叔聊聊股市,叔叔操盘经常是选择A股票后,会购买B这只股票,但是A跟B之间单单从业务角度和股权分配都没有任何关系,至少从表面上是这么让人觉得。后来遵从他的劝解,我选择A\B两股,但是万万没想到的是跌得我想死,漫漫长夜,无心睡眠,起来骗点钱,看了些论文,着手把实现完成,主要使用到动态规划、排序和K-means算法结合下,进行归类那些不靠谱的股票,纪念下我那损失的万把块钱。(确切地说,损失非常严重,悟出一个真理中国股市没有任何依据可言),参考的论文是国外的课题,在附件中请查收(英文)

基于K-Means算法,探索股票趋势的数据可视化

 

 

采用欧氏距离     

 

数据采样

股票号码、每天的股价(统计一周的股价情况)

数据集进行[0,1]规格化

K-Means算法进行聚类算法

 

输出结果

ID         NAME     VALUE

股票号码、股票名称、股票增值幅度

 

SOURCE   TARGET    VALUE

非K股票   K的股票    关联幅度

 

 

  工作日 周一 周二 周三 周四 周五
  股票代码
工大高新 600701 10 16 23 1 60
江苏有线 600959 22 33 44 6 50
青岛碱业 600229 33 2 5 7 51
物产中大 600704 4 34 33 45 53
维科精华 600152 23 41 12 32 53
信雅达 600571 45 4 22 23 53
  600119 4 2 10 4 4
  603703 5 32 11 13 13
  600446 6 33 32 13 50
  603128 23 32 4 33 14
  600833 12 12 6 22 23
恒生电子 600570 13 13 8 33 12
  600647 7 32 23 1 42
  601519 8 14 45 2 9
  600789 12 15 33 13 4
  601106 31 42 12 45 22

 

 

 

其实这几种算法没啥新意,个人感觉比较好玩的是数据的可视化,这里使用到浙大竺可桢学院数据可视化的同学们提供的组件,非常佩服他们。http://datavlab.org/

<!DOCTYPE html>
<html>
    
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>k-means股票数据可视化</title>
        <script src="../deps/compatible.js"></script>
        <script type="text/javascript" src="../deps/d3.min.js"></script>
        <script type="text/javascript" src="../deps/d3.layout.min.js"></script>
        <script type="text/javascript" src="../deps/d3.geom.min.js"></script>
        <script type="text/javascript" src="../deps/d3.csv.js"></script>
        <script src="../deps/raphael.min.js"></script>
        <!-- force -->
        <script type="text/javascript" src="../deps/seajs/sea.js"></script>
        <script type="text/javascript">
            var dir = window.location.href.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');
            seajs.config({
                alias: {
                    'datav': dir + '/../datav.js',
                    'force': dir + '/../libs/force.js'
                }
            });
        </script>
        <STYLE type="text/css">
            #chart {
                border-top: 1px dashed #F00;
                border-bottom: 1px dashed #F00;
                padding-left: 20px;
            }
            .textArea {
                border: 2px solid black;
                color: black;
                font-family: monospace;
                height: 3in;
                overflow: auto;
                padding: 0.5em;
                width: 750px;
            }
        </STYLE>
    </head>
    
    <body>
        <div class="body">
            <h1 id="forcedirected_graph">基于K-Means股票关联的数据可视化</h1>
            <div class="gallery" id="chart"></div>
        </div>
        <script type="text/javascript">
            seajs.use(["force", "datav"], function (Force, DataV) {
                // DataV.changeTheme("datav");
                var net = new Force("chart", {
                    width: 800,
                    height: 600,
                    tag: true
                });
                DataV.csv("test3.csv", function (source) {
                    net.setSource(source);
                    net.render();
                });
            });
        </script>
    </body>

</html>

 



 

 

 

 

  • 大小: 4.2 KB
  • 大小: 16.1 KB
6
4
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics