Your Library of Columns

Yesterday, I discussed how valuable it is to add multiple columns to your backtest. Now let’s talk about making these columns permanently valuable to every backtest you run from this point forward.

In software development, there’s a powerful concept called reusability.

An experienced developer once gave me some advice that stuck with me:

If you ever find yourself cutting and pasting code, you’ve done something wrong.

It was the perfect time in my career to hear that, because until then, I had done boatloads of cutting and pasting code.

With just a small mindset change, you can write code in a more generic way and include it in a library that can be shared across multiple projects.

This is incredibly powerful since you make every project from this point forward easier to create and maintain.

Need to fix a bug in the code? Change it in the library, and every project that references it is instantly fixed – assuming you haven’t cut and pasted code.

The same, powerful concept applies to your backtests.

As you develop more theories and ideas about what data points have a strong effect on your strategy, you can add them to the backtest you’re working on now.

But, similar to the “don’t cut and paste code” rule, you can add them to a shared library so that every backtest you run from now to eternity benefits from it.

Have a new idea? Add a new column to your library, and you instantly get the ability to test it across all your strategies.

It doesn’t take long for your shared column library to become your secret weapon – a process to improve every strategy idea you’ve ever had or will ever have in the future.

Next time, I’ll go over specific column examples and what makes some far more valuable than others.

Stay tuned!

-Dave