Python cryptocurrency trading bot

Bittrex

As a fun toy to explore trading, I built a “flipper” cryptocurrency trading bot in python for the Bittrex exchange. It has a trading strategy of attempting to flip between two cryptocurrencies, such as Ethereum and NEO, in hopes to obtain a small position growth each time it flips. Of course, this is just a very basic “strategy” and you will certainly need to modify it to avoid getting stuck on a losing bet.

Read More

Using MQTT on Freeboard.io with IBM Watson IoT Platform

I helped add a javascript MQTT plugin to the free IoT visualization platform freeboard.ioMQTT is an ISO standard publish-subscribe protocol for fast and secure IoT communications over TCP/IP. While there are many options for messaging, MQTT is excellent for many common IoT use cases. The IBM Watson IoT Platform provides a way to scale from free to full featured with many advanced security and integration features built in to their MQTT broker. Here is a quick demo of how to get started using MQTT IoT messaging in freeboard without requiring any programming, installation, or cost.

Read More

Cloud orchestration with terraform in Aliyun for an IoT cloud deployment

Aliyun Logo

Automating cloud deployments around the world can become very tedious because each cloud provider API has quirks. Luckily, the world is moving beyond declarative cloud deployment automation into procedural orchestration. I’ll show how to Hashicorp’s terraform for an example IoT cloud deployment in the fastest growing cloud in the world: Alibaba’s “Aliyun” cloud, based out of China.
Read More

China cloud deployments and how to automate QingCloud

I have explored multiple cloud providers in China, including QingCloud, over the past two years. QingCloud focuses on private enterprises in China but also caters to many startups too. I wanted to find a way to automate a Virtual Private Cloud (VPC) setup and thought I would share my script to build out a bastion host in a secure VPC. Automating their infrastructure is incredibly simple given their powerful API partnered with their private network capabilities. Having worked with clouds in Amazon, Google, IBM, Microsoft, VMWare, Aliyun… I am impressed with how easy QingCloud makes establishing a VPC either from their web portal or automated script. Here is my automated deployment script.

Read More

Algorithmic trading using 100 lines of python code, using OANDA v20 API

After reading Dr. Yves Hilpisch’s article, “Algorithmic trading using 100 lines of python code,” I was inspired to give it a shot. I wanted to apply his guide on how to use a time series momentum algorithm because I have been interested in forex trading with cryptocurrencies. I set up a free forex trial account on OANDA, jumped into a jupyter notebook, and got to work. I hit an issue. OANDA changed their API from “v1” to “v20” and all new accounts default to the new API. I ended up rewriting his sample code to work with the new OANDA v20 API using a third party python library.

Read More

Migrating from Hover DNS to Google Cloud Platform DNS

Google Cloud

I recently helped migrate a Hover DNS domain into Google Cloud Platform DNS. Hover does not provide any public API or supported export functionality. Google has no import function built into their cloud console and provides no assistance. In case anyone else is looking to do a similar migration, here are the steps I used to automate migrating all DNS records with no disruption to any services.

Read More

Security, standards, and frameworks for industrial IoT

Industrial IoT Trust

As the world moves towards embracing the internet of things for industrial assets, the importance of considering security cannot be understated. Industrial IoT poses unique challenges to security in combining Information Technology security with Operational Technology security. Many of these assets were designed to serve critical functions and their reliability is paramount. All of the systems that power our modern lives are undergoing a revolution where they will be controlled or interact with software. Assets will be connected to the internet for updates, pushing data, or even remote control. How can we make these industrial IoT systems secure by design?

Read More

Automated drip irrigation system for a hanging basket garden

My wife and I love enjoying Chicago summers on our back porch. Two years ago we decided to buy hanging planter baskets. We were excellent at purchasing plants but did not plan ahead to ensure there was sufficient light, water, or nutrients. Any project manager with a thousand yard stare knows what happened next. Within a few weeks it was a irrecoverable garden of death. Last year I decided to try again, but not fail. I used a fully automated drip irrigation system and the results speak for themselves. Here is how I pieced it together.

Read More

Stop using R plot and learn to love ggplot

ggplot Diamond Comparison

When I first got started I always found myself using R’s “plot” capability because, well, it is easy! Unfortunately, it lacks some advanced features — and the plots it produces are really ugly looking (subjective, but I bet you will agree with me). Luckily, there is a better tool for the job – ggplot. With only a few tricks you will find it just as easy to use.

Read More