股票交易:将数据编码
有时,你感兴趣的自变量会是分类变量,而不是一串连续的值。如果我想要研究一个人的体重(自变量)和肺活量(因变量)之间的关系,我的所有数据都应是连续的。然而,如果我想研究性另U(男/女)与肺活量之间的关系,我现在该研究的就是分类变量与连续变量之间的关系。相反,如果我只想分析一个人的肺活量是否正常,我就要对我的因变量进行深入的分析。
在进行市场分析时,有时我们想要分类地査看数据而不是连续地查看数据。在我研究的过程中,我通常会将分类査看与连续查看结合。原因是:
如果你重新打开我们之前创建的数据表,那个研究标准普尔500指数当日收益与前一日表现的关系的“练习表”,你会看到日期数据在A列,开盘价、最高价、最低价和收盘价数据在B列到E列,当日价格变化在F列,次日价格变化在G列。在上一课的分析中,我们按当日价格变化将数据排序,然后又研究了次日平均价格变化与强势交易日或弱势交易日的关系。我们的因变量,次日价格变化,是连续的。我们通过比较平均值来了解自变量与因变量之间的关系。
然而,平均值有时也会误导人:几个极端值可能会影响结果。这些异常值可能使两组平均值之间的差异看起来比正常的大很多。我们可以通过改变因变量来消除这种偏差。我们将次日价格变化放在G列,不过现在要在H列加入一个虚拟变量。这个编码会告诉我们G列中的价格变化究竟是上涨还是下降。这样,在单元格H2中,我会输入(不要输入引号):"=if(G2>0,l,0)”,然后按“回车”。这样,如果单元格G2中的价格变化为正,单元格H2里的数值会变成“1”;如果单元格G2中的价格变化是0或负收益,单元格H2里的数值就会变成“0”。然后,我会点击单元格H2,点击Excel菜单项的“编辑”,点击“复制”,点击单元格H3并拖动鼠标直到数据末尾,然后“回车”。虚拟变量0和1会占据H列的所有单元格。
我们想知道自变量是否与上涨日7T跌日频率或价格振幅有关。
现在,我们来进行前一课讲到的“排序”操作。我们选中工作表中所有单元格——包括新插入的H列——然后点击“编辑”和“复制”。退出数据表,保存文件。打开一个新工作表;点击“编辑”,点击“粘贴,所有数据——没有公式——会显示在这个新工作表中。我们像前一课那样再次将数据按F列(当日价格变化)降
序排列。同样,我们将数据二等分,在G列最后一个数据下面输入“=average(g2:g500)”,再在下面输入“=average(g501:g999)”。
正如上一课所讲的,这个工作表能告诉我们强势交易日(按价格变化排序后的前半部分)次日的平均收益和弱势交易日(按价格变化排序后的后半部分)次日的平均收益的差别。
在H列,紧挨着G列中两个平均值的单元格,我们输入公式“=sum(H2:H500)”,下面输入“=sum(H501:H999)”。这样我们就能知道:强势交易日和弱势交易日后分别有多少个交易日是上涨的。因为我们将数据进行了二等分,如果当日表现与次日价格变化关系不大,我们就应该知道两部分数据大致相等。反过来说,如果我们看到在强势交易日后的上涨天数比弱势交易日后的上涨天数少很多,我们就可以提出设想了。
如果G列中次日变化的平均值有很大差别,但是两种情况下G列中获利天数差不多,那么这就意味着前一日的收益不会对获利日比例有太大影响,但是那一天的交易量可能会受到影响。总的说来,我喜欢看到两个数值之间有明显的差别。这样,如果下跌日后的次日收益的平均值比上涨日后的次日收益的平均值高,并且上涨日的比例比下跌日高,那么,我可以提出一个设想。
注意,我们同样也可以把自变量变成虚拟变量。假如我想看看上涨日或下跌日(自变量)后是否接着出现上涨日或下跌日(因变量),我可以在F列(当日价格变化)编入一个类似前面H列的变量,并在I列以相同的方式为G列(次日价格变化)加入变量。然后,我会把这个工作表复制到一个新工作表,将数据按H列排序,这样我们就可以将1和0分开。然后,我们可以研究H列单元格是1的I列数据的和,并与H列单元格是0的I列数据的和对照。
如果我们想要研究事件对预期收益的影响,虚拟变量会对我们很有帮助。比如,我们可以将所有的星期一编码为1,星期二编码为2,依此类推,然后按编码对次日收益进行排序,来告诉我们收益在一周的某天过后收益更佳。当我们想要建立两个或更多自变量的复杂条件并研究他们与未来收益之间的关系时,编码同样对我们很有帮助。这种编码方法多少会有一些复杂,但这会是下一课的基础。
训练提示
如果你将成交量放入你的工作表,你可以将成交量上涨日编码为1,成交量下跌日编码为0。这样,你就可以比较当日上涨或下跌的成交量与次日收益的关系。现在你需要做的就是将数据按当日价格变化排序,然后再分别按市场上涨或下跌情况进行排序,比较市场上涨或下跌情况与上涨成交量或下跌成交量的关系。