Obsidian | Level 7

## pick up nearest number from data set

In my case, we have three variables - the underlying price, the strike price, and the datadate. When the program picks up the strike price that is nearest to the underlying price, I also need it to consider the datadate. Please see the attached document for a sample.

So basically, I need it to pick the nearest strike price within that given date.

For example, on 2011/1/16, the underlying price is 26.33. The closest strike price is 26.5.

On 2011/1/17, the underlying price is 26.11 and the closest strike price is 26.

1 ACCEPTED SOLUTION

Accepted Solutions
Pyrite | Level 9

## Re: pick up nearest number from data set

If the underlying_price is a constant within a day, you can use a sort and data step to get the nearest strike price.

data sample_new;
set sample;
diff = abs(underlying_price - strike);
run;

proc sort data = sample_new;
run;

data nearest_price;
set sample_new;
run;

2 REPLIES 2
Obsidian | Level 7

## pick up nearest number from data set

In my case, we have three variables - the underlying price, the strike price, and the datadate. When the program picks up the strike price that is nearest to the underlying price, I also need it to consider the datadate. Please see the attached document for a sample.

So basically, I need it to pick the nearest strike price within that given date.

For example, on 2011/1/16, the underlying price is 26.33. The closest strike price is 26.5.

On 2011/1/17, the underlying price is 26.11 and the closest strike price is 26.

Pyrite | Level 9

## Re: pick up nearest number from data set

If the underlying_price is a constant within a day, you can use a sort and data step to get the nearest strike price.

data sample_new;
set sample;
diff = abs(underlying_price - strike);
run;

proc sort data = sample_new;
run;

data nearest_price;
set sample_new;
run;

Discussion stats
• 2 replies
• 703 views
• 2 likes
• 2 in conversation