如何检查SAS连续10次交易价格是否在上涨?

时间:2014-08-05 06:59:11

标签: sas

我有股票交易的日内价格数据,需要编写代码来确定满足以下条件的实例:价格应该至少连续10次交易。

以下是我的数据样本(时间是当天的分钟数,如果是凌晨1点,我的时间将是60,如果是凌晨2点,我的时间将是120等):

       Obs    Time    Symbol            Price      
       1       288    AA                36.2800     
       2       304    AA                36.2800     
       3       305    AA                36.3400     
       4       307    AA                36.2800     
       5       311    AA                36.1500     
       6       337    AA                36.2000     

我该如何编写此代码?可能循环是必要的,但我无法弄清楚。谢谢。

1 个答案:

答案 0 :(得分:3)

假设没有缺失值,例如:

data want ;
  set have ;
  lagPrice=lag(Price) ;
  if Price>lagPrice and not missing(lagPrice) then Increasing ++ 1 ;
  else Increasing=0 ;

  if Increasing > 10 then Trend=1 ;
run ;

这将标志着增长趋势的第10个记录,以及之后的所有记录。那是你要的吗?或者您正在寻找一种方法来标记趋势中涉及的所有记录?或其他什么?