大宗交易数据挖掘(四)

数据分析

维度初步整理好以后,可以尝试用R去做一些相关性分析,不过效果太差,因为实际情况中,线性回归的效果是很差的。
这里我定义了1个CHANCE的列(Factor),当买入天数(BuyRK)和卖出天数(SellRK)都存在时,则机会为1,否则为0。
当然,这是一个分类的问题,也就少不了用SVM和朴素贝叶斯尝试去做分类,不过效果都非常差(无法整体分类),所以都不展示了。如果第一篇所述,这里选择决策树来分析。
针对1万多条数据,统计的基本情况如下:

>round(prop.table(summary(dzjy$CHANCE)),3)
    0     1 
0.792 0.208 

可以看到,只有21%的大宗交易是有机会的。之前看到有人分析,说大宗交易对于股价的影响为0(涨跌概率50%),这点算是符合的。机会远小于风险(指从逻辑上无法解释,不会产生机会的情况),其中有几类风险是要规避的:
1. 交易量不能超过流通股本的百分之二,这是因为这种行为不太可能是短期的,不符合假设;
2. 距离上一次大宗交易超过5个交易日,因为超频繁的大宗交易不符合假设;
3. 不存在同席位交易,同席位意味着大概率上是自导自演;
4. 近3日波动幅度低于15%,因为中间出现某只股票连续涨/跌停。

在过滤掉以上数据后,得到如下结果:

(b=rpart(CHANCE~Discount+BuyerCount+SellerCount+TradeToSelf+VolumeToCapital+LastDZJYDays+ClosedDays+ZSCloseToMA20+ZSCloseToMA5+CloseToMA20+CloseToMA5+FluctRange3, data=dzjy))

n= 3355 

node), split, n, loss, yval, (yprob)
      * denotes terminal node

1) root 3355 736 0 (0.7806259 0.2193741) *

虽然有机会的概率只提高了1%,但去掉那些数据毫无疑问是必需的。
再来查看折扣率(存在2.17是因为复权),波动幅度等数据:

summary(dzjy$Discount)
     Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
-0.181000 -0.074000 -0.011000  0.004642  0.001500  2.172000 

summary(dzjy$FluctRange3)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
0.00470 0.03430 0.04990 0.05634 0.07220 0.14980 

对这部分数据尝试用决策树求解,找到这样的叶节点:当折扣率介于 [-4%, 0.0%],3日内波动幅度>=3%,交易量占流通股本的比例超过0.013%,指数在其20日线之下11%时(大盘超跌):

rpart(CHANCE~Discount+BuyerCount+SellerCount+TradeToSelf+VolumeToCapital+LastDZJYDays+ClosedDays+ZSCloseToMA20+ZSCloseToMA5+CloseToMA20+CloseToMA5+FluctRange3, data=dzjy[ind1, ])
n= 12 

node), split, n, loss, yval, (yprob)
      * denotes terminal node

1) root 12 1 1 (0.08333333 0.91666667) *

查看具体是哪几天:

> unique(dzjy[ind1, ]$TradeDate)
 [1] "2017-04-25" "2017-11-03" "2017-12-11" "2017-11-30" "2017-10-19" "2017-04-20" "2017-05-09"
 [8] "2017-05-26" "2017-06-01" "2017-06-06" "2017-11-29"

同样,按照这种方法,也找到另一些数据集,如:

rpart(CHANCE~Discount+BuyerCount+SellerCount+TradeToSelf+VolumeToCapital+LastDZJYDays+ClosedDays+ZSCloseToMA20+ZSCloseToMA5+CloseToMA20+CloseToMA5+FluctRange3, data=dzjy2)

n= 95 

node), split, n, loss, yval, (yprob)
      * denotes terminal node

1) root 95 13 1 (0.13684211 0.86315789)  
  2) ZSCloseToMA20< 0.0015 42  9 1 (0.21428571 0.78571429)  
    4) ZSCloseToMA5>=-0.0033 25  8 1 (0.32000000 0.68000000)  
      8) VolumeToCapital>=0.00055 7  3 0 (0.57142857 0.42857143) *
      9) VolumeToCapital< 0.00055 18  4 1 (0.22222222 0.77777778) *
    5) ZSCloseToMA5< -0.0033 17  1 1 (0.05882353 0.94117647) *
  3) ZSCloseToMA20>=0.0015 53  4 1 (0.07547170 0.92452830) *

综合几种情况后,就得到一些较高成功率的筛选规则,剩下的就是止损点的计算了,这是一个反复尝试的过程,估计出止损点是-7%,在买入后第5个交易日止损。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值