This category contains 16 posts

Java & the blockchain talk

I spoke this evening at the Sydney JVM Meetup about Ethereum and web3j. The slides from the talk are available below. Thanks to Pivotal Labs for sponsoring the event and Mitch for filming the talks, which are available here.

web3j Android port now available for Ethereum

After announcing the 1.0 milestone of web3j, it was clear that there was demand for an Android port of web3j. As of the latest release - 1.0.5 of web3j, I am publishing Java 1.6 (i.e. Android) compatible releases. The first Android release is available here, and the artefacts are available on JFrog's Bintray and Maven's … Continue reading »

web3j command line tools

One of the challenges for developers working with libraries, is that they often end up writing utility tools to utilise certain library functionality from the command line. Not wanting this to be an issue for users of web3j, I am now releasing a stand-alone (fat-jar in Java speak) web3j command line tools with each web3j … Continue reading »

web3j milestone v1.0 release

Today web3j has hit the milestone 1.0 release, providing a number of key pieces of functionality for integrating Java applications with Ethereum: Complete implementation of Ethereum's JSON-RPC client API Ethereum wallet support Auto-generation of Java smart contract wrappers to create, deploy, transact with and call smart contracts from native Java code Support for Parity's Personal, … Continue reading »

Announcing web3j - a lightweight Java library for connecting to nodes on the Ethereum blockchain

The last week marked the first release of web3j which I've been working on. web3j is a lightweight Java library for integration with clients (nodes) connected to the Ethereum blockchain. For those of you familiar with Nethereum, it serves a very similar purpose, except targeting developers on the Java Virtual Machine (JVM) platform, so can … Continue reading »


John wrote a great post a few months back on the virtues of lazy evaluation and using this to generate infinite length geometric Brownian motion prices series. Lazy evaluation is popular in functional programming, whereby the evaluation of expressions is deferred until when they are actually needed. The purely functional language Haskell defaults to lazy … Continue reading »

Variance Factors on VIX Futures II - Principal Component Analysis

In my last post I demonstrated how you can generate synthetic futures prices. In this post I am going to build on this and show how you can apply principal component analysis (PCA) to determine how much of the variability in returns each of the different futures are responsible for. Creating our data set was … Continue reading »

Variance Factors on VIX Futures I - Synthetic Futures

In her paper on ETNs on VIX futures, Carol Alexander demonstrates how principal component analysis can be used to identify the main variance factors in the term structure of the VIX. Over the next couple of posts I am going to demonstrate how you can implement this. Principal component analysis (PCA) is a useful tool … Continue reading »

VIX Futures Expiry Dates

As VIX futures do not expire on the same day each month, I thought I'd share the following code you can use to determine the when the next expiry date is. There is one caveat - if the CBOE is closed on the third Friday of the month the date moves back one day, you'll … Continue reading »

Slides from my talk @YOW!West

It's been a busy couple of weeks with two excellent conferences. A few days ago I gave my talk at YOW!West. The week before that was YOW! Lambda Jam - a conference dedicated to Functional Programming. There was a lot of preparation required - I had to write a lot of Scala code to accompany … Continue reading »