I've started a new blog to focus on trading and quantitative finance using free open source software. I will post updates on my R packages on that blog instead of Quantitative Contemplations.
You can find the new blog at http://blog.fosstrading.com.
Thursday, October 23, 2008
New Blog - FOSS Trading
Posted by
Joshua Ulrich
at
9:50 AM
0
comments
Labels: Finance, Markets, Programming
Tuesday, October 7, 2008
opentick now on CRAN
The pre-alpha version of the opentick package I mentioned previously is now on CRAN. The package provides a native R interface to the opentick data servers, which include both real time and historical market data.
(Disclaimer: This software is not endorsed in any way by opentick corporation. The author(s) of this software are not affiliated with opentick corporation.)
The package currently includes a limited R implementation of the otFeed API. Its current functionality enables access to historic data from the opentick servers. Future additions will include access to:
- real-time data feeds (for most U.S. stock, option, and futures exchanges).
- real-time option chains.
- real-time and historical book data.
Please note that opentick is not currently accepting new users, but current users will retain their access. This has been the case since April and it is not clear when new users will be allowed. You can sign up to be notified once new users will be accepted.
Posted by
Joshua Ulrich
at
6:56 PM
0
comments
Labels: Programming
Wednesday, July 30, 2008
New R-Finance Group on LinkedIn
I've created a new group on the professional networking site, LinkedIn. It is oriented toward finance useRs. The goal of this group is to help members:
- Reach other finance useRs (you decide if group members can contact you directly)
- Accelerate careers/business through referrals from R-Finance group members
- Know more than a name; view other members' rich, professional profiles
Posted by
Joshua Ulrich
at
10:08 AM
0
comments
Labels: Finance, Networking, Programming
Wednesday, July 23, 2008
70 61 63 6b
I posted earlier about creating the new opentick package. Since it requires reading/writing binary data to a socket connection, I wrote some utility functions to made the conversion to/from raw data easier.
These functions are tangential to opentick and potentially useful to others, so I created yet another package... called pack. pack attempts to replicate the functionality of PERL's pack and unpack functions.
The functions are probably best illustrated via an example:
> computer <- pack('C A3 v x V a*', 3, 'foo', 21, 50000, 'bar')(For those curious, the post title is pack in hexadecimal... sorry, but I find it amusing.)
> computer
[1] 03 66 6f 6f 15 00 00 50 c3 00 00 62 61 72
> human <- unpack('C/A v x V A3', computer)
> human
[[1]]
[1] "foo"
[[2]]
[1] 21
[[3]]
[1] 50000
[[4]]
[1] "bar"
>
Posted by
Joshua Ulrich
at
7:58 AM
0
comments
Labels: Programming
Monday, June 2, 2008
New Project
I've started creating a R API to the opentick data servers. My goal is to provide a native R interface to opentick real time and historical market data. I have reservations about being able to make it solely R-based, due to threading issues I don't totally understand at the moment.
Even though I've read of quality issues with opentick's data, the price can't be beat for small, part-time traders (i.e. me).
Due to the upgrading of its network infrastructure, opentick is not currently accepting new users. That should change in the near future, however. You can sign up to be notified when the upgrades are complete.
For those who already have accounts with opentick, you can find the very-alpha source code on r-forge.
Disclaimer: This software is not endorsed in any way by opentick corporation and I am not affiliated with opentick corporation.
Posted by
Joshua Ulrich
at
1:50 PM
4
comments
Labels: Investing, Markets, Programming
Thursday, January 24, 2008
TTR version 0.14-0 on CRAN
The coolest change is the Fortran implementations of the running/rolling analysis and moving average functions. They are blistering fast: a 20-period SMA on 1 million observations takes about 30 seconds on my 2.8Ghz processor. I don't know if that calculation would even finish when written only in R code.
You can find the source/binaries here, or on your preferred CRAN mirror. Be sure to check out the charting capabilities in quantmod!
Here are the highlights of the new features:
- Added Fortran implementations of all moving average functions
- Added Fortran implementations of all running/rolling analysis functions, which include runSum, wilderSum, runMin, runMax, runMean, runCov, runCor, runVar, runSD, runMedian, and runMAD
- Added of Stochastic Momentum Index and Williams' Accumulation/Distribution functions
- Changed MA-type arguments for: RSI, ADX, ATR, CCI, DPO, EMV, RSI, BBands, chaikinVolatility, stoch, SMI, TRIX, MACD, and KST. This allows cleaner syntax when specifying moving averages.
Posted by
Joshua Ulrich
at
12:18 PM
0
comments
Labels: Programming