Recent Posts

  • ConnectX-3’s are very cheap 10Gb ethernet adapters that can be had on eBay for about $30. They’ve been quite reliable except if they are running an old firmware that causes them to be put into infiniband mode, so on reboot of a TrueNAS server they stop functioning and show as “UNKNOWN” in the net...
  • Everytime I reinstall I lose these steps for getting a site set back up for deployment. sudo apt install build-essential ruby ruby-dev sudo gem install jekyll cd to your jekyll site directory. Check the Gemfile.lock file for the BUNDLED WITH version. sudo gem install bundler -v '<version&...
  • Install Strawberry Perl https://strawberryperl.com/ Install NASM https://www.nasm.us/ Add NASM to the system PATH Download OpenSSL https://www.openssl.org/ Open the Visual Studio tools command prompt for the compiler you intend to use Move to th...
  • The Silicon Image 3512 is a PCI SATA controller that is commonly used in older systems. By default it comes with a RAID BIOS that supports RAID 0 and RAID 1. Flashing it to the BIOS below converts it into a normal SATA controller without RAID support. If you have no plans to use RAID, this is pro...
  • In my quest for 99.99% home internet uptime I ran into an issue with port forwarding on my Edgerouter Lite. The default UI does not allow you to port forward if you have WAN failover configured. This means you must manually configure DNAT through the CLI or through the web interface. This is simi...
  • In my last post I went over how to setup an WiFi/Ethernet bridge on a RaspberryPi for use when your main ISP goes down. In this post I’ll be going over 4G failover with a USB dongle on a Linux server. I won’t be using a RaspberryPi for this since I want it to be 100% automatic and only on a singl...
  • This tutorial will guide you through the steps of setting up a WiFi bridge on a RaspberryPi. The point of this is to forward traffic from an open WiFi network to the ethernet port in order to have “free” internet access in case your main ISP goes down. In my case I’ll be using a nearby xfinitywif...
  • I was inspired by a fan control perl script posted on the FreeNAS forum for Supermicro motherboards. This script will adjust the fan profile based on drive temperature. It is intended to be run as a cronjob every 5 minutes.#!/usr/local/bin/python3import reimport subprocessDRIVE_PREFIX = 'da'DRIVE...
  • These tweaks will help speedup a ZFS resilver under FreeBSD/FreeNAS.
  • The year was 2003 and in October of that year my parents bought me a brand new custom built PC from a nearby computer store. It was the first computer I had that could actually play 3D games that did not use software rendering. This PC was so fast I no longer needed to look at the minimum require...
  • My current setup is a RAIDz2 with VM images stored in the raw img format. I backup important individual files using rsync, but sometimes I wish I had a copy of each VM so I can easily restore it if something goes terribly wrong. Wasabi is probably the best option for this because everyone else ch...
  • Alpaca is a relatively new broker that is designed for people that want to create automated trading strategies. They offer a REST API that allows you to manage trades and pull data from Polygon.io for free if you have a live brokerage account. They also offer a paper trading API for free that use...
  • Disclaimer: I take no responsibility if you follow this guide and get hacked and lose all your money. It’s best to run everything at home or hardware you own when possible.
  • I always try to write code that is portable like using boost instead of calling native APIs or in the case of algo trading using C# which runs on most operating systems with Mono. Lately, I’ve been having so many issues with Windows or hardware that I’ve decided to just move it all to Linux so I ...
  • I highly recommend using TradeStation which provides proper backtesting and a way to optimize different inputs you may have. There are no longer any platform fees (unless you want lower trade commissions) so there’s no reason not to use it instead. I am not being paid to say this.
  • This script will sound an alert when a candle is outside the upper/lower bollinger band. It also looks at the candle size based on ATR to filter out some of the alerts. It may alert several times per candle if it continously ticks above/below the bollinger band and it may disappear entirely if it...
  • Keys
  • This guide is for Ubuntu 18.04. I needed a super lightweight GUI to run some applications without installing a full blown desktop environment and this seemed like a pretty good option. I would not recommend using this over the internet without an SSH tunnel.
  • I cobbled together a bunch of examples I found through Google into the samples provided below. thinkorswim is not that great for this, but it does allow you to visualize trades and get some idea of how well a strategy works. However, there is no way to fully auto trade a strategy. It’s possible t...
  • I had a hard time finding 1m datasets for LTC so I wrote some code to pull all of it from 2017 until 2018 on the GDAX exchange. I cannot guarantee the accuracy of this data. Use at your own risk.
  • I only trade small positions at the moment so this is just my opinion.
  • I watched one of LinusTechTips recent videos where he demoed game streaming from a service I hadn’t heard of called Shadow (coupon: RYA1BMUE). I was intrigued by the fact that you get a full Windows 10 VM with 8 cores, 12 GB RAM, and a GTX 1080 or Quadro P5000 to install whatever you want onto (b...
  • I was setting up a Debian server with all SSDs and I kept getting a strange error that caused mdadm to not be able to flush data which made the entire system lock up.
  • Microsoft has released MSSQL for Linux and they even released a docker container for it. This makes things pretty straight forward to get running.
  • Sending:
  • In the beta release of the TWS API there are now custom scan filters that you can apply. This functionality mirrors what is available in TWS so now it can all be done through the API. This should make filtering out junk way easier.
  • Host
  • TWS automatically logs out after about 11:45 PM. They recently added an automatic restart feature to the beta release but I have yet to get it working.
  • I wrote a simple PowerShell script that will delete all files/folders inside the temporary file paths. It will also clear the shader cache for AMD GPUs. I set this up to run on every reboot.
  • Download the Arch ISO. https://www.archlinux.org/download/
  • This script will convert PAL MKVs to NTSC 23.976 MP4s. You can play around with the container format (MKV instead) or audio codec.
  • Under Linux when you compile C++ code using GCC or Clang there ends up being tons of debugging information that simply should not be there when you are not releasing open source software. The strip command does not do enough to remove that information.
  • The basic idea behind this strategy:
  • Trade Ideas is a stock scanner, screener, charting, etc. application that is Windows only (.NET). Fortunately the 32-bit version of it runs fine under macOS with Wine. I assume it also runs fine under Linux since it works with Wine.
  • This custom scanner will look for 3 consecutive red candles in a row along with an RSI below 20. It has not yet been tested during market hours, but that’s something I plan on doing tomorrow.
  • thinkorswim has a built-in news scanner that allows you to sort based on recent news that has come out. For penny stocks I think this is mostly useful during premarket so you can get in before everyone else.
  • I couldn’t find any examples for adding a crosshair to the grid so I hacked something together using the ArrowAnnotation example.
  • LVM has a cool feature that allows you to cache slow LVs on faster media. It has some limitations like not being able to cache an entire volume group but it does work. I had an extra Intel 520 240GB SSD that I was not using so I decided to add it to one of my servers to speed up an mdadm array.
  • I experienced a crash while installing Visual Studio 2017. This caused a whole bunch of issues where I couldn’t complete the installation of the UWP packages and I also couldn’t create new C++ projects inside VS. The solution is to completely remove it and reinstall. This does more than uninstall...
  • Use NuGet to install the AWSSDK.Polly / NAudio packages.
  • Yesterday I started working on a high of day / low of day scanner using the Trader Workstation API. It did not take very long to complete and I even added RSS news scanner so you can easily see what the news is before you even look at the chart.
  • Trade alerts are very useful when set at a support level or near a breakout level. It’s not possible to watch every stock in your watchlist without an infinite amount of monitors. I set alerts slightly above a support level so I know to check the stock and see if it starts bottoming.
  • I used CrashPlan years ago but eventually gave up on it because it needed to be always running in the background. I did like the functionality and how it worked since I actually needed to restore some files one time. I canceled my subscription back then and never really found anything better that...
  • An IPIP tunnel is similar to a GRE tunnel but with slightly less overhead.
  • An SSH tunnel will be much faster and I recommend using that with autossh instead if possible.
  • You will need to allow GRE traffic on your router to be passed to the local machine. This is pretty easy with an EdgeMAX router.
  • I have been dying to get my hands on some 10 Gbit networking equipment. The problem is I always wanted 10 Gbit Ethernet (not SFP+) which is still very expensive. I go based off the prices of the Intel X540-T1/T2. They are still over $150 on Amazon. If you look on eBay they are cheaper but most li...
  • The first step is to find the portfolio window. It is there by default and lists your current positions as well as P/L.
  • Enable SSH on the ESXi host.
  • Directory colors are not easily readable with bash. This registry change will modify the terminal colors to the default xterm colors. Thanks to the user tobia on Github. This issue was really annoying!