首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SAS时间间隔数据

SAS时间间隔数据
EN

Stack Overflow用户
提问于 2014-06-18 21:18:07
回答 1查看 201关注 0票数 1

因此,我有一个数据集,其中的交易数据已经与大宗交易合并了,这些交易本质上就是非常大的交易,所有交易都是同时发生的,并由某种大型金融机构执行。

我正试图了解证券价格在大宗交易之后的走势,特别是在大宗交易前后的几分钟内。

数据有一个名为Date_Time的变量,它有日期和时间,格式如下: 08FEB03: 03:20:00 (2003年2月8日凌晨3:20)。当一项交易被归类为整笔交易时,它也有一个虚拟变量,如果是整笔交易,则表示“阻止”,如果不是整笔交易,则表示“阻止”。

我想要做的是找到每一个区块交易,并创建一个变量,它的时间间隔在区块交易之后和之前。例如,如果一个大宗交易发生在2010年2月8日凌晨3:20,那么我想看看之前执行的交易的价格(假设时间是3:16和时间3:19,如果这是之前的交易),也就是在紧接之后的交易(比如3:21和3:23,如果这些是之后的交易)。现在我只试着每隔30分钟看一次。因此,我希望我的数据看起来像这样

代码语言:javascript
复制
Date_Time|Block|Price|Time_From_Block_Trade
08FEB08:03:16:00 "." 113.01 -4
08FEB08:03:19:00 "." 113.02 -1
08FEB08:03:20:00 "Block" 113.02 0
08FEB08:03:21:00 "." 113.07 1
08FEB08:03:23:00 "." 113.09 3

除了我不知道如何创建Time_From_Block_Trade变量之外,我什么都有。dataset中有很多块交易,我想知道如何创建一个变量,该变量的Date_Time值与块交易之前和之后发生的交易之间的差异。

我试着用proc展开来做一些事情,但我似乎想不出答案。对不起,如果这真的很容易,但我是全新的SAS。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-18 22:24:01

要解决这个问题,最简单的方法可能是将其分成几个部分。

首先,有一个数据集,只是你的大宗交易。我假设您有一些其他的变量可以明确地标识交易,而不仅仅是日期时间(如果我正确理解的话,交易可以同时进行到微秒)?如果不是,那么我假设您知道如何返回原始数据集和/或您可以创建一个唯一的ID。

代码语言:javascript
复制
data blocks;
 set trades;
 if block=1;
 keep stockID date_time block_id;
 rename date_time=block_time;
 block_id+1;
run;

现在将其合并回原始数据集。

代码语言:javascript
复制
proc sql;
 create table block_trades as
   select t.*, b.block_id, t.date_time - b.block_time as time_from_block_trade
    from blocks b
     left join trades t
     on b.stockID=t.stockID
      and abs(b.block_time -t.date_time) le 30
      order by b.block_id, t.date_time;
quit;

现在,这应该是一个容易分析的数据集,只有有用的行,一个按组分析的block_id (或类),以及为您计算的块的时间。

对于任何其他复制此数据集的人,这都可以使用这个初始数据集:

代码语言:javascript
复制
data trades;
  call streaminit(7);
    do stockID=1 to 5;
      do date_time = '01JAN2014:10:00:00'dt to '01JAN2014:13:00:00'dt;
        volume = 1000*rand('Uniform');
        if volume > 999 then block=1;
        else block=0;
        output;
      end;
    end;
run;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24295161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档