|
楼主

楼主 |
发表于 2012-3-9 13:17:46
|
只看该作者
Top 10 reasons for a modeler to learn PROC FCMP
From Dapangmao's blog on sas-analysis
<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-XGDj_SEJqvE/T1l9NAF644I/AAAAAAAAA8k/Za5UtvaBlJ8/s1600/3-8-2012%2B9-45-50%2BPM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="241" src="http://2.bp.blogspot.com/-XGDj_SEJqvE/T1l9NAF644I/AAAAAAAAA8k/Za5UtvaBlJ8/s400/3-8-2012%2B9-45-50%2BPM.png" width="400" /></a></div><br />
10. New financial functions<br />
<a href="http://www.sasanalysis.com/2011/06/credit-default-swap-pricing-by-proc.html">34 pre-compiled financial functions</a> were shipped with SAS for free, which can be called in DATA step.<br />
<br />
9. A management GUI<br />
There is a nice-looking Java-powered GUI to manage the user-defined functions: <a href="http://support.sas.com/documentation/cdl/en/proc/61895/HTML/default/viewer.htm#a003265389.htm">SAS FCmp function editor</a>.<br />
<br />
8. Dynamic parameters<br />
Parameters <a href="http://www.sasanalysis.com/2011/10/create-nelson-siegel-function-for-yield.html">from other statistical procedures</a> in SAS can be passed to a function. We can use a macro to wrap PROC FCMP to create tons of data-driven functions (temporary or permanent).<br />
<br />
7. Migration from VBA<br />
Excel dominates every desktop. However, using VBA to process large data is just a pain, such as calculating a transition matrix for probability of default. PROC FCMP is <a href="http://www.sasanalysis.com/2012/02/cholesky-decomposition-to-expand-data.html">built on the logic of VBA</a> -- easy to port any Excel macro/functions to SAS.<br />
<br />
6. Backtesting<br />
PROC FCMP loads data into memory. For <a href="http://www.sasanalysis.com/2012/03/rolling-regressions-for-backtesting.html">backtesting task</a>, it is much more efficient than hard-disk based DATA step.<br />
<br />
5. Function/subroutine compiler<br />
A lot of functions/subroutines SAS doesn’t have can be built, such as <a href="http://www.sasanalysis.com/2010/12/proc-fcmp2-binomial-tree-vs-black.html">Binomial tree function</a> or <a href="http://www.sasanalysis.com/2011/04/subroutine-in-sas-to-simulate-asset.html">an asset price simulation subroutine</a>.<br />
<br />
4. Encapsulation<br />
To combine a lot of macros/nested macros for a complicated system, encapsulating the macro variables is a serious concern – PROC FCMP may be <a href="http://www.sasanalysis.com/2011/08/macro-design-pattern-by-proc-fcmp.html">a rescue</a>.<br />
<br />
3. Monte Carlo simulation<br />
The MCMC procedure, the designated procedure for Monte Carlo simulation in SAS, fully support the syntax of PROC FCMP with its <a href="http://support.sas.com/documentation/cdl/en/statug/63962/HTML/default/viewer.htm#statug_mcmc_sect064.htm">BEGINCNST and ENDCNST statements</a>.<br />
<br />
2. Deal with matrix<br />
As part of SAS/BASE, PROC FCMP, allows <a href="http://www.sasanalysis.com/2011/03/array-20-matrix-friendly-array-in-proc.html">all kinds of matrix operations</a> everywhere with a SAS system.<br />
<br />
1. Low level computation<br />
The combination of PROC FCMP and PROC PROTO together wraps C functions in SAS. It is interesting to <a href="http://support.sas.com/resources/papers/proceedings11/083-2011.pdf">compare the efficiency between a C function and a SAS function</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3256159328630041416-240731162948868879?l=www.sasanalysis.com' alt='' /></div><img src="http://feeds.feedburner.com/~r/SasAnalysis/~4/ZxHq14_a19M" height="1" width="1"/> |
|