<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CUYMQ30zeCp7ImA9WhVbE0k.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494</id><updated>2012-05-29T20:59:42.380-05:00</updated><category term="xts" /><category term="Code" /><category term="Interactive Brokers" /><category term="Drawdown" /><category term="LSPM" /><category term="quantmod" /><category term="Data" /><category term="Releases" /><category term="HIstorical Data" /><category term="DEoptim" /><category term="blotter" /><category term="quantstrat" /><category term="Events" /><category term="TTR" /><category term="API" /><category term="IBrokers" /><category term="R" /><category term="Examples" /><category term="Excel" /><title>FOSS Trading</title><subtitle type="html">Algorithmic Trading with Free Open Source Software</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.fosstrading.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>59</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/FossTrading" /><feedburner:info uri="fosstrading" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DEENRH4yeCp7ImA9WhVXFEw.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-1952937232945776510</id><published>2012-04-14T10:18:00.000-05:00</published><updated>2012-04-14T10:18:15.090-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-14T10:18:15.090-05:00</app:edited><title>Long-Overdue Blogroll Update</title><content type="html">I don't think I've updated my blogroll for at least a year... shame on me.&lt;br /&gt;
&lt;br /&gt;
This update is mostly additions.&amp;nbsp; I only removed Max Dama's blog, and that was only because it no longer exists.&amp;nbsp; I left Skill Analytics because it contains excellent information, even though Damian hasn't posted in a long time.&lt;br /&gt;
&lt;br /&gt;
The additions are:&lt;br /&gt;
&lt;a href="http://www.portfolioprobe.com/blog/"&gt;Portfolio Probe&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://physicsoffinance.blogspot.com/"&gt;The Physics of Finance&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://condoroptions.com/category/blog/"&gt;Condor Options&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.milktrader.net/"&gt;Milktrader&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://algorithmzoo.com/"&gt;Algorithm Zoo&lt;/a&gt; (by Milktrader)&lt;a href="http://blog.zhaw.ch/idp/sefblog/"&gt;&lt;br /&gt;SEF-Blog: Signal Extraction and Forecasting&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://systematicinvestor.wordpress.com/"&gt;Systematic Investor&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-1952937232945776510?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PpqVANuWlepCooet7W3QSwuPSAw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PpqVANuWlepCooet7W3QSwuPSAw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PpqVANuWlepCooet7W3QSwuPSAw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PpqVANuWlepCooet7W3QSwuPSAw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=wNmhVOrzz84:--OeBMxXUZQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=wNmhVOrzz84:--OeBMxXUZQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=wNmhVOrzz84:--OeBMxXUZQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=wNmhVOrzz84:--OeBMxXUZQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=wNmhVOrzz84:--OeBMxXUZQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=wNmhVOrzz84:--OeBMxXUZQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=wNmhVOrzz84:--OeBMxXUZQ:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/wNmhVOrzz84" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/1952937232945776510/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=1952937232945776510" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/1952937232945776510?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/1952937232945776510?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/wNmhVOrzz84/long-overdue-blogroll-update.html" title="Long-Overdue Blogroll Update" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2012/04/long-overdue-blogroll-update.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8BQ3Y_eyp7ImA9WhVRFU8.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-8187214680970377949</id><published>2012-03-23T13:53:00.000-05:00</published><updated>2012-03-23T13:54:12.843-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-23T13:54:12.843-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><category scheme="http://www.blogger.com/atom/ns#" term="Code" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>R in Google Summer of Code 2012</title><content type="html">This post is a slightly revised (and "blogified") version of the message &lt;a href="http://braverock.com/brian/resume.html" target="_blank"&gt;Brian Peterson&lt;/a&gt; has sent to various R mailing lists.&lt;br /&gt;
&lt;br /&gt;
Once again, &lt;a href="http://www.r-project.org/" target="_blank"&gt;R&lt;/a&gt; has been accepted as a mentoring organization for the &lt;a href="http://google-melange.appspot.com/gsoc/homepage/google/gsoc2012" target="_blank"&gt;Google Summer of Code (2012)&lt;/a&gt;.&amp;nbsp; We invite students interested in this program to learn more about it.&amp;nbsp; A good starting point is the &lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012" target="_blank"&gt;R GSoC wiki&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Students participating in the program receive US$5,000 for successful completion of a GSoC project, a great resume item, and an opportunity to work with R package authors.&lt;br /&gt;
&lt;br /&gt;
There are four finance-related projects currently on the project ideas list:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012:performanceanalytics" target="_blank"&gt;Performance Attribution&lt;/a&gt;&lt;br /&gt;Add portfolio performance and attribution functionality from Bacon [1] to &lt;a href="http://cran.r-project.org/web/packages/PerformanceAnalytics/" target="_blank"&gt;PerformanceAnalytics&lt;/a&gt; package.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012:meucci" target="_blank"&gt;Advanced Risk and Portfolio Management&lt;/a&gt;&lt;br /&gt;Port &lt;a href="http://www.mathworks.com/products/matlab/" target="_blank"&gt;MATLAB&lt;/a&gt; code published by Attilio Meucci [2,3,4] for risk and portfolio management to R.&amp;nbsp; (FYI: there is already a highly qualified student associated with this project idea).&lt;/li&gt;
&lt;li&gt;&lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012:rtaq" target="_blank"&gt;Extend RTAQ&lt;/a&gt;&lt;br /&gt;Extend the &lt;a href="http://cran.r-project.org/web/packages/RTAQ/" target="_blank"&gt;RTAQ&lt;/a&gt; package with additional data interoperability and volatility measures.&amp;nbsp; (FYI: there is already a highly qualified student associated with this project idea).&lt;/li&gt;
&lt;li&gt;&lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012:portfolioanalytics" target="_blank"&gt;PortfolioAnalytics Optimizer Back-ends&lt;/a&gt;&lt;br /&gt;Add additional closed form and global optimizer backends to &lt;a href="https://r-forge.r-project.org/R/?group_id=579" target="_blank"&gt;PortfolioAnalytics&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
and one that is not specifically finance related, but extends &lt;a href="http://cran.r-project.org/web/packages/xts/" target="_blank"&gt;xts&lt;/a&gt;, which is the most prevalent time series class for finance in R:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012:xts" target="_blank"&gt;Extend xts&lt;/a&gt;&lt;br /&gt;Improve data and model visualization.&amp;nbsp; Extend xts objects to contain mixed types (like data.frames).&amp;nbsp; Add interoperability to existing analytical functions (e.g. &lt;a href="http://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average" target="_blank"&gt;ARIMA&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Holt-Winters#Double_exponential_smoothing" target="_blank"&gt;Holt Winters&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Vector_autoregression" target="_blank"&gt;VAR&lt;/a&gt;).&amp;nbsp; (FYI: there is already a highly qualified student associated with this project idea).&lt;/li&gt;
&lt;/ul&gt;
The list of finance project ideas above is also by no means exhaustive of the proposed R projects.&amp;nbsp;
There are additional non-finance R project ideas listed on the &lt;a href="http://rwiki.sciviews.org/doku.php?id=developers:projects:gsoc2012" target="_blank"&gt;R GSoC wiki&lt;/a&gt;.&amp;nbsp;  Interested students or mentors are encouraged to discuss other project 
ideas on the &lt;a href="http://groups.google.com/group/gsoc-r?pli=1" target="_blank"&gt;gsoc-r Google group&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Those interested in either student or mentor participation should join 
our Google group, as this is the main means of communication.&amp;nbsp; When you 
apply for group membership, please introduce yourself with one sentence,
 so we know you're not a spammer.&lt;br /&gt;
&lt;br /&gt;
Interested students should start working on applications now.&amp;nbsp; The student application process opens on 26 March, and successful students in prior years have often posted draft applications to melange for comment as soon after the opening of the application process as possible.&lt;br /&gt;
&lt;br /&gt;
Note that GSoC is about &lt;u&gt;&lt;b&gt;coding&lt;/b&gt;&lt;/u&gt;.&amp;nbsp; It is not intended to fund research; but many activities with R require code to advance our work, so the program can be very helpful to improving R.&lt;br /&gt;
&lt;br /&gt;
For information, the admins this year are Toby Dylan Hocking and John Nash, with Brian Peterson and Virgilio Gomez as backups.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;References&lt;/u&gt;:&lt;br /&gt;
[1] Carl Bacon “Practical Portfolio Performance Measurement and 
Attribution”, (London, John Wiley &amp;amp; Sons. September 2004) ISBN 
978-0470856796. 2nd Edition May 2008 ISBN 978-0470059289&lt;br /&gt;
&lt;br /&gt;
[2] Meucci, Attilio, Managing 
Diversification (April 1, 2010). Risk, pp. 74-79, May 2009; Bloomberg 
Education &amp;amp; Quantitative Research and Education Paper. Available at 
SSRN: &lt;a class="urlextern" href="http://ssrn.com/abstract=1358533" rel="nofollow" title="http://ssrn.com/abstract=1358533"&gt;http://ssrn.com/abstract=1358533&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
[3] Meucci, Attilio, Exercises in 
Advanced Risk and Portfolio Management - With Step-by-Step Solutions and
 Fully Documented Code (August 15, 2010). Available at SSRN: &lt;a class="urlextern" href="http://ssrn.com/abstract=1447443" rel="nofollow" title="http://ssrn.com/abstract=1447443"&gt;http://ssrn.com/abstract=1447443&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
[4] Meucci, Attilio, Risk and Asset Allocation. Springer Finance (2005) ISBN: 3540222138&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-8187214680970377949?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3Rl819ZS9MMed-sGxODYeg15MBQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Rl819ZS9MMed-sGxODYeg15MBQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3Rl819ZS9MMed-sGxODYeg15MBQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Rl819ZS9MMed-sGxODYeg15MBQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=HvDdPrMegCY:ZABmjpakeHs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=HvDdPrMegCY:ZABmjpakeHs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=HvDdPrMegCY:ZABmjpakeHs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=HvDdPrMegCY:ZABmjpakeHs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=HvDdPrMegCY:ZABmjpakeHs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=HvDdPrMegCY:ZABmjpakeHs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=HvDdPrMegCY:ZABmjpakeHs:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/HvDdPrMegCY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/8187214680970377949/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=8187214680970377949" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/8187214680970377949?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/8187214680970377949?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/HvDdPrMegCY/r-in-google-summer-of-code-2012.html" title="R in Google Summer of Code 2012" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2012/03/r-in-google-summer-of-code-2012.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkIGSHs5eyp7ImA9WhVREks.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-5258015343363977700</id><published>2012-03-20T10:47:00.000-05:00</published><updated>2012-03-20T11:22:09.523-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-20T11:22:09.523-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>R/Finance 2012 Registration Open</title><content type="html">You can find more information on the &lt;a href="http://www.rinfinance.com/" target="_blank"&gt;R/Finance conference website&lt;/a&gt;.&amp;nbsp; Hope to see you in Chicago in May!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The registration for R/Finance 2012 -- which will take place May 11 and 12 in Chicago -- is NOW OPEN!&lt;br /&gt;
&lt;br /&gt;
Building on the success of the three previous conferences in 2009, 2010, and 2011, we expect more than 250 attendees from around the world.&amp;nbsp; R users from industry, academia, and government will join 40+ presenters covering all areas of finance with R.&lt;br /&gt;
&lt;br /&gt;
This year's conference will start earlier in the day on Friday, to accommodate the tremendous line up of speakers for 2012, as well as to provide more time between talks for networking.&lt;br /&gt;
&lt;br /&gt;
We are very excited about the four keynotes by &lt;a href="http://tsdbi.r-forge.r-project.org/" target="_blank"&gt;Paul Gilbert&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Blair_Hull" target="_blank"&gt;Blair Hull&lt;/a&gt;, &lt;a href="http://www.rob-mcculloch.org/" target="_blank"&gt;Rob McCulloch&lt;/a&gt;, and &lt;a href="http://simon.urbanek.info/" target="_blank"&gt;Simon Urbanek&lt;/a&gt;.&amp;nbsp; The main agenda includes nineteen full presentations and eighteen shorter "lightning talks".&amp;nbsp; We are also excited to offer six optional pre-conference seminars on Friday morning.&lt;br /&gt;
&lt;br /&gt;
Once again, we are hosting the R/Finance conference dinner on Friday evening, where you can continue conversations while dining and drinking atop a West Loop restaurant overlooking the Chicago skyline.&lt;br /&gt;
&lt;br /&gt;
More details of the agenda are available at:&lt;br /&gt;
&lt;a href="http://www.rinfinance.com/agenda/" target="_blank"&gt;http://www.RinFinance.com/agenda/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Registration information is available at&lt;br /&gt;
&lt;a href="http://www.rinfinance.com/register/" target="_blank"&gt;http://www.RinFinance.com/register/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
and can also be directly accessed by going to&lt;br /&gt;
&lt;a href="http://www.regonline.com/RFinance2012" target="_blank"&gt;http://www.regonline.com/RFinance2012&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
On behalf of the committee and sponsors, we look forward to seeing you in Chicago!&lt;br /&gt;
&lt;br /&gt;
Gib Bassett, Peter Carl, Dirk Eddelbuettel, Brian Peterson, Dale Rosenthal, Jeffrey Ryan, Joshua Ulrich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Our 2012 Sponsors:&lt;br /&gt;
&lt;a href="http://www.uic.edu/cba/icfd" target="_blank"&gt;International Center for Futures and Derivatives at UIC&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.revolutionanalytics.com/" target="_blank"&gt;Revolution Analytics&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.sybase.com/" target="_blank"&gt;Sybase&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://computational-finance.uw.edu/masters-degree-in-computational-finance" target="_blank"&gt;MS-Computational Finance at University of Washington&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.google.com/" target="_blank"&gt;Google&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.lemnica.com/" target="_blank"&gt;lemnica&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.opengamma.com/" target="_blank"&gt;OpenGamma&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.onetick.com/" target="_blank"&gt;OneTick&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.rstudio.org/" target="_blank"&gt;RStudio&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.tickdata.com/" target="_blank"&gt;Tick Data&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-5258015343363977700?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/sOOeslshSvMsFXpUb0REXxYgNQE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sOOeslshSvMsFXpUb0REXxYgNQE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/sOOeslshSvMsFXpUb0REXxYgNQE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sOOeslshSvMsFXpUb0REXxYgNQE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=NY0SCBJPRPk:e-GyRR0QlGs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=NY0SCBJPRPk:e-GyRR0QlGs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=NY0SCBJPRPk:e-GyRR0QlGs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=NY0SCBJPRPk:e-GyRR0QlGs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=NY0SCBJPRPk:e-GyRR0QlGs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=NY0SCBJPRPk:e-GyRR0QlGs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=NY0SCBJPRPk:e-GyRR0QlGs:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/NY0SCBJPRPk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/5258015343363977700/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=5258015343363977700" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/5258015343363977700?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/5258015343363977700?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/NY0SCBJPRPk/rfinance-2012-registration-open.html" title="R/Finance 2012 Registration Open" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2012/03/rfinance-2012-registration-open.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcMRXo_cSp7ImA9WhVSFEw.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-1624752318374421059</id><published>2012-03-10T15:48:00.000-06:00</published><updated>2012-03-10T15:48:04.449-06:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-10T15:48:04.449-06:00</app:edited><title>Reno 3/10-3/18</title><content type="html">I will be in the Reno, NV area from 3/10-3/18.&amp;nbsp; Contact me if you would like to meet over coffee, lunch, drinks, etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-1624752318374421059?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/biGtKueMoLWQdxDrhI47-9lNO2g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/biGtKueMoLWQdxDrhI47-9lNO2g/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/biGtKueMoLWQdxDrhI47-9lNO2g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/biGtKueMoLWQdxDrhI47-9lNO2g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=jKRuZhB8e1I:7Wv0bhC8fB4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=jKRuZhB8e1I:7Wv0bhC8fB4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=jKRuZhB8e1I:7Wv0bhC8fB4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=jKRuZhB8e1I:7Wv0bhC8fB4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=jKRuZhB8e1I:7Wv0bhC8fB4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=jKRuZhB8e1I:7Wv0bhC8fB4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=jKRuZhB8e1I:7Wv0bhC8fB4:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/jKRuZhB8e1I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/1624752318374421059/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=1624752318374421059" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/1624752318374421059?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/1624752318374421059?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/jKRuZhB8e1I/reno-310-318.html" title="Reno 3/10-3/18" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2012/03/reno-310-318.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ECQXc9fSp7ImA9WhVTGUw.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-3925741414786542902</id><published>2012-03-04T20:33:00.000-06:00</published><updated>2012-03-04T20:47:40.965-06:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-04T20:47:40.965-06:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="DEoptim" /><category scheme="http://www.blogger.com/atom/ns#" term="Releases" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>DEoptim in Parallel</title><content type="html">Running &lt;a href="http://cran.r-project.org/package=DEoptim" target="_blank"&gt;DEoptim&lt;/a&gt; in parallel has been on the development team's wishlist for awhile.&amp;nbsp; It had not been a priority though, because none of us have personally needed it.&amp;nbsp; An opportunity arose when &lt;a href="http://www.econ.kuleuven.be/public/n06054/" target="_blank"&gt;Kris Boudt&lt;/a&gt; approached me about collaborating to add this functionality as part of a consultancy project for a financial services firm.&lt;br /&gt;
&lt;br /&gt;
We were able to add and test the functionality within a week.&amp;nbsp; The latest revision of &lt;a href="https://r-forge.r-project.org/projects/deoptim/" target="_blank"&gt;DEoptim on R-Forge&lt;/a&gt; has the capability to evaluate the objective function on multiple cores using &lt;a href="http://cran.r-project.org/web/packages/foreach/index.html" target="_blank"&gt;foreach&lt;/a&gt;.&amp;nbsp; Very CPU-intensive problems will see speed increases in approximately linear time (less communication overhead).&lt;br /&gt;
&lt;br /&gt;
I gave a &lt;a href="http://files.meetup.com/1772780/20120201_Ulrich_Parallel_DEoptim.pdf" target="_blank"&gt;short presentation&lt;/a&gt; (PDF) on the parallel functionality at the &lt;a href="http://www.meetup.com/Saint-Louis-RUG/" target="_blank"&gt;Saint Louis R User Group&lt;/a&gt; meetup in February.&amp;nbsp; A longer-running version of the code used in the presentation is on R-Forge, in the file &lt;a href="https://r-forge.r-project.org/scm/viewvc.php/pkg/DEoptim/sandbox/largeN_doSNOW.R?view=markup&amp;amp;revision=86&amp;amp;root=deoptim" target="_blank"&gt;DEoptim/sandbox/largeN_doSNOW.R&lt;/a&gt; (revision 86).&lt;br /&gt;
&lt;br /&gt;
There are a few things to keep in mind when using the parallel functionality.&amp;nbsp; I quote from the meetup presentation:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Data communication between nodes can overwhelm gains from processing on multiple CPUs&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Be careful with non-varying objects&lt;/li&gt;
&lt;li&gt;Exclude them from formal function arguments&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Copy them to nodes before optimization (&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;clusterExport&lt;/span&gt;)&lt;/li&gt;
&lt;li&gt;If &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;mu&lt;/span&gt; and &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigma&lt;/span&gt; were formal function arguments, they would be copied to each node for all 2037 function evaluations!&lt;/li&gt;
&lt;/ul&gt;
Please try it and give us feedback.&amp;nbsp; R-Forge has been undergoing major updates, so please anonymously checkout the source and build it yourself if you're unable to download the pre-built source / binaries.&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-3925741414786542902?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4T4BPKf5jisQ1szIFtLv0pmUUxk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4T4BPKf5jisQ1szIFtLv0pmUUxk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4T4BPKf5jisQ1szIFtLv0pmUUxk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4T4BPKf5jisQ1szIFtLv0pmUUxk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=dehhWjJWDOU:0Nym87KiaQA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=dehhWjJWDOU:0Nym87KiaQA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=dehhWjJWDOU:0Nym87KiaQA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=dehhWjJWDOU:0Nym87KiaQA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=dehhWjJWDOU:0Nym87KiaQA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=dehhWjJWDOU:0Nym87KiaQA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=dehhWjJWDOU:0Nym87KiaQA:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/dehhWjJWDOU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/3925741414786542902/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=3925741414786542902" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/3925741414786542902?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/3925741414786542902?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/dehhWjJWDOU/deoptim-in-parallel.html" title="DEoptim in Parallel" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>6</thr:total><feedburner:origLink>http://blog.fosstrading.com/2012/03/deoptim-in-parallel.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EBR3g6fip7ImA9WhRQGU4.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-673559671578457726</id><published>2011-12-15T00:38:00.003-06:00</published><updated>2011-12-15T00:47:36.616-06:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-15T00:47:36.616-06:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>R/Finance 2012 Call for Papers</title><content type="html">I'm excited to share the call for papers for the upcoming R/Finance conference.&amp;nbsp; Even if you don't submit a presentation, I hope to see you there!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Call for Papers:&lt;br /&gt;&lt;br /&gt;R/Finance 2012: Applied Finance with R&lt;br /&gt;
May 11 and 12, 2012&lt;br /&gt;
University of Illinois, Chicago, IL, USA&lt;br /&gt;
&lt;br /&gt;
The fourth annual &lt;a href="http://www.rinfinance.com/"&gt;R/Finance conference&lt;/a&gt; for applied finance using &lt;a href="http://www.r-project.org/"&gt;R&lt;/a&gt; will be held on May 11 and 12, 2012 in Chicago, IL, USA on the campus of the &lt;a href="http://www.uic.edu/"&gt;University of Illinois at Chicago&lt;/a&gt;. The two-day conference will cover topics including portfolio management, time series analysis, advanced risk tools, high-performance computing, market microstructure, and econometrics. All will be discussed within the context of using R as a primary tool for financial risk management, portfolio construction, and trading.&lt;br /&gt;
&lt;br /&gt;
Over the past three years, R/Finance has included attendees from around the world and featured keynote presentations from prominent academics and practitioners. We anticipate another exciting line-up for 2012 -- including keynote presentations from Blair Hull, Paul Gilbert, Rob McCulloch, and Simon Urbanek.&lt;br /&gt;
&lt;br /&gt;
We invite you to submit complete papers or one-page abstracts (in txt or pdf format) for consideration. Academic and practitioner proposals related to R are encouraged. We welcome submissions for full talks, abbreviated "lightning talks", and for a limited number of (longer) pre-conference seminar sessions.&lt;br /&gt;
&lt;br /&gt;
Presenters are strongly encouraged to provide working R code to accompany the presentation/paper. Data sets should also be made public for the purposes of reproducibility (though we realize this may be limited due to contracts with data vendors). Preference may be given to presenters who have released R packages.&lt;br /&gt;
&lt;br /&gt;
Travel and accommodation grants may be available for selected presenters at the discretion of the committee. In addition, the conference will award prizes for best papers. To be eligible for a best paper award, a submission must be a full paper. Extended abstracts, even if a full paper by conference time, are not eligible for a best paper award.&lt;br /&gt;
&lt;br /&gt;
Please send submissions to: &lt;a href="mailto:committee@RinFinance.com"&gt;committee at RinFinance.com&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The submission deadline is January 31, 2012. Submitters will be notified of acceptance via email by February 28, 2012. Notification of whether a presentation will be a long presentation or a lightning talk will also be made at that time.&lt;br /&gt;
&lt;br /&gt;
Additional details will be announced at this website as they become available. Information on previous year's presenters and their presentations are also at the conference website R/Finance &lt;a href="http://www.rinfinance.com/RinFinance2009/presentations/"&gt;2009&lt;/a&gt;, &lt;a href="http://www.rinfinance.com/RinFinance2010/agenda/"&gt;2010&lt;/a&gt;, and &lt;a href="http://www.rinfinance.com/RinFinance2011/agenda/"&gt;2011&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
For the program committee:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Gib Bassett, Peter Carl, Dirk Eddelbuettel, Brian Peterson,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dale Rosenthal, Jeffrey Ryan, Joshua Ulrich&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-673559671578457726?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lRLP_SmlMW28qA-LiV3Gjp3BOEg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lRLP_SmlMW28qA-LiV3Gjp3BOEg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lRLP_SmlMW28qA-LiV3Gjp3BOEg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lRLP_SmlMW28qA-LiV3Gjp3BOEg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=yKdMzdloyCU:Z9F-0yorit4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=yKdMzdloyCU:Z9F-0yorit4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=yKdMzdloyCU:Z9F-0yorit4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=yKdMzdloyCU:Z9F-0yorit4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=yKdMzdloyCU:Z9F-0yorit4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=yKdMzdloyCU:Z9F-0yorit4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=yKdMzdloyCU:Z9F-0yorit4:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/yKdMzdloyCU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/673559671578457726/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=673559671578457726" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/673559671578457726?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/673559671578457726?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/yKdMzdloyCU/rfinance-2012-call-for-papers.html" title="R/Finance 2012 Call for Papers" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/12/rfinance-2012-call-for-papers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAMQXo7cSp7ImA9WhdUEU0.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-1445475902634774395</id><published>2011-09-27T01:26:00.001-05:00</published><updated>2011-09-27T01:26:20.409-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-27T01:26:20.409-05:00</app:edited><title>Denver 10/1-10/5</title><content type="html">I will be traveling to Denver from 10/1-10/5.&amp;nbsp; Drop me a line if you're in the area and would like to meet for coffee / drinks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-1445475902634774395?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1LAoQg4zw2C1m5R475FjWnBg85w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1LAoQg4zw2C1m5R475FjWnBg85w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1LAoQg4zw2C1m5R475FjWnBg85w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1LAoQg4zw2C1m5R475FjWnBg85w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=fs6X5OWW3kA:_cIBdj9biR8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=fs6X5OWW3kA:_cIBdj9biR8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=fs6X5OWW3kA:_cIBdj9biR8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=fs6X5OWW3kA:_cIBdj9biR8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=fs6X5OWW3kA:_cIBdj9biR8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=fs6X5OWW3kA:_cIBdj9biR8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=fs6X5OWW3kA:_cIBdj9biR8:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/fs6X5OWW3kA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/1445475902634774395/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=1445475902634774395" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/1445475902634774395?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/1445475902634774395?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/fs6X5OWW3kA/denver-101-105.html" title="Denver 10/1-10/5" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/09/denver-101-105.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YMSXc5fSp7ImA9WhdXGU0.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-7498763110822293308</id><published>2011-09-01T13:10:00.000-05:00</published><updated>2011-09-01T13:19:48.925-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-01T13:19:48.925-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="TTR" /><category scheme="http://www.blogger.com/atom/ns#" term="Releases" /><title>TTR_0.21-0 on CRAN</title><content type="html">An updated version of &lt;a href="http://cran.r-project.org/web/packages/TTR/"&gt;TTR&lt;/a&gt; is now on &lt;a href="http://cran.r-project.org/"&gt;CRAN&lt;/a&gt;.&amp;nbsp; It contains some much-needed bug fixes (most notably to &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;stockSymbols&lt;/span&gt;), some small changes, and a few new functions.&amp;nbsp; Note that the change to wilderSum will affect functions that use it (e.g. ADX).&lt;br /&gt;
&lt;br /&gt;
Here are the full contents of the CHANGES file:&lt;br /&gt;
&lt;br /&gt;
TTR version 0.21-0&lt;br /&gt;
&amp;nbsp; Changes from version 0.20-2&lt;br /&gt;
&lt;br /&gt;
NEW FEATURES:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Added variable moving average function, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;VMA&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;Added &lt;a href="http://braverock.com/brian/"&gt;Brian Peterson's&lt;/a&gt; price bands function, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;PBands&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;Added &lt;a href="http://cssanalytics.wordpress.com/"&gt;David Varadi's&lt;/a&gt; DVI indicator, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DVI&lt;/span&gt;.&lt;/li&gt;
&lt;/ul&gt;
CHANGES:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;wilder&lt;/span&gt; and &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ratio&lt;/span&gt; arguments to &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DEMA&lt;/span&gt;. Thanks to Matthew Fornari for the suggestion.&lt;/li&gt;
&lt;li&gt;Changed &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;wilderSum&lt;/span&gt; to seed initial value with raw sum. This matches Wilder's original calculations. Thanks to Mahesh Bp for the report.&lt;/li&gt;
&lt;li&gt;The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;BBands sd&lt;/span&gt; calculation now uses the population instead of sample statistic. This is consistent with Bollinger Band literature. Thanks to &lt;a href="http://www.lemnica.com/"&gt;Jeff Ryan&lt;/a&gt; for the patch.&lt;/li&gt;
&lt;/ul&gt;
BUG FIXES:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;Fixed &lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;stockSymbols&lt;/span&gt; for &lt;a href="http://nasdaq.com/"&gt;nasdaq.com&lt;/a&gt; changes.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;Fixed &lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ZLEMA&lt;/span&gt; default ratio by changing it from &lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;2/(n-1)&lt;/span&gt; to &lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: small;"&gt;2/(n+1)&lt;/span&gt;&lt;span style="font-size: small;"&gt;. This makes it consistent with &lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;EMA&lt;/span&gt;. Thanks to &lt;a href="http://dirk.eddelbuettel.com/"&gt;Dirk Eddelbuettel&lt;/a&gt;.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;Corrected close-to-close volatility. Thanks to James Toll for the report.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;adjRatios&lt;/span&gt; f&lt;/span&gt;ailed (spectacularly) if there were missing close prices. Thanks to Garrett See for the report.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-7498763110822293308?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JE1c8ATBIexNQuSZyNrefT-j8g4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JE1c8ATBIexNQuSZyNrefT-j8g4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JE1c8ATBIexNQuSZyNrefT-j8g4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JE1c8ATBIexNQuSZyNrefT-j8g4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=hbWtm6TWeUk:Z7MzdI2PZDU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=hbWtm6TWeUk:Z7MzdI2PZDU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=hbWtm6TWeUk:Z7MzdI2PZDU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=hbWtm6TWeUk:Z7MzdI2PZDU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=hbWtm6TWeUk:Z7MzdI2PZDU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=hbWtm6TWeUk:Z7MzdI2PZDU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=hbWtm6TWeUk:Z7MzdI2PZDU:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/hbWtm6TWeUk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/7498763110822293308/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=7498763110822293308" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/7498763110822293308?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/7498763110822293308?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/hbWtm6TWeUk/ttr021-0-on-cran.html" title="TTR_0.21-0 on CRAN" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/09/ttr021-0-on-cran.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIGQX07cCp7ImA9WhdXEk4.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-759780201875918433</id><published>2011-08-23T20:55:00.000-05:00</published><updated>2011-08-24T20:08:40.308-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-24T20:08:40.308-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="quantstrat" /><category scheme="http://www.blogger.com/atom/ns#" term="Examples" /><category scheme="http://www.blogger.com/atom/ns#" term="Code" /><title>Tactical asset allocation using quantstrat</title><content type="html">As promised in the &lt;a href="http://blog.fosstrading.com/2011/08/introduction-to-quantstrat.html"&gt;introduction to quantstrat&lt;/a&gt;, here is an example strategy.&amp;nbsp; I thought I'd start with the obligatory tactial asset allocation (TAA) strategy.&amp;nbsp; This post will replicate the strategy in the post, &lt;a href="http://blog.fosstrading.com/2009/11/tactical-asset-allocation-using-blotter.html"&gt;tactical asset allocation using blotter&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The "faber" demo in the quanstrat package contains a TAA strategy but it uses a slightly different approach than the code we're trying to replicate.&amp;nbsp; There are two major differences:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;The blotter TAA code initiates a position at the first observation where the close is above the SMA.&amp;nbsp; The demo only initiates a position when the close &lt;i&gt;crosses&lt;/i&gt; the SMA to the upside.&lt;br /&gt;&lt;br /&gt;For example, assume the close is above the SMA at the beginning of the sample.&amp;nbsp; The demo has to wait for the close to drop below the SMA and then cross above it before taking a position; the blotter TAA code initiates a position on the first observation.&lt;br /&gt;&lt;br /&gt; &lt;/li&gt;
&lt;li&gt;The blotter TAA code calculates order size based on total account equity (as stored in the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;UnitSize&lt;/span&gt; object).&amp;nbsp; The demo always uses an order size of 1,000 shares, regardless of total account value (in case you're wondering, yes, capital/equity-aware order sizing is on the to-do list).&lt;/li&gt;
&lt;/ol&gt;
We need to make a few changes to the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;demo(faber)&lt;/span&gt; code to make it work more like the blotter TAA post.&amp;nbsp; First, we change  the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;add.signal&lt;/span&gt; calls to use &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigCrossover&lt;/span&gt; instead of &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigComparison&lt;/span&gt;.&amp;nbsp; This allows us to create an order on the first observation, rather than wait for a crossover.&lt;br /&gt;
&lt;br /&gt;
Next, we need to change the first call to &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;add.rule&lt;/span&gt; (the entry rule). &amp;nbsp;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigComparison&lt;/span&gt; will be &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;TRUE&lt;/span&gt; for every period where the close is above the SMA and we don't want to buy 1000 shares every period, so we need to tell &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ruleSignal&lt;/span&gt; to use the max position order sizing function.&amp;nbsp; We do this by adding &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: small;"&gt;osFUN=osMaxPos&lt;/span&gt; to the list of arguments passed to &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ruleSignal&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
Finally, we need to set the position limits for each instrument.&amp;nbsp; We do this via two calls to &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;addPosLimit&lt;/span&gt; (one for each symbol) and we set the maximum position to 1000 shares and the minimum position to 0 shares.&lt;br /&gt;
&lt;br /&gt;
The modified code is below and even includes some simple evaluation of the results at no extra charge.&amp;nbsp; The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;tradeStats&lt;/span&gt; function has a ton more columns; I've only selected a few to make the output more readable.&amp;nbsp; Feel free to tinker.&lt;br /&gt;
&lt;br /&gt;
NOTE: I wrote this code using the latest quantmod, xts, and zoo from CRAN; and the latest blotter, FinancialInstrument, and quantstrat from R-Forge. &lt;br /&gt;
&lt;br /&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# This code is a slight modification of the quantstrat "faber" demo, intended to replicate&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;# http://blog.fosstrading.com/2009/11/tactical-asset-allocation-using-blotter.html&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;# Uncomment the line below to install the latest packages on R-Forge&lt;span dir="ltr" id=":13o" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;span dir="ltr" id=":13o" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;#install.package&lt;wbr&gt;&lt;/wbr&gt;s(c("quantstrat&lt;wbr&gt;&lt;/wbr&gt;","blotter","Fi&lt;wbr&gt;&lt;/wbr&gt;nancialInstrume&lt;wbr&gt;&lt;/wbr&gt;nt"), repos="&lt;a href="http://r-forge.r-project.org/"&gt;http://r-forge.&lt;wbr&gt;&lt;/wbr&gt;r-project.org&lt;/a&gt;")&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;require(quantstrat)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;require(PerformanceAnalytics)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Set initial values&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;initDate &amp;lt;- "2002-07-31"&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;endDate &amp;lt;- "2009-10-31"&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;initEq &amp;lt;- 100000&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Pull Yahoo Finance data&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;symbols &amp;lt;- c("IEF", "SPY")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;getSymbols(symbols, from=initDate, to=endDate, index.class=c("POSIXt","POSIXct"))&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# adjust for splits/dividends (comment to replicate blotter example)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;#IEF &amp;lt;- adjustOHLC(IEF, use.Adjusted=TRUE)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;#SPY &amp;lt;- adjustOHLC(SPY, use.Adjusted=TRUE)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# convert to monthly&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;IEF &amp;lt;- to.monthly(IEF, indexAt="endof")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;SPY &amp;lt;- to.monthly(SPY, indexAt="endof")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Set up instruments with FinancialInstruments package&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;currency("USD")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;for(symbol in symbols) {&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp; stock(symbol, currency="USD", multiplier=1)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Delete portfolio, account, and order book if they already exist&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;suppressWarnings(rm("account.faber","portfolio.faber",pos=.blotter))&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;suppressWarnings(rm("order_book.faber",pos=.strategy))&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Initialize portfolio and account&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;initPortf("faber", symbols=symbols, initDate=initDate)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;initAcct("faber", portfolios="faber", initDate=initDate, initEq=initEq)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;initOrders(portfolio="faber", initDate=initDate)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Initialize a strategy object&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;stratFaber &amp;lt;- strategy("faber")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Add the 10-month SMA indicator&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;stratFaber &amp;lt;- add.indicator(strategy=stratFaber, name="SMA",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp; arguments=list(x=quote(Cl(mktdata)), n=10), label="SMA10")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# There are two signals:&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# The first is when monthly price crosses over the 10-month SMA&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;stratFaber &amp;lt;- add.signal(stratFaber, name="sigComparison",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp;  arguments=list(columns=c("Close","SMA10"),relationship="gte"), label="Cl.gt.SMA")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# The second is when the monthly price crosses under the 10-month SMA&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;stratFaber &amp;lt;- add.signal(stratFaber, name="sigComparison",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp;  arguments=list(columns=c("Close","SMA10"),relationship="lt"), label="Cl.lt.SMA")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# There are two rules:&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# The first is to buy when the price crosses above the SMA&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;stratFaber &amp;lt;- add.rule(stratFaber, name="ruleSignal",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp;  arguments=list(sigcol="Cl.gt.SMA", sigval=TRUE, orderqty=1000, ordertype="market",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp;  orderside="long", pricemethod="market", TxnFees=-5, osFUN=osMaxPos), type="enter", path.dep=TRUE)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# The second is to sell when the price crosses below the SMA&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;stratFaber &amp;lt;- add.rule(stratFaber, name="ruleSignal",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp;  arguments=list(sigcol="Cl.lt.SMA", sigval=TRUE, orderqty="all", ordertype="market",&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&amp;nbsp;  orderside="long", pricemethod="market", TxnFees=-5), type="exit", path.dep=TRUE)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Set position limits so we don't add to the position every month Close &amp;gt; SMA10&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;addPosLimit("faber", "SPY", timestamp=initDate, maxpos=1000, minpos=0)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;addPosLimit("faber", "IEF", timestamp=initDate, maxpos=1000, minpos=0)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Process the indicators and generate trades&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;out &amp;lt;- try(applyStrategy(strategy=stratFaber, portfolios="faber"))&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;updatePortf("faber")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Evaluate results&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;portRet &amp;lt;- PortfReturns("faber")&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;portRet$Total &amp;lt;- rowSums(portRet, na.rm=TRUE)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;charts.PerformanceSummary(portRet$Total)&lt;/span&gt;&lt;/div&gt;
&lt;div face="&amp;quot;" style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;tradeStats("faber")[,c("Symbol","Num.Trades","Net.Trading.PL","maxDrawdown")]&lt;/span&gt;&lt;span style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-759780201875918433?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xQ9v_eB5YahxJSDi3VKuLDbr-pc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xQ9v_eB5YahxJSDi3VKuLDbr-pc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xQ9v_eB5YahxJSDi3VKuLDbr-pc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xQ9v_eB5YahxJSDi3VKuLDbr-pc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=MvT-5MATS18:6StY5WHim2E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=MvT-5MATS18:6StY5WHim2E:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=MvT-5MATS18:6StY5WHim2E:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=MvT-5MATS18:6StY5WHim2E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=MvT-5MATS18:6StY5WHim2E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=MvT-5MATS18:6StY5WHim2E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=MvT-5MATS18:6StY5WHim2E:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/MvT-5MATS18" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/759780201875918433/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=759780201875918433" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/759780201875918433?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/759780201875918433?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/MvT-5MATS18/tactical-asset-allocation-using.html" title="Tactical asset allocation using quantstrat" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>5</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/08/tactical-asset-allocation-using.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AGRH09fSp7ImA9WhdQEUk.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-4154766294494163667</id><published>2011-08-12T06:48:00.001-05:00</published><updated>2011-08-12T06:48:45.365-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-12T06:48:45.365-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="quantstrat" /><title>Introduction to quantstrat</title><content type="html">&lt;a href="http://r-forge.r-project.org/projects/blotter/"&gt;quantstrat&lt;/a&gt; provides a generic infrastructure to model and backtest signal-based quantitative strategies.&amp;nbsp; It is a high-level abstraction layer (built on xts, FinancialInstrument, blotter, etc.) that allows you to build and test strategies in very few lines of code.&amp;nbsp; quantstrat is still under heavy development but is being used every day on real portfolios.&amp;nbsp; We encourage you to send contributions and test cases to the &lt;a href="http://r-forge.r-project.org/forum/?group_id=316"&gt;project forums&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
This post is a joint effort between me and &lt;a href="http://braverock.com/brian/"&gt;Brian Peterson&lt;/a&gt;.&amp;nbsp; It will describe the underlying philosophy of quantstrat and how quantstrat implements that philosophy.&amp;nbsp; You may have seen some of this in Brian's&amp;nbsp;&lt;a href="http://www.rinfinance.com/agenda/2011/BrianPeterson.pdf"&gt;Quantitative Strategy Development in R&lt;/a&gt; lightning talk at &lt;a href="http://www.rinfinance.com/"&gt;R/Finance 2011&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style="font-size: large;"&gt;Generic Signal-Based Strategy Modeling &lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
A signal-based strategy model first generates indicators.&amp;nbsp; Indicators are quantitative values derived from market data (e.g. moving averages, RSI, volatility bands, channels, momentum, etc.).&amp;nbsp; Indicators should be applied to market data in a vectorized (for fast backtesting) or streaming (for live execution) fashion, and are assumed to be path-independent (i.e. they do not depend on account / portfolio characteristics, current positions, or trades).&lt;br /&gt;
&lt;br /&gt;
The interaction between indicators and market data are used to generate signals (e.g. crossovers, thresholds, multiples, etc.).&amp;nbsp; These signals are points in time at which you &lt;i&gt;may&lt;/i&gt; want to take some action, even though you may not be able to.&amp;nbsp; Like indicators, signals may be applied in a vectorized or streaming fashion, and are assumed to be path-independent.&lt;br /&gt;
&lt;br /&gt;
Rules use market data, indicators, signals, and current account / portfolio characteristics to generate orders.&amp;nbsp; Notice that rules about position sizing, fill simulation, order generation / management, etc. are separate from the indicator and signal generation process.&amp;nbsp; Unlike indicators and signals, rules are generally evaluated in a path-dependent fashion (path-independent rules are supported but are rare in real life) and are aware of all prior market data and current positions at the time of evaluation.&amp;nbsp; Rules may either generate new or modify existing orders (e.g. risk management, fill, rebalance, entry, exit).&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;How quantstrat Models Strategies&lt;/b&gt;&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
quantstrat uses FinancialInstrument to specify instruments (including their currencies) and uses blotter to keep track of transactions, valuations, and P&amp;amp;amp;amp;L across portfolios and accounts.&lt;br /&gt;
&lt;br /&gt;
Indicators are often standard technical analysis functions like those found in TTR; and signals are often specified by the quantstrat sig* functions (i.e. &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigComparison&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigCrossover&lt;/span&gt;, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigFormula&lt;/span&gt;, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigPeak&lt;/span&gt;, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sigThreshold&lt;/span&gt;).&amp;nbsp; Rules are typically specified with the quantstrat &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ruleSignal&lt;/span&gt; function.&lt;br /&gt;
&lt;br /&gt;
The functions used to specify indicators, signals, and rules are not limited to those mentioned previously.&amp;nbsp; The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;name&lt;/span&gt; parameter to &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;add.indicator&lt;/span&gt;, &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;add.signal&lt;/span&gt;, and &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;add.rule&lt;/span&gt; can be &lt;i&gt;any&lt;/i&gt; R function.&amp;nbsp; Because the supporting toolchain is built using xts objects, custom functions will integrate most easily if they return xts objects.&lt;br /&gt;
&lt;br /&gt;
The strategy model is created in layers and makes use of delayed execution.&amp;nbsp; This means strategies can be applied--unmodified--to several different portfolios.&amp;nbsp; Before execution, quantstrat strategy objects do not know what instruments they will be applied to or what parameters will be passed to them.&lt;br /&gt;
&lt;br /&gt;
For example, indicator parameters such as moving average periods or thresholds are likely to affect strategy performance.&amp;nbsp; Default values for parameters may (optionally) be set in the strategy object, or set at call-time via the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;parameters&lt;/span&gt; argument of &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;applyStrategy &lt;/span&gt;(&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;parameters &lt;/span&gt;is a named list, used like the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;arguments&lt;/span&gt; lists)&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
quantstrat models &lt;i&gt;orders&lt;/i&gt;, which may or may not become transactions.&amp;nbsp; This provides a lot of extra ability to evaluate how the strategy is actually working, not working, or could be improved.&amp;nbsp; For example, performance strategies are often affected by how often resting limit orders are changed / replaced / canceled.&amp;nbsp; An order book allows the quantitative strategist to examine market conditions at the time these decisions are made. Also, the order history allows for easy computation of things that are important for many strategies, like order-to-fill ratios.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style="font-size: large;"&gt;What's next?&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt; Examples!&amp;nbsp; You can run some demos while you wait:&lt;br /&gt;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;demo(package="quantstrat")&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Strategy Evaluation&lt;/li&gt;
&lt;li&gt;Parameter Evaluation&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-4154766294494163667?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OPPLPvn5KBBIpt6Vu1JO3SQpGDw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OPPLPvn5KBBIpt6Vu1JO3SQpGDw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OPPLPvn5KBBIpt6Vu1JO3SQpGDw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OPPLPvn5KBBIpt6Vu1JO3SQpGDw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=R6EOU2IysuI:FSZilhIlPnY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=R6EOU2IysuI:FSZilhIlPnY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=R6EOU2IysuI:FSZilhIlPnY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=R6EOU2IysuI:FSZilhIlPnY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=R6EOU2IysuI:FSZilhIlPnY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=R6EOU2IysuI:FSZilhIlPnY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=R6EOU2IysuI:FSZilhIlPnY:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/R6EOU2IysuI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/4154766294494163667/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=4154766294494163667" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4154766294494163667?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4154766294494163667?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/R6EOU2IysuI/introduction-to-quantstrat.html" title="Introduction to quantstrat" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/08/introduction-to-quantstrat.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMMSHY-fSp7ImA9WhdSGE8.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-6411389899607608939</id><published>2011-07-27T22:16:00.003-05:00</published><updated>2011-07-27T22:24:49.855-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-27T22:24:49.855-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Data" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>Creating Financial Instrument metadata in R</title><content type="html">(This is a guest post by Ilya Kipnis)&lt;br /&gt;
&lt;br /&gt;
When trading stocks in a single currency, instrument &lt;a href="http://en.wikipedia.org/wiki/Metadata"&gt;metadata&lt;/a&gt; can be safely ignored because the multiplier is 1 and the currencies are all the same.&amp;nbsp; When doing analysis on fixed income products, options, futures, or other complex derivative instruments, the data defining the properties of these instruments becomes critical to tasks like accounting for value of trades, or comparing notional value between more than one instrument. The &lt;a href="http://r-forge.r-project.org/R/?group_id=316"&gt;FinancialInstrument&lt;/a&gt; package provides a construct for storing metadata for tradeable contracts (referred to as instruments, e.g. stocks, futures, options, etc.) and their root representations.&amp;nbsp; It can be used to create any asset class and complex derivatives, across multiple currencies.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
In &lt;a href="http://blog.fosstrading.com/2009/11/tactical-asset-allocation-using-blotter.html"&gt;tactical asset allocation using blotter&lt;/a&gt;, Joshua Ulrich used FinancialInstrument (blotter depends on it) to create a stock portfolio.&amp;nbsp; FinancialInstrument is also a required dependency of the quantstrat quantitative strategy framework in R (quantstrat will be covered in a later post).&lt;br /&gt;
&lt;br /&gt;
Creating a list of historical symbols is a recurring challenge with historical data on derivative instruments.&amp;nbsp; These symbols tend to follow a deterministic pattern and FinancialInstrument provides utility functions to create the symbols traded over specific periods of time. These symbols could then be used to request historical data from a data vendor or to construct instrument objects in R.&lt;br /&gt;
&lt;br /&gt;
The simplest function for generating a series of symbols is &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;build_series_symbols&lt;/span&gt;.&amp;nbsp; Let's look at it with a small example using crude oil (CL) and STOXX (STXE) futures:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # install.packages("FinancialInstrument", repos="http://R-Forge.R-project.org")&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; require(FinancialInstrument)&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data &amp;lt;- data.frame(primary_id="CL", month_cycle="F,G,H,J,K,M,N,Q,U,V,X,Z")&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data &amp;lt;- rbind(Data, data.frame(primary_id="STXE", month_cycle="H,M,U,Z"))&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp; &amp;nbsp; # &amp;nbsp; primary_id&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; month_cycle&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CL&amp;nbsp;&amp;nbsp; F,G,H,J,K,M,N,Q,U,V,X,Z&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STXE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; H,M,U,Z&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;Data&lt;/span&gt; object contains two columns.&amp;nbsp; The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;primary_id&lt;/span&gt; is the root contract that identifies the instrument, and the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;month_cycle&lt;/span&gt; defines the months the contracts trade in (e.g. “H,M,U,Z” for Mar/Jun/Sep/Dec).&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;build_series_symbols&lt;/span&gt; only needs &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;Data&lt;/span&gt; and &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;yearlist&lt;/span&gt;.&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;yearlist&lt;/span&gt; is the suffix for expiration years and 0, 1, 2 represent 2010, 2011, 2012 in this example.&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;build_series_symbols&lt;/span&gt; returns a vector of series symbols that we could use to request data or create &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;future_series&lt;/span&gt; instruments.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;build_series_symbols(Data, yearlist=c(0,1,2))&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;[1] "CLF0"&amp;nbsp;&amp;nbsp; "CLG0"&amp;nbsp;&amp;nbsp; "CLH0"&amp;nbsp;&amp;nbsp; "CLJ0"&amp;nbsp;&amp;nbsp; "CLK0"&amp;nbsp;&amp;nbsp; "CLM0"&amp;nbsp;&amp;nbsp; "CLN0"&amp;nbsp;&amp;nbsp; "CLQ0"&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;[9] "CLU0"&amp;nbsp;&amp;nbsp; "CLV0"&amp;nbsp;&amp;nbsp; "CLX0"&amp;nbsp;&amp;nbsp; "CLZ0"&amp;nbsp;&amp;nbsp; "STXEH0" "STXEM0" "STXEU0" "STXEZ0"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;[17] "CLF1"&amp;nbsp;&amp;nbsp; "CLG1"&amp;nbsp;&amp;nbsp; "CLH1"&amp;nbsp;&amp;nbsp; "CLJ1"&amp;nbsp;&amp;nbsp; "CLK1"&amp;nbsp;&amp;nbsp; "CLM1"&amp;nbsp;&amp;nbsp; "CLN1"&amp;nbsp;&amp;nbsp; "CLQ1"&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;[25] "CLU1"&amp;nbsp;&amp;nbsp; "CLV1"&amp;nbsp;&amp;nbsp; "CLX1"&amp;nbsp;&amp;nbsp; "CLZ1"&amp;nbsp;&amp;nbsp; "STXEH1" "STXEM1" "STXEU1" "STXEZ1"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;[33] "CLF2"&amp;nbsp;&amp;nbsp; "CLG2"&amp;nbsp;&amp;nbsp; "CLH2"&amp;nbsp;&amp;nbsp; "CLJ2"&amp;nbsp;&amp;nbsp; "CLK2"&amp;nbsp;&amp;nbsp; "CLM2"&amp;nbsp;&amp;nbsp; "CLN2"&amp;nbsp;&amp;nbsp; "CLQ2"&amp;nbsp; &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;[41] "CLU2"&amp;nbsp;&amp;nbsp; "CLV2"&amp;nbsp;&amp;nbsp; "CLX2"&amp;nbsp;&amp;nbsp; "CLZ2"&amp;nbsp;&amp;nbsp; "STXEH2" "STXEM2" "STXEU2" "STXEZ2"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A more complicated task is to create symbols for exchange guaranteed calendar spreads.&amp;nbsp; The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;build_spread_symbols&lt;/span&gt; function creates a vector of symbols for spreads of securities (currently coded for futures calendar spreads but can be extended and generalized) in a very shorthand notation.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;build_spread_symbols&lt;/span&gt; accepts instrument specifications via either a file path or (preferably) a data frame (using the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;file&lt;/span&gt; or &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;data&lt;/span&gt; arguments, respectively). Output can be assigned to an object or written to a file using the optional &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;outputfile&lt;/span&gt; argument.&amp;nbsp; The default starting date is the current date, but the user can manually set a starting date (e.g. historical dates for backtesting, and future dates to create lists of instruments to be traded in the future).&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # read in data that would be suitable for load.instruments on root contracts&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data &amp;lt;- read.csv("&lt;a href="https://docs.google.com/leaf?id=0B8wl4QBejPGiMjI2NTQzZjEtZDRkNC00MDRjLWI2ZDgtMzhjOTM5ZGFkYmFk&amp;amp;hl=en_US"&gt;series_data.csv&lt;/a&gt;", stringsAsFactors=FALSE)&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # set the type to guaranteed_spread&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data$type &amp;lt;- "guaranteed_spread"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # call build_spread_symbols&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; output &amp;lt;- build_spread_symbols(Data[6:7,], start_date="2010-01-01")&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The critical fields in the data (CSV or data frame) are the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;primary_id&lt;/span&gt;, the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;type&lt;/span&gt; (e.g. future, calendar spread, intercommodity spread, etc.), the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;month_cycle&lt;/span&gt;, and the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;active_months&lt;/span&gt; (how many contracts to display).&amp;nbsp; For instance, an &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;active_months&lt;/span&gt; value of 12 on a contract that trades quarterly (“H,M,U,Z”) would create front month contracts for the next 3 years.&amp;nbsp; An &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;active_months&lt;/span&gt; value of 6 on this same quarterly contract would produce 1.5 years.&amp;nbsp; On a contract that trades 12 months a year (“F,G,H,J,K,M,N,Q,U,V,X,Z”), an &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;active_months&lt;/span&gt; value of 12 would produce 1 year of contracts, and a value of 6 would only produce half a year.&lt;br /&gt;
&lt;br /&gt;
Lastly, the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;contracts_ahead&lt;/span&gt; field specifies the month spread on calendar spread type securities.&amp;nbsp; Note that these are &lt;b&gt;contracts&lt;/b&gt; ahead and not months ahead.&amp;nbsp; For example, if you consider a contract trading “H,M,U,Z” vs. a contract trading “F,G,H,J,K,M,N,Q,U,V,X,Z”, a value of 1 for the “H,M,U,Z” contract would create an H1-M1 spread or the like, while a value of 1 with the 12-month traded contract would create an F1-G1 spread.&lt;br /&gt;
&lt;br /&gt;
The rest of the columns simply get carried over, for further use in other programs/scripts/procedures, such as the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;load.instruments&lt;/span&gt; function.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;About the Author: Ilya Kipnis holds a Master's degree in Statistics from Rutgers, and uses and contributes to the R packages blotter, FinancialInstrument, and quantstrat. Ilya may be contacted for consulting and full-time opportunities in finance at ilya.kipnis@gmail.com.&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-6411389899607608939?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8KnqJ__JgpIKfBFpW2jxaDBeCc4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8KnqJ__JgpIKfBFpW2jxaDBeCc4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8KnqJ__JgpIKfBFpW2jxaDBeCc4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8KnqJ__JgpIKfBFpW2jxaDBeCc4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=WwIv_piIsYg:833eAoPGmtI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=WwIv_piIsYg:833eAoPGmtI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=WwIv_piIsYg:833eAoPGmtI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=WwIv_piIsYg:833eAoPGmtI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=WwIv_piIsYg:833eAoPGmtI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=WwIv_piIsYg:833eAoPGmtI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=WwIv_piIsYg:833eAoPGmtI:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/WwIv_piIsYg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/6411389899607608939/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=6411389899607608939" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6411389899607608939?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6411389899607608939?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/WwIv_piIsYg/creating-financial-instrument-metadata.html" title="Creating Financial Instrument metadata in R" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/07/creating-financial-instrument-metadata.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4EQXs4cCp7ImA9WhZbGEU.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-4604512379299997172</id><published>2011-06-23T21:00:00.001-05:00</published><updated>2011-06-23T21:01:40.538-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-23T21:01:40.538-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>The R Journal, Volume 3/1</title><content type="html">The &lt;a href="http://journal.r-project.org/archive/2011-1/2011-1_index.html"&gt;most recent issue&lt;/a&gt; of &lt;i&gt;&lt;a href="http://journal.r-project.org/"&gt;The R Journal&lt;/a&gt;&lt;/i&gt; was recently published.&amp;nbsp; If you're not a regular reader, you should at least check out the following three  contributed articles (listed in order of appearance).&lt;br /&gt;
&lt;ol&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://journal.r-project.org/archive/2011-1/RJournal_2011-1_Chalabi%7Eet%7Eal.pdf"&gt;Rmetrics - timeDate Package&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://journal.r-project.org/archive/2011-1/RJournal_2011-1_Ardia%7Eet%7Eal.pdf"&gt;Differential Evolution with DEoptim&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://journal.r-project.org/archive/2011-1/RJournal_2011-1_Kane%7Eet%7Eal.pdf"&gt;Analyzing an Electronic Limit Order Book&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;


&lt;/ol&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-4604512379299997172?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TZ2DPzMiTI5m2w_tcEmK4Op6Gug/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TZ2DPzMiTI5m2w_tcEmK4Op6Gug/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TZ2DPzMiTI5m2w_tcEmK4Op6Gug/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TZ2DPzMiTI5m2w_tcEmK4Op6Gug/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=SlJrrQ9aTa0:By1TkHuJmdQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=SlJrrQ9aTa0:By1TkHuJmdQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=SlJrrQ9aTa0:By1TkHuJmdQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=SlJrrQ9aTa0:By1TkHuJmdQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=SlJrrQ9aTa0:By1TkHuJmdQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=SlJrrQ9aTa0:By1TkHuJmdQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=SlJrrQ9aTa0:By1TkHuJmdQ:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/SlJrrQ9aTa0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/4604512379299997172/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=4604512379299997172" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4604512379299997172?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4604512379299997172?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/SlJrrQ9aTa0/r-journal-volume-31.html" title="The R Journal, Volume 3/1" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/06/r-journal-volume-31.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcDQXk4cSp7ImA9WhZVF0w.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-4354325662013290650</id><published>2011-05-29T18:00:00.001-05:00</published><updated>2011-05-29T18:01:10.739-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-29T18:01:10.739-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>R/Finance 2011 Presentations are online</title><content type="html">For those of you who don't subscribe to the &lt;a href="https://stat.ethz.ch/mailman/listinfo/r-sig-finance"&gt;R-SIG-Finance&lt;/a&gt; mailing list:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt; You really should &lt;a href="https://stat.ethz.ch/mailman/listinfo/r-sig-finance"&gt;subscribe&lt;/a&gt; ;-)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://dirk.eddelbuettel.com/"&gt;Dirk Eddelbuettel&lt;/a&gt; &lt;a href="https://stat.ethz.ch/pipermail/r-sig-finance/2011q2/007986.html"&gt;announced&lt;/a&gt; the R/Finance 2011 presentations are now available.&lt;/li&gt;
&lt;/ol&gt;
I've included the entire announcement (with some hyperlinks) below.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;
The organizing committee for the R/Finance 2011 conference is pleased to announce the availability of presentation slides from the 3rd annual R/Finance conference.&amp;nbsp; This year's two-day conference once again attracted over 200 participants from across the globe. Academics, students and industry professionals enjoyed almost 30 talks covering trading, optimization, risk management and more --- all using R!&lt;br /&gt;
&lt;br /&gt;
The majority of these presentations are now available for download at:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://www.rinfinance.com/agenda/"&gt;http://www.RinFinance.com/agenda/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
This year we began offering prizes for the best paper submissions.&amp;nbsp; The 2011 recipients are Robert Gramacy (University of Chicago) and David Matteson (Cornell University) who each won USD 1000.&amp;nbsp; Also new was a graduate student travel award: Mikko Niemenmaa (Aalto University) and Clément Dunand-Châtellet (École Polytechnique) each received USD 500.&lt;br /&gt;
&lt;br /&gt;
With this, the organizing committee would like to thank our lead conference sponsors, the &lt;a href="http://www.uic.edu/cba/icfd/"&gt;International Center for Futures and Derivatives&lt;/a&gt; at &lt;a href="http://www.uic.edu/"&gt;UIC&lt;/a&gt; and &lt;a href="http://www.revolutionanalytics.com/"&gt;Revolution Analytics&lt;/a&gt;, as well as our conference sponsors &lt;a href="http://www.onetick.com/web1/index.php"&gt;OneMarketData&lt;/a&gt;, &lt;a href="http://www.rstudio.org/"&gt;RStudio&lt;/a&gt; and &lt;a href="http://www.lemnica.com/"&gt;lemnica&lt;/a&gt; for their continued support.&lt;br /&gt;
&lt;br /&gt;
The organising committee would also like to thank all of the presenters and participants for making R/Finance 2011 so successful.&amp;nbsp; We look forward to seeing you in 2012, with the prospective dates of May 17 - 19 to be confirmed.&lt;br /&gt;
&lt;br /&gt;
For the organizing committee,&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Gib Bassett, Peter Carl, Dirk Eddelbuettel, Brian Peterson, &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dale Rosenthal, Jeffrey Ryan, Joshua Ulrich&lt;/blockquote&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-4354325662013290650?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/it3oBlxuGa5ShD7NlYDV9IJFNhw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/it3oBlxuGa5ShD7NlYDV9IJFNhw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/it3oBlxuGa5ShD7NlYDV9IJFNhw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/it3oBlxuGa5ShD7NlYDV9IJFNhw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=mR1aL8zgPkE:e3ExLNMpNHI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=mR1aL8zgPkE:e3ExLNMpNHI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=mR1aL8zgPkE:e3ExLNMpNHI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=mR1aL8zgPkE:e3ExLNMpNHI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=mR1aL8zgPkE:e3ExLNMpNHI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=mR1aL8zgPkE:e3ExLNMpNHI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=mR1aL8zgPkE:e3ExLNMpNHI:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/mR1aL8zgPkE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/4354325662013290650/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=4354325662013290650" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4354325662013290650?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4354325662013290650?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/mR1aL8zgPkE/rfinance-2011-presentations-are-online.html" title="R/Finance 2011 Presentations are online" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/05/rfinance-2011-presentations-are-online.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0UASXg7cCp7ImA9WhZXEko.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-634898587410015869</id><published>2011-05-01T13:38:00.002-05:00</published><updated>2011-05-01T13:40:48.608-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-01T13:40:48.608-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="LSPM" /><category scheme="http://www.blogger.com/atom/ns#" term="Examples" /><title>Timely Portfolio: LSPM Examples</title><content type="html">&lt;a href="http://timelyportfolio.blogspot.com/"&gt;Timely Portfolio&lt;/a&gt; has been doing some interesting work with &lt;a href="http://www.ralphvince.com/"&gt;Ralph Vince's&lt;/a&gt; &lt;a href="http://www.amazon.com/gp/product/0470455950?ie=UTF8&amp;amp;tag=fotr09-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0470455950"&gt;Leverage Space Model&lt;/a&gt; via the &lt;a href="http://r-forge.r-project.org/projects/lspm"&gt;LSPM&lt;/a&gt; &lt;a href="http://www.r-project.org/"&gt;R&lt;/a&gt; package.

Here's a short list of his most recent LSPM-related posts:
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://timelyportfolio.blogspot.com/2011/03/leverage-space-trading-model.html"&gt;The Leverage Space Trading Model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://timelyportfolio.blogspot.com/2011/04/bond-market-as-casino-game-part-1.html"&gt;Bond Market as a Casino Game Part 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://timelyportfolio.blogspot.com/2011/04/bond-market-as-casino-game-part-2.html"&gt;Bond Market as a Casino Game Part 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://timelyportfolio.blogspot.com/2011/04/slightly-different-use-of-ralph-vinces.html"&gt;Slightly Different Use of Ralph Vince’s Leverage Space Trading Model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://timelyportfolio.blogspot.com/2011/04/another-use-of-lspm-in-tactical.html"&gt;Another Use of LSPM in Tactical Portfolio Allocation&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
I encourage those of you who are interested in LSPM and/or R to check out his blog.&amp;nbsp; I personally love how much code he shares!&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-634898587410015869?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HY66uldtF3IAIBSu7RjDIi3F7VM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HY66uldtF3IAIBSu7RjDIi3F7VM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HY66uldtF3IAIBSu7RjDIi3F7VM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HY66uldtF3IAIBSu7RjDIi3F7VM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=kjlUVB-yfCw:3CzbrR3jfFw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=kjlUVB-yfCw:3CzbrR3jfFw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=kjlUVB-yfCw:3CzbrR3jfFw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=kjlUVB-yfCw:3CzbrR3jfFw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=kjlUVB-yfCw:3CzbrR3jfFw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=kjlUVB-yfCw:3CzbrR3jfFw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=kjlUVB-yfCw:3CzbrR3jfFw:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/kjlUVB-yfCw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/634898587410015869/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=634898587410015869" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/634898587410015869?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/634898587410015869?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/kjlUVB-yfCw/timely-portfolio-lspm-examples.html" title="Timely Portfolio: LSPM Examples" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/05/timely-portfolio-lspm-examples.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYERH87eSp7ImA9WhZbF0o.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-7981006284734210912</id><published>2011-04-26T08:39:00.001-05:00</published><updated>2011-06-22T15:55:05.101-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-22T15:55:05.101-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="LSPM" /><title>Leverage Space Indexes Announced</title><content type="html">PRESS RELEASE&lt;br /&gt;
###&lt;br /&gt;
&lt;br /&gt;
The Leverage Space Portfolio (LSP) strategy seeks to maximize the probability of equity portfolio profitability by employing a risk-control process focused on capital preservation and drawdown management. Compared to a traditional buy-and-hold portfolio, an LSP-based portfolio aims for more consistent returns with lower risk.&lt;br /&gt;
&lt;br /&gt;
The indexes, scheduled to be launched in the second half of 2011, can serve as the basis of both passive and active investment funds, including exchange-traded funds, mutual funds, and institutional accounts, around the world.&lt;br /&gt;
&lt;br /&gt;
"We believe the marketplace will welcome our new family of indexes that applies this unique portfolio risk-management theory," said Michael A. Petronella, President, Dow Jones Indexes.&amp;nbsp; "These innovative techniques aspire to change the paradigm of the professional investment management process while providing Dow Jones Indexes with an opportunity to expand our roster of risk-based indexes."&lt;br /&gt;
&lt;br /&gt;
Dow Jones Indexes has fully automated all elements of the LSP strategy, allowing for universal, systematic, and transparent application of a rules-based strategy to equity portfolios of any size or composition.&lt;br /&gt;
&lt;br /&gt;
"The association with Dow Jones Indexes is, to us, a commercial validation on the highest order of our portfolio management ideas," LSP Partners’ Mr. Vince said. "We're extremely proud to collaborate with the world’s foremost index provider."&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Journalists may e-mail questions regarding this press release to media@djindexes.com or contact Dow Jones Indexes press office:&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;New York:&lt;/b&gt; +1-212-597-5720&lt;br /&gt;
&lt;b&gt;London:&lt;/b&gt; +44-20-7796-7247&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;About Dow Jones Indexes&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://www.djindexes.com/"&gt;Dow Jones Indexes&lt;/a&gt; is a leading full-service index provider that develops, maintains and licenses indexes for use as benchmarks and as the basis of investment products. Best-known for the Dow Jones Industrial Average, Dow Jones Indexes offers more than 130,000 equity indexes as well as fixed-income and alternative indexes, including measures of hedge funds, commodities and real estate. Dow Jones Indexes employs clear, unbiased and systematic methodologies that are fully integrated within index families. Dow Jones Indexes is part of a joint venture company owned 90 percent by &lt;u&gt;CME Group Inc.&lt;/u&gt; and 10 percent by &lt;u&gt;Dow Jones &amp;amp; Company&lt;/u&gt;, Inc., a &lt;u&gt;News Corporation&lt;/u&gt; company (NASDAQ: NWS, NWSA; ASX: NWS, NWSLV).&lt;br /&gt;
&lt;br /&gt;
"Dow Jones®," "Dow Jones Indexes," and all other index names listed above are service marks of Dow Jones Trademark Holdings LLC ("Dow Jones"), and have been licensed for use by CME Group Index Services LLC ("CME Indexes").&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;About LSP Partners&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
Ralph Vince and Richard Wilkie formed LSP Partners to evolve the concepts introduced in Mr.&amp;nbsp; Vince’s series of books on portfolio management following a breakthrough discovery in portfolio position sizing algorithms. A recognized authority on position sizing in trading, Mr. Vince has worked with institutional asset management companies, sovereign wealth funds and private traders for more than 30 years. He has written numerous books and professional papers on money management for trading, and introduced new statistical techniques that are in widespread use throughout the industry today. Mr. Vince also conducts portfolio riskmanagement workshops for institutional portfolio managers. For more information about LSP Partners, please see &lt;a href="http://draft.blogger.com/www.ralphvince.com"&gt;www.ralphvince.com&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-7981006284734210912?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hxv9xPH7kdCAwWBxO7KMqHL_NoU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hxv9xPH7kdCAwWBxO7KMqHL_NoU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hxv9xPH7kdCAwWBxO7KMqHL_NoU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hxv9xPH7kdCAwWBxO7KMqHL_NoU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=9XFvg3vzmvE:6X1eJQKmS4E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=9XFvg3vzmvE:6X1eJQKmS4E:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=9XFvg3vzmvE:6X1eJQKmS4E:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=9XFvg3vzmvE:6X1eJQKmS4E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=9XFvg3vzmvE:6X1eJQKmS4E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=9XFvg3vzmvE:6X1eJQKmS4E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=9XFvg3vzmvE:6X1eJQKmS4E:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/9XFvg3vzmvE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/7981006284734210912/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=7981006284734210912" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/7981006284734210912?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/7981006284734210912?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/9XFvg3vzmvE/leverage-space-etfs-announced.html" title="Leverage Space Indexes Announced" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/04/leverage-space-etfs-announced.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYMSHc9eip7ImA9WhZSGUk.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-6664943619988798270</id><published>2011-04-04T11:47:00.001-05:00</published><updated>2011-04-04T13:53:09.962-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-04T13:53:09.962-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Releases" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>RQuantLib Windows binary on CRAN</title><content type="html">&lt;a href="http://dirk.eddelbuettel.com/"&gt;Dirk Eddelbuettel&lt;/a&gt; has recently released &lt;a href="http://dirk.eddelbuettel.com/blog/2011/04/04/#rquantlib_0.3.7"&gt;RQuantLib-0.3.7&lt;/a&gt;, which contains the necessary QuantLib builds to allow the CRAN servers to build the Windows binary.&lt;br /&gt;
&lt;br /&gt;
This (thankfully) makes my post on &lt;a href="http://blog.fosstrading.com/2010/12/build-rquantlib-on-32-bit-windows.html"&gt;how to build RQuantLib on 32-bit Windows&lt;/a&gt; unnecessary for casual users, but may be useful for those who want to develop RQuantLib on Windows.&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-6664943619988798270?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-lGrJ-2xZ2SqTBq76z97bs8j6Kc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-lGrJ-2xZ2SqTBq76z97bs8j6Kc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-lGrJ-2xZ2SqTBq76z97bs8j6Kc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-lGrJ-2xZ2SqTBq76z97bs8j6Kc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=Ew2O4PM-IAU:nIZMJfvx_nM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=Ew2O4PM-IAU:nIZMJfvx_nM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=Ew2O4PM-IAU:nIZMJfvx_nM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=Ew2O4PM-IAU:nIZMJfvx_nM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=Ew2O4PM-IAU:nIZMJfvx_nM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=Ew2O4PM-IAU:nIZMJfvx_nM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=Ew2O4PM-IAU:nIZMJfvx_nM:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/Ew2O4PM-IAU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/6664943619988798270/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=6664943619988798270" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6664943619988798270?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6664943619988798270?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/Ew2O4PM-IAU/rquantlib-windows-binary-on-cran.html" title="RQuantLib Windows binary on CRAN" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/04/rquantlib-windows-binary-on-cran.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04CRXw8eip7ImA9WhZVFkU.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-6223001802939510003</id><published>2011-03-26T09:54:00.001-05:00</published><updated>2011-05-29T11:19:24.272-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-29T11:19:24.272-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Excel" /><category scheme="http://www.blogger.com/atom/ns#" term="Examples" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>How to backtest a strategy in R</title><content type="html">This is the third post in the &lt;a href="http://blog.fosstrading.com/2011/02/backtesting-in-excel-and-r.html"&gt;Backtesting in Excel and R&lt;/a&gt; series and it will show how to backtest a simple strategy in R.&amp;nbsp; It will follow the 4 steps Damian outlined in his post on &lt;a href="http://blog.fosstrading.com/2011/03/how-to-backtest-strategy-in-excel.html"&gt;how to backtest a simple strategy in Excel&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Step 1: Get the data&lt;/b&gt;&lt;br /&gt;
The &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;getSymbols&lt;/span&gt; function in &lt;a href="http://www.quantmod.com/"&gt;quantmod&lt;/a&gt; makes this step easy if you can use daily data from &lt;a href="http://finance.yahoo.com/"&gt;Yahoo Finance&lt;/a&gt;.&amp;nbsp; There are also "methods" (not in the strict sense) to pull data from other sources (FRED, Google, Oanda, R save files, databases, etc.).&amp;nbsp; You could also use them as a template to write a custom function for a particular vendor you use.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# run the command below if quantmod isn't already installed&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# install.packages("quantmod")&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# use the quantmod package (loads TTR, xts, and zoo)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;require(quantmod)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# pull SPX data from Yahoo (getSymbols returns an xts object)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;getSymbols("^GSPC")&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Step 2: Create your indicator&lt;/b&gt;&lt;br /&gt;
The &lt;a href="http://cran.r-project.org/web/packages/TTR/"&gt;TTR package&lt;/a&gt; contains a multitude of indicators.&amp;nbsp; The indicators are written to make it easy to &lt;a href="http://www.rinfinance.com/agenda/2010/JoshUlrich.pdf"&gt;combine them in creative and unconventional ways&lt;/a&gt;.&amp;nbsp; Starting with revision 106 on R-forge, TTR has a &lt;a href="http://marketsci.wordpress.com/2010/07/27/css-analytics%E2%80%99-dvi-indicator-revealed/"&gt;DVI indicator&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# calculate DVI indicator&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;dvi &amp;lt;- DVI(Cl(GSPC))&amp;nbsp; # Cl() extracts the close price column&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Step 3: Construct your trading rule&lt;/b&gt;&lt;br /&gt;
Since this trading rule is simple--we're long 100% if the DVI is below 0.5 and short 100% otherwise--it can be written in a single line.&amp;nbsp; More elaborate rules and/or position sizings can be done as well, but require more code (&lt;a href="http://blog.fosstrading.com/2009/05/rsi2-with-position-sizing.html"&gt;RSI(2) with Position Sizing&lt;/a&gt; is an example of more complex position sizing rules).&amp;nbsp; Also notice that the signal vector is lagged, which avoids look-ahead bias.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# create signal: (long (short) if DVI is above (below) 0.5)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# lag so yesterday's signal is applied to today's returns&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;sig &amp;lt;- Lag(ifelse(dvi$dvi &amp;lt; 0.5, 1, -1))&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Step 4: The trading rules/equity curve&lt;/b&gt;&lt;br /&gt;
As in Damian's example, the code below is a simplified approach that is frictionless and does not account for slippage.&amp;nbsp; The code below takes today's percentage return and multiplies it by yesterday's signal / position size (always +/- 100% in this example).&amp;nbsp; I also subset the system returns to match the results in the &lt;a href="http://dl.dropbox.com/u/17693/DVI%20long-short.xlsx"&gt;Excel file&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# calculate signal-based returns&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;ret &amp;lt;- ROC(Cl(GSPC))*sig&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# subset returns to match data in Excel file&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;ret &amp;lt;- ret['2009-06-02/2010-09-07']&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Step 5: Evaluate strategy performance&lt;/b&gt;&lt;br /&gt;
Damian mentioned the importance of evaluating your strategy.&amp;nbsp; Fortunately for R users, the &lt;a href="http://cran.r-project.org/web/packages/PerformanceAnalytics/"&gt;PerformanceAnalytics package&lt;/a&gt; makes this easy.&amp;nbsp; With a few lines of code we can view the drawdowns, downside risks, and a performance summary.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# use the PerformanceAnalytics package&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# install.packages("PerformanceAnalytics")&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;require(PerformanceAnalytics)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# create table showing drawdown statistics&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;table.Drawdowns(ret, top=10)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# create table of downside risk estimates&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;table.DownsideRisk(ret)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# chart equity curve, daily performance, and drawdowns&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;charts.PerformanceSummary(ret)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
That's all there is to backtesting a simple strategy in R.&amp;nbsp; It wasn't that intimidating, was it?&amp;nbsp; Please leave feedback if you're moving your backtesting from Excel to R and there's something you're hung up on or you have an awesome tip you'd like to share.&lt;br /&gt;
&lt;br /&gt;
Here's a succinct version of the code in the above post if you want to be able to copy / paste it all in one block:&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;require(quantmod)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;require(PerformanceAnalytics)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Step 1: Get the data&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;getSymbols("^GSPC")&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Step 2: Create your indicator&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;dvi &amp;lt;- DVI(Cl(GSPC))&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Step 3: Construct your trading rule&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;sig &amp;lt;- Lag(ifelse(dvi$dvi &amp;lt; 0.5, 1, -1))&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Step 4: The trading rules/equity curve&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;ret &amp;lt;- ROC(Cl(GSPC))*sig&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;ret &amp;lt;- ret['2009-06-02/2010-09-07']&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;eq &amp;lt;- exp(cumsum(ret))&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;plot(eq)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;# Step 5: Evaluate strategy performance&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;table.Drawdowns(ret, top=10)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;table.DownsideRisk(ret)&lt;/span&gt;&lt;/div&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;
&lt;span style="font-size: x-small;"&gt;charts.PerformanceSummary(ret)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-6223001802939510003?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ONmAXxhzBQS6CNYgr2jivOkQDL4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ONmAXxhzBQS6CNYgr2jivOkQDL4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ONmAXxhzBQS6CNYgr2jivOkQDL4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ONmAXxhzBQS6CNYgr2jivOkQDL4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nKVLRlegOb4:gKjOjUeUD2U:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nKVLRlegOb4:gKjOjUeUD2U:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=nKVLRlegOb4:gKjOjUeUD2U:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nKVLRlegOb4:gKjOjUeUD2U:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=nKVLRlegOb4:gKjOjUeUD2U:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nKVLRlegOb4:gKjOjUeUD2U:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nKVLRlegOb4:gKjOjUeUD2U:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/nKVLRlegOb4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/6223001802939510003/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=6223001802939510003" title="33 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6223001802939510003?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6223001802939510003?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/nKVLRlegOb4/how-to-backtest-strategy-in-r.html" title="How to backtest a strategy in R" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>33</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/03/how-to-backtest-strategy-in-r.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QGRHw6eCp7ImA9WhZTE0o.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-6859960578139895374</id><published>2011-03-17T11:25:00.003-05:00</published><updated>2011-03-17T11:28:45.210-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-17T11:28:45.210-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="LSPM" /><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><title>Risk-Opportunity Analysis: Houston</title><content type="html">I will be attending &lt;a href="http://www.ralphvince.com/"&gt;Ralph Vince's&lt;/a&gt; risk-opportunity analysis workshop in Houston this weekend.&amp;nbsp; I'll be in town Friday-Monday.&amp;nbsp; Drop me a note if you're in the area and would like to meet for coffee / drinks.&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-6859960578139895374?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uHBPuQwUTk6Zsh8HkQDJ1vK47Pw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uHBPuQwUTk6Zsh8HkQDJ1vK47Pw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uHBPuQwUTk6Zsh8HkQDJ1vK47Pw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uHBPuQwUTk6Zsh8HkQDJ1vK47Pw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=KtnIwdoI5NQ:_RZGMih9c_g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=KtnIwdoI5NQ:_RZGMih9c_g:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=KtnIwdoI5NQ:_RZGMih9c_g:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=KtnIwdoI5NQ:_RZGMih9c_g:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=KtnIwdoI5NQ:_RZGMih9c_g:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=KtnIwdoI5NQ:_RZGMih9c_g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=KtnIwdoI5NQ:_RZGMih9c_g:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/KtnIwdoI5NQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/6859960578139895374/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=6859960578139895374" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6859960578139895374?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6859960578139895374?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/KtnIwdoI5NQ/risk-opportunity-analysis-houston.html" title="Risk-Opportunity Analysis: Houston" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/03/risk-opportunity-analysis-houston.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUDRHcyfCp7ImA9WhZTEUg.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-7184148659549713368</id><published>2011-03-14T20:57:00.000-05:00</published><updated>2011-03-14T20:57:55.994-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-14T20:57:55.994-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Excel" /><category scheme="http://www.blogger.com/atom/ns#" term="Examples" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>How to backtest a strategy in Excel</title><content type="html">&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
(This is a guest post by Damian from &lt;a href="http://skillanalytics.wordpress.com/"&gt;Skill Analytics&lt;/a&gt; and &lt;a href="http://www.etfprophet.com/"&gt;ETF Prophet&lt;/a&gt;)&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
Let me start by saying that I’m not an expert in backtesting in Excel – there are a load of very smart bloggers out there that have, as I would say, “mad skillz” at working with Excel including (but not limited to) Michael Stokes over at &lt;a href="http://blog.marketsci.com/"&gt;marketsci.com&lt;/a&gt;, Jeff Pietch over at &lt;a href="http://www.etfprophet.com/"&gt;etfprophet.com&lt;/a&gt; and the folks (David and Corey) over at &lt;a href="http://cssanalytics.wordpress.com/"&gt;cssanalytics.wordpress.com&lt;/a&gt;.  All of these guys have been gracious enough, over the years, to share with me how to do backtests – so I am indebted to them.  And I want to thank Josh here at FOSS Trading as well – because he’s been kind enough to help me in learning how to use R for testing.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
With all that in mind, I thought I’d walk through what I consider the four basic steps in producing a backtest in Excel.  Note that the &lt;a href="http://dl.dropbox.com/u/17693/DVI%20long-short.xlsx"&gt;core Excel file&lt;/a&gt; wasn't created by me - it was created by Jared over at &lt;a href="http://www.condoroptions.com/"&gt;CondorOptions&lt;/a&gt; (another must read if you're not following him).&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
&lt;b&gt;Step 1: Get the data&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
The first step is to get your market data into Excel.  There are two basic approaches to this – the first involves going to Yahoo Finance and downloading historical data directly as CSV and then loading it into Excel.  This is nice, but does require a manual update of that data as you go forward – meaning, you’ll need to re-download that historical data and then copy and paste either the entire dataset or a subset to update your strategy.&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
&lt;br /&gt;
The second approach is to use code to go grab data automatically from Yahoo Finance.  Plenty of people have written VBA for doing just this – I have not written it myself so I don’t feel comfortable republishing the code.  A quick search on Google will provide some examples to work with.  There are also 3&lt;sup&gt;rd&lt;/sup&gt; party tools that make the job simple – I’d recommend &lt;a href="http://www.analyzerxl.com/"&gt;AnalyzerXL&lt;/a&gt; as it provides the most flexibility and options.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
How you store this data in Excel is up to you – most people I know have a single sheet where they keep all the data, and then have a separate worksheet for the rest of system.  For systems with a single instrument (such as the SPY), it’s not a problem to integrate the data and the system, but as the number of instruments goes up, you’ll want to have them on a separate worksheet to minimize scrolling and make it easy to update.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
&lt;b&gt;Step 2: Create your indicator&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
Now that we’ve got the data, we can use that data to construct an indicator or indicators.  In this example, Jared constructed the DVI indicator (originally created by David over as CSS Analytics).  You’ll see that we used 5 different columns to create the indicator – each one taking part of the calculation.  One nice thing about working with Excel is that it really makes you think about how an indicator is constructed.  It can be far too simple, these days, to throw down and indicator without understanding how it actually works.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
The final indicator column, DVI, is a weighted sum of the DVI magnitude and DVI stretch columns.  I’d also note that AnalyzerXL also contains a large number of indicators predefined to make backtesting easier, and there are other add-ons for Excel that provide similar functionality.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
&lt;b&gt;Step 3: Construct your trading rule&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
Now that you have an indicator, you need to construct your trading rules.  In this example (calculation is in the “Signal” column), our trading rule is simple – we’re long if DVI is below 0.5 and short if above.  Obviously you could have more complex rules – a neutral state where you’re not long or short, or variable position sizing as opposed to just all-in long or short.&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
&lt;br /&gt;
&lt;b&gt;Step 4: The trading rules/equity curve&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
There are many different approaches here, but what you can see in this example is a simple way to do it.  Assume a starting cash value of $10,000 and then increment or decrement that by whether or not we are long or short on the close of the prior day, and whether we were correct or not.  In function form, we represent this by saying: if long, then multiple the prior day’s equity by the ratio of today’s close to yesterday’s close, otherwise multiple the prior day’s equity by ratio of yesterday’s close to today’s close.  We can then, obviously, graph the results.  Note also that we’re using cash here, but you could easily do raw percentages in place of a cash value.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
What’s missing here can be important for deciding whether to trade or not trade a system.  First of all, the results here are frictionless – they assume there is no cost/commission for the trade.  In high frequency swing systems like this one, the commissions could have a major impact on the viability of a given strategy.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
Second, we don’t have any statistics on the performance of the strategy – just a graph.  Generally we want to know stats like CAGR and the Sharpe ratio to compare it with other strategies.  We also don’t have monthly or yearly reporting.  All of these things can be constructed in Excel with a bit of work – and again, AnalyzerXL provides a large number of reporting options as part of the package.&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="font-family: inherit;"&gt;
That's a basic overview of backtesting in Excel - hope that you all find it useful!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-7184148659549713368?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oYvjtfRgKwnNyh7ahbv67BodkBA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oYvjtfRgKwnNyh7ahbv67BodkBA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oYvjtfRgKwnNyh7ahbv67BodkBA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oYvjtfRgKwnNyh7ahbv67BodkBA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nDF_tM4JHak:Kx_Gmo_ESbs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nDF_tM4JHak:Kx_Gmo_ESbs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=nDF_tM4JHak:Kx_Gmo_ESbs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nDF_tM4JHak:Kx_Gmo_ESbs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=nDF_tM4JHak:Kx_Gmo_ESbs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nDF_tM4JHak:Kx_Gmo_ESbs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=nDF_tM4JHak:Kx_Gmo_ESbs:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/nDF_tM4JHak" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/7184148659549713368/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=7184148659549713368" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/7184148659549713368?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/7184148659549713368?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/nDF_tM4JHak/how-to-backtest-strategy-in-excel.html" title="How to backtest a strategy in Excel" /><author><name>Damian</name><uri>http://www.blogger.com/profile/16016686632386396090</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>5</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/03/how-to-backtest-strategy-in-excel.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMHSXwzfSp7ImA9WhZTEU4.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-6036409272636142984</id><published>2011-03-14T16:17:00.000-05:00</published><updated>2011-03-14T16:17:18.285-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-14T16:17:18.285-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>R/Finance 2011 Registration Open</title><content type="html">The registration for R/Finance 2011--which will take place April 29 and 30 in Chicago--is NOW OPEN!&lt;br /&gt;&lt;br /&gt;Building on the success of the two previous conferences in 2009 and 2010, we are expecting more than 250 attendees from around the world representing both industry and academia to join a record 30+ presentations covering all areas of finance with R.&lt;br /&gt;&lt;br /&gt;This year we are excited to have longer tutorial sessions and an optional full-day workshop on the Thursday before the conference. In addition, we have worked hard to extend the great networking opportunities on both days with longer breaks and more hallway time between sessions.&lt;br /&gt;&lt;br /&gt;New for 2011 is a special conference dinner that is held on Friday evening. Overlooking the river from the famed Chicago Mercantile Exchange, we have designed it to be a great way to continue the conversations from the first day, as well as offering a chance to dine and drink in Chicago style.&lt;br /&gt;&lt;br /&gt;More details of the agenda are available at:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;a href="http://www.rinfinance.com/"&gt;http://www.RinFinance.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Registration can be directly accessed by going to&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;a href="http://www.regonline.com/RinFinance2011"&gt;http://www.regonline.com/RinFinance2011&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;On behalf of the committee and sponsors, we look forward to seeing you in Chicago!&lt;br /&gt;&lt;br /&gt;&amp;nbsp;Gib Bassett, Peter Carl, Dirk Eddelbuettel, Brian Peterson, Dale Rosenthal, Jeffrey Ryan, Joshua Ulrich&lt;br /&gt;&lt;br /&gt;Sponsors:&lt;br /&gt;&lt;a href="http://www.uic.edu/cba/icfd/"&gt;International Center for Futures and Derivatives at UIC&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.revolutionanalytics.com/"&gt;Revolution Analytics&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.rstudio.org/"&gt;RStudio&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.onetick.com/web1/"&gt;One Market Data&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.lemnica.com/"&gt;lemnica&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-6036409272636142984?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/jlN1BiHlxuZ6wrwjRjSdTJH8SoM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jlN1BiHlxuZ6wrwjRjSdTJH8SoM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/jlN1BiHlxuZ6wrwjRjSdTJH8SoM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jlN1BiHlxuZ6wrwjRjSdTJH8SoM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=B3P5PfqSjOY:oA1nGE93UtQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=B3P5PfqSjOY:oA1nGE93UtQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=B3P5PfqSjOY:oA1nGE93UtQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=B3P5PfqSjOY:oA1nGE93UtQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=B3P5PfqSjOY:oA1nGE93UtQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=B3P5PfqSjOY:oA1nGE93UtQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=B3P5PfqSjOY:oA1nGE93UtQ:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/B3P5PfqSjOY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/6036409272636142984/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=6036409272636142984" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6036409272636142984?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/6036409272636142984?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/B3P5PfqSjOY/rfinance-2011-registration-open.html" title="R/Finance 2011 Registration Open" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/03/rfinance-2011-registration-open.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ANQns4fSp7ImA9WhZSGU4.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-4286098517827477784</id><published>2011-03-05T15:09:00.001-06:00</published><updated>2011-04-04T11:49:53.535-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-04T11:49:53.535-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Excel" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>Moving from Excel to R</title><content type="html">This first post of the &lt;a href="http://blog.fosstrading.com/2011/02/backtesting-in-excel-and-r.html"&gt;Backtesting in Excel and R&lt;/a&gt; series will provide some resources to help smooth the transition from the familiarity and comfort of Excel to the potentially strange and intimidating world of &lt;a href="http://www.r-project.org/"&gt;R&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I made my voyage from Excel to R more than 5 years ago and learned mostly by trial and error (and reading the R manuals).&amp;nbsp; Most people don't prefer my approach of "keep at it until you figure it out", so I don't have a lot of personal advice to share.&amp;nbsp; My main piece of advice is that the best way to learn R is to use it, so most of the resources below focus on "how-to" do certain things in R.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;u&gt;GUIs&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
While R for Windows comes with a very basic GUI (I'm not familiar with the R for Mac OS X GUIs), most people will want and benefit from something more elaborate.&amp;nbsp; The GUIs below were taken from the &lt;a href="http://www.sciviews.org/_rgui/"&gt;R GUI Projects page&lt;/a&gt; (visit the page for more information / alternatives) and I added the newcomer, RStudio:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://socserv.mcmaster.ca/jfox/Misc/Rcmdr/"&gt;R Commander&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sciviews.org/SciViews-R/index.html%3ESciViews-R%3C/a%3E%3C/li%3E%0A%3Cli%3E%3Ca%20href=" http:="" index.html="" tinn-r="" www.sciviews.org=""&gt;Tinn-R&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jgr.markushelbig.org/"&gt;JGR&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.walware.de/goto/statet"&gt;StatET&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.red-r.org/"&gt;Red-R&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.rstudio.org/"&gt;RStudio&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;u&gt;Blogs / Videos&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;a href="http://chartsgraphs.wordpress.com/"&gt;Climate Charts &amp;amp; Graphs blog&lt;/a&gt; has a &lt;a href="http://chartsgraphs.wordpress.com/2009/02/27/video-to-help-excel-users-get-familiar-with-r/"&gt;video&lt;/a&gt; to help help Excel users get familiar with R, a &lt;a href="http://chartsgraphs.wordpress.com/r-resources/"&gt;list of R resources&lt;/a&gt;, and--most impressive of all--a &lt;a href="http://chartsgraphs.wordpress.com/learnr-toolkit/"&gt;toolkit to help Excel users move up to R&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The &lt;a href="http://www.decisionsciencenews.com/"&gt;Decision Science News&lt;/a&gt; blog has two video tutorials (&lt;a href="http://www.decisionsciencenews.com/2007/09/26/r-video-tutorial-number-1/"&gt;part 1&lt;/a&gt;, &lt;a href="http://www.decisionsciencenews.com/2007/10/02/r-video-tutorial-number-2/"&gt;part 2&lt;/a&gt;) to help people get started using R.&lt;/li&gt;
&lt;li&gt;J.D. Long, a fellow economist, has compiled a &lt;a href="http://www.cerebralmastication.com/r-resources/"&gt;list of R resources&lt;/a&gt; on his blog, &lt;a href="http://www.cerebralmastication.com/"&gt;Cerebral Mastication&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;u&gt;Books&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
I haven't read these two books personally, but I've heard very good things about both of them.&amp;nbsp; Both focus on how to accomplish specific tasks with R.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/gp/product/0596809158?ie=UTF8&amp;amp;tag=fotr09-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0596809158"&gt;R Cookbook&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.amazon.com/gp/product/059680170X?ie=UTF8&amp;amp;tag=fotr09-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=059680170X"&gt;R in a Nutshell: A Desktop Quick Reference&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
I hope this is helpful.&amp;nbsp; As always, please add suggestions in the comments! &lt;br /&gt;
&lt;ul&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-4286098517827477784?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KDq94I723Wt0dBA3MRi1kBXFNsw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KDq94I723Wt0dBA3MRi1kBXFNsw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KDq94I723Wt0dBA3MRi1kBXFNsw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KDq94I723Wt0dBA3MRi1kBXFNsw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=PhKbkP121_Q:tjDDPFrYpdk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=PhKbkP121_Q:tjDDPFrYpdk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=PhKbkP121_Q:tjDDPFrYpdk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=PhKbkP121_Q:tjDDPFrYpdk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=PhKbkP121_Q:tjDDPFrYpdk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=PhKbkP121_Q:tjDDPFrYpdk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=PhKbkP121_Q:tjDDPFrYpdk:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/PhKbkP121_Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/4286098517827477784/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=4286098517827477784" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4286098517827477784?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/4286098517827477784?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/PhKbkP121_Q/moving-from-excel-to-r.html" title="Moving from Excel to R" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>5</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/03/moving-from-excel-to-r.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkMCR3wyeip7ImA9WhZSE04.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-702850518620000069</id><published>2011-02-17T18:53:00.004-06:00</published><updated>2011-03-28T13:54:26.292-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-28T13:54:26.292-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Excel" /><category scheme="http://www.blogger.com/atom/ns#" term="Examples" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>Backtesting in Excel and R</title><content type="html">This post is the introduction to a series that will illustrate how to backtest the same strategy in Excel and R.&amp;nbsp; The impetus for this series started with &lt;a href="http://twitter.com/#%21/CondorOptions/status/27254925279"&gt;this tweet&lt;/a&gt; by &lt;a href="http://twitter.com/#%21/CondorOptions"&gt;Jared Woodard&lt;/a&gt; at &lt;a href="http://www.condoroptions.com/"&gt;Condor Options&lt;/a&gt;.&amp;nbsp; After &lt;a href="http://about.me/soren/bio"&gt;Soren Macbeth&lt;/a&gt; introduced us, Jared suggested&amp;nbsp; backtesting a simple &lt;a href="http://cssanalytics.wordpress.com/2010/07/29/dvi-and-spy-performance/"&gt;DVI&lt;/a&gt; strategy in Excel and R.&lt;br /&gt;
&lt;br /&gt;
The three-post series will show you:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt; &lt;a href="http://blog.fosstrading.com/2011/03/moving-from-excel-to-r.html"&gt;Resources that make it easier to move from Excel to R&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.fosstrading.com/2011/03/how-to-backtest-strategy-in-excel.html"&gt;How to test DVI in Excel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.fosstrading.com/2011/03/how-to-backtest-strategy-in-r.html"&gt;How to test DVI in R&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
Since I know next to nothing about testing strategies in Excel, I will be writing posts 1 and 3.&amp;nbsp; Jared was kind enough to create the Excel framework for post 2, but did not have time to devote to a full post.&amp;nbsp; Thankfully, &lt;a href="http://etfprophet.com/author/skill-analytics/"&gt;Damian Roskill&lt;/a&gt; has agreed to write post 2 using Jared's Excel file.&lt;br /&gt;
&lt;br /&gt;
Hopefully this will be a useful example for those of you who currently use Excel but would like to explore how to use R.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-702850518620000069?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/b_C0t8ZyGmqDkuWlOc5skSSBbQM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b_C0t8ZyGmqDkuWlOc5skSSBbQM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/b_C0t8ZyGmqDkuWlOc5skSSBbQM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b_C0t8ZyGmqDkuWlOc5skSSBbQM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=INQUSq1GPso:Y_DfTgVHqP0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=INQUSq1GPso:Y_DfTgVHqP0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=INQUSq1GPso:Y_DfTgVHqP0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=INQUSq1GPso:Y_DfTgVHqP0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=INQUSq1GPso:Y_DfTgVHqP0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=INQUSq1GPso:Y_DfTgVHqP0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=INQUSq1GPso:Y_DfTgVHqP0:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/INQUSq1GPso" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/702850518620000069/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=702850518620000069" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/702850518620000069?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/702850518620000069?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/INQUSq1GPso/backtesting-in-excel-and-r.html" title="Backtesting in Excel and R" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/02/backtesting-in-excel-and-r.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YGRX48fip7ImA9Wx9UF0w.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-724266834087097851</id><published>2011-02-14T12:12:00.001-06:00</published><updated>2011-02-14T13:18:44.076-06:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-14T13:18:44.076-06:00</app:edited><title>Stack Exchange: Quantitative Finance in public beta</title><content type="html">The &lt;a href="http://quant.stackexchange.com/"&gt;Quantitative Finance&lt;/a&gt; &lt;a href="http://stackexchange.com/"&gt;Stack Exchange&lt;/a&gt; community entered public beta last week.&amp;nbsp; To quote the &lt;a href="http://quant.stackexchange.com/faq"&gt;FAQ&lt;/a&gt;:&lt;br /&gt;
&lt;blockquote&gt;
The Quantitative Finance Stack Exchange
    is intended specifically for professionals 
    and traders working in investment banking,
    and academics involved in teaching and research.&lt;/blockquote&gt;
&lt;blockquote&gt;
Topics include pricing of securities, derivatives,
    options, risk modeling, quantitative techniques, and 
    the mathematics used in quantitative finance.&lt;/blockquote&gt;
Several members of the R/Finance community are active there too.&amp;nbsp; Some names you may recognize: &lt;a href="http://www.burns-stat.com/"&gt;Patrick Burns&lt;/a&gt;, &lt;a href="http://www.statalgo.com/"&gt;Shane&lt;/a&gt;, &lt;a href="http://dirk.eddelbuettel.com/"&gt;Dirk Eddelbuettel&lt;/a&gt;, &lt;a href="http://www.lemnica.com/"&gt;Jeff Ryan&lt;/a&gt;, and &lt;a href="http://quanttrader.info/public/"&gt;Paul Teetor&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-724266834087097851?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6Y9xaJicLmz_wYsD40LGqK3gzoI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6Y9xaJicLmz_wYsD40LGqK3gzoI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6Y9xaJicLmz_wYsD40LGqK3gzoI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6Y9xaJicLmz_wYsD40LGqK3gzoI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=ox-9JVyavWA:Rc9OV-8r5q4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=ox-9JVyavWA:Rc9OV-8r5q4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=ox-9JVyavWA:Rc9OV-8r5q4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=ox-9JVyavWA:Rc9OV-8r5q4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=ox-9JVyavWA:Rc9OV-8r5q4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=ox-9JVyavWA:Rc9OV-8r5q4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=ox-9JVyavWA:Rc9OV-8r5q4:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/ox-9JVyavWA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/724266834087097851/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=724266834087097851" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/724266834087097851?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/724266834087097851?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/ox-9JVyavWA/stack-exchange-quantitative-finance-in.html" title="Stack Exchange: Quantitative Finance in public beta" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2011/02/stack-exchange-quantitative-finance-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YCRH49cCp7ImA9Wx9QFEw.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-2189072166453278598</id><published>2010-12-26T18:49:00.001-06:00</published><updated>2010-12-26T18:52:45.068-06:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-26T18:52:45.068-06:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Events" /><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>R/Finance 2011 Call for Papers</title><content type="html">The 2011 R/Finance conference has an updated call for papers.&amp;nbsp; Dirk Eddelbuettel announced it to the R-SIG-Finance mailing list.&amp;nbsp; I've reproduced his email in its entirety below.&amp;nbsp; Let me know if you plan on attending.&lt;br /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;
Subject: R/Finance 2011: Call for Papers: Now with prizes and travel money&lt;br /&gt;
&lt;br /&gt;
Dear R / Finance community,&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: small;"&gt;The preparations for R/Finance 2011 are progressing, and due to favourable &lt;/span&gt;responses from the different sponsors we contacted, we are now able to offer&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;a competition for best paper, which given the focus of the conference will award for both an 'academic' paper and an 'industry' paper&lt;/li&gt;
&lt;li&gt;availability of travel grants for up to two graduate students provided suitable papers were accepted for presentations&lt;/li&gt;
&lt;/ol&gt;
More details are below in the updated Call for Papers. Please feel free to re-circulate this Call for Papers with colleagues, students and other associations.&lt;br /&gt;
&lt;br /&gt;
Cheers, and Season's Greetings,&lt;br /&gt;
Dirk (on behalf of the organizing / program committee)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Call for Papers:&lt;br /&gt;
&lt;br /&gt;
R/Finance 2011: Applied Finance with R&lt;br /&gt;
April 29 and 30, 2011&lt;br /&gt;
Chicago, IL, USA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The third annual R/Finance conference for applied finance using R will be held this spring in Chicago, IL, USA on April 29 and 30, 2011.&amp;nbsp; The two-day conference will cover topics including portfolio management, time series analysis, advanced risk tools, high-performance computing, market microstructure and econometrics. All will be discussed within the context of using R as a primary tool for financial risk management, portfolio construction, and trading.&lt;br /&gt;
&lt;br /&gt;
Complete papers or one-page abstracts (in txt or pdf format) are invited to be submitted for consideration. Academic and practitioner proposals related to R are encouraged. We welcome submissions for full talks, abbreviated "lightning talks", and for a limited number of pre-conference (longer) seminar sessions.&lt;br /&gt;
&lt;br /&gt;
Presenters are strongly encouraged to provide working R code to accompany the presentation/paper.&amp;nbsp; Data sets should also be made public for the purposes of reproducibility (though we realize this may be limited due to contracts with data vendors). Preference may be given to presenters who have released R packages.&lt;br /&gt;
&lt;br /&gt;
The conference will award two $1000 prizes for best paper: one for best practitioner-oriented paper and one for best academic-oriented paper.&amp;nbsp; Further, to defray costs for graduate students, two travel and expense grants of up to $500 each will be awarded to graduate students whose papers are accepted.&amp;nbsp; To be eligible, a submission must be a full paper; extended abstracts are not eligible.&lt;br /&gt;
&lt;br /&gt;
Please send submissions to: committee "at" RinFinance.com&lt;br /&gt;
&lt;br /&gt;
The submission deadline is February 15th, 2011.&amp;nbsp; Early submissions may receive early acceptance and scheduling.&amp;nbsp; The graduate student grant winners will be notified by February 23rd, 2011.&lt;br /&gt;
&lt;br /&gt;
Submissions will be evaluated and submitters notified via email on a rolling basis. Determination of whether a presentation will be a long presentation or a lightning talk will be made once the full list of presenters is known.&lt;br /&gt;
&lt;br /&gt;
R/Finance 2009 and 2010 included attendees from around the world and featured keynote presentations from prominent academics and practitioners. 2009-2010 presenters names and presentations are online at the conference website. We anticipate another exciting line-up for 2011--including keynote presentations from John Bollinger, Mebane Faber, Stefano Iacus, and Louis Kates.&amp;nbsp; Additional details will be announced via the &lt;a href="http://www.rinfinance.com/"&gt;conference website&lt;/a&gt; as they become available.&lt;br /&gt;
&lt;br /&gt;
For the program committee:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Gib Bassett, Peter Carl, Dirk Eddelbuettel, Brian Peterson,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dale Rosenthal, Jeffrey Ryan, Joshua Ulrich&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-2189072166453278598?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2ivNUJJ579j-4rKPNID2iqQknzM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2ivNUJJ579j-4rKPNID2iqQknzM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2ivNUJJ579j-4rKPNID2iqQknzM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2ivNUJJ579j-4rKPNID2iqQknzM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=G1j__3DI2fA:55iCN-gD8e8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=G1j__3DI2fA:55iCN-gD8e8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=G1j__3DI2fA:55iCN-gD8e8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=G1j__3DI2fA:55iCN-gD8e8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=G1j__3DI2fA:55iCN-gD8e8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=G1j__3DI2fA:55iCN-gD8e8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=G1j__3DI2fA:55iCN-gD8e8:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/G1j__3DI2fA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/2189072166453278598/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=2189072166453278598" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/2189072166453278598?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/2189072166453278598?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/G1j__3DI2fA/rfinance-2011-call-for-papers.html" title="R/Finance 2011 Call for Papers" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.fosstrading.com/2010/12/rfinance-2011-call-for-papers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUAAQHc-cCp7ImA9Wx9RE0U.&quot;"><id>tag:blogger.com,1999:blog-5815834906618132494.post-2030961287770201381</id><published>2010-12-14T22:35:00.000-06:00</published><updated>2010-12-14T22:35:41.958-06:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-14T22:35:41.958-06:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="R" /><title>Why Use R?</title><content type="html">I use R very frequently and  take  for granted much that it has to offer.&amp;nbsp; I forget how R is different from similar tools, so I  have trouble communicating the benefits of using R.&amp;nbsp; The goal of this post is to highlight R's main strengths, but first... my story.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;span style="font-size: medium;"&gt;How I got started with R&lt;/span&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
I was introduced to R while I was working as a &lt;a href="http://research.stlouisfed.org/"&gt;Research Analyst&lt;/a&gt; at the 
&lt;a href="http://stlouisfed.org/"&gt;Federal Reserve Bank of St. Louis&lt;/a&gt;.&amp;nbsp; I wanted to do statistical analysis 
at home but the tools I used at work (&lt;a href="http://www.aptech.com/"&gt;GAUSS&lt;/a&gt; and &lt;a href="http://www.sas.com/"&gt;SAS&lt;/a&gt;) were expensive, so I
 started doing my analysis in Excel.&lt;br /&gt;
&lt;br /&gt;
But as my analysis became more 
complex, the Excel files became large and cumbersome.&amp;nbsp; The files also did not 
document my thought process, which made it difficult to revisit 
analysis I had started several months earlier.&amp;nbsp; I asked my fellow 
analysts for advice and one introduced me to R and &lt;a href="http://www.amazon.com/gp/product/1441930086?ie=UTF8&amp;amp;tag=fotr09-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=1441930086" target="_blank"&gt;Modern Applied Statistics with S&lt;/a&gt;.&amp;nbsp; Thus began my auto-didactic journey with R.&lt;br /&gt;


&lt;br /&gt;&lt;span style="font-size: medium;"&gt;&lt;u&gt;Why should you use R?&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;R is the leading tool for statistics, data analysis, and machine 
learning.&amp;nbsp; It is more than a statistical package; it’s a programming 
language, so you can create your own objects, functions, and packages.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
Speaking of packages, there are over 2,000 cutting-edge, user-contributed packages 
available on &lt;a href="http://cran.r-project.org/" target="_blank"&gt;CRAN&lt;/a&gt; (not to mention &lt;a href="http://www.bioconductor.org/"&gt;Bioconductor&lt;/a&gt; and &lt;a href="http://www.omegahat.org/"&gt;Omegahat&lt;/a&gt;).&amp;nbsp; To get an idea of what packages are out there, just take a look at these &lt;a href="http://cran.r-project.org/web/views/"&gt;Task Views&lt;/a&gt;.&amp;nbsp; Many packages are submitted by prominent members of their respective fields.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
Like
 all programs, R programs explicitly document the steps of your analysis
 and make it easy to reproduce and/or update analysis, which means you 
can quickly try many ideas and/or correct issues.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
You can easily use it anywhere.&amp;nbsp; It's &lt;a href="http://en.wikipedia.org/wiki/Platform-independent"&gt; platform-independent&lt;/a&gt;, so you can use it on any operating system.&amp;nbsp; And 
it's free, so you can use it at any employer without having to persuade 
your boss to purchase a license.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
Not only is R free, but it's also &lt;a href="http://en.wikipedia.org/wiki/Open_source"&gt;open-source&lt;/a&gt;.&amp;nbsp; That means 
anyone can examine the source code to see exactly what it’s doing.&amp;nbsp; This
 also means that you, or anyone, can fix bugs and/or add features, 
rather than waiting for the vendor to find/fix the bug and/or add the 
feature--at their discretion--in a future release.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
R allows you to integrate with other languages (C/C++, &lt;a href="http://java.sun.com/"&gt;Java&lt;/a&gt;, &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;)
 and enables you to interact with many data sources: &lt;a href="http://en.wikipedia.org/wiki/Odbc"&gt;ODBC&lt;/a&gt;-compliant 
databases (Excel, Access) and other statistical packages (&lt;a href="http://www.sas.com/"&gt;SAS&lt;/a&gt;, &lt;a href="http://www.stata.com/"&gt;Stata&lt;/a&gt;, &lt;a href="http://www.spss.com/"&gt; SPSS&lt;/a&gt;, &lt;a href="http://www.minitab.com/"&gt;Minitab&lt;/a&gt;).&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
Explicit parallelism is  straightforward in R (see the &lt;a href="http://cran.r-project.org/web/views/HighPerformanceComputing.html"&gt;High Performance Computing Task View&lt;/a&gt;): several packages allow you to take advantage of multiple cores, either on a single machine or across a network.&amp;nbsp; You can also build R with &lt;a href="http://cran.r-project.org/doc/manuals/R-admin.html#Linear-algebra"&gt;custom BLAS&lt;/a&gt;.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
R has a large, active, and growing community of users.&amp;nbsp; The &lt;a href="http://www.r-project.org/mail.html" target="_blank"&gt;mailing lists&lt;/a&gt;
  provide access to many users and package authors who are experts in 
their respective fields.&amp;nbsp; Additionally, there are several R conferences 
every year.&amp;nbsp; The most prominent and general is &lt;a href="http://user2010.org/" target="_blank"&gt;useR&lt;/a&gt;.&amp;nbsp; Finance-related conferences include &lt;a href="https://www.rmetrics.org/meielisalp2011" target="_blank"&gt;Rmetrics Workshop on Computational Finance and Financial Engineering&lt;/a&gt; in Meielisalp, Switzerland and &lt;a href="http://www.rinfinance.com/" target="_blank"&gt;R/Finance: Applied Finance with R&lt;/a&gt; in Chicago, USA.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
I hope that's a helpful overview of some benefits of using R.&amp;nbsp; I'm sure  I have forgotten some things, so please add them in the comments.&lt;/div&gt;
&lt;div&gt;
 &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5815834906618132494-2030961287770201381?l=blog.fosstrading.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hE3Z84NsZ7z7vO4z-mq64K3Mapw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hE3Z84NsZ7z7vO4z-mq64K3Mapw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hE3Z84NsZ7z7vO4z-mq64K3Mapw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hE3Z84NsZ7z7vO4z-mq64K3Mapw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=FfncGl7gJPg:ylF9opLOni0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=FfncGl7gJPg:ylF9opLOni0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=FfncGl7gJPg:ylF9opLOni0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=FfncGl7gJPg:ylF9opLOni0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?i=FfncGl7gJPg:ylF9opLOni0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=FfncGl7gJPg:ylF9opLOni0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FossTrading?a=FfncGl7gJPg:ylF9opLOni0:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FossTrading?d=I9og5sOYxJI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FossTrading/~4/FfncGl7gJPg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.fosstrading.com/feeds/2030961287770201381/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5815834906618132494&amp;postID=2030961287770201381" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/2030961287770201381?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5815834906618132494/posts/default/2030961287770201381?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/FossTrading/~3/FfncGl7gJPg/why-use-r.html" title="Why Use R?" /><author><name>Joshua Ulrich</name><uri>https://profiles.google.com/101580259945483587604</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh4.googleusercontent.com/-cNBfNQ-0tKE/AAAAAAAAAAI/AAAAAAAAAMw/EsJvZ41iBWU/s512-c/photo.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://blog.fosstrading.com/2010/12/why-use-r.html</feedburner:origLink></entry></feed>

