From Discretionary to Automated: My Journey Automating the Two Hour Trader Framework

The Automation Challenge

For the past decade, I've been a full-time trader, developing strategies and frameworks that have served me well in the markets. Among these, our "Two Hour Trader Framework" has been particularly effective—a relatively simple approach that consistently identifies profitable opportunities.

Like many traders, I've long been fascinated by the potential of automation. Yet I always viewed algorithmic trading as the domain of quants, institutions, and programmers—not something accessible to discretionary traders like myself. That perception changed in June 2024 when I finally decided to take the leap and see if I could transform our easiest and most reliable framework into an automated system.

Translating Human Intuition into Code

What seemed straightforward in theory quickly revealed itself to be remarkably complex in practice. The challenge wasn't in the sophistication of our strategy—the Two Hour Trader Framework is intentionally straightforward and simplistic by design. Rather, the difficulty lay in translating what comes naturally to an experienced trader into explicit, unambiguous instructions a computer can understand.

Even our simplest trading decisions, I discovered, rely on numerous subtle judgments and contextual awareness that we take for granted. Removing all discretionary elements and creating a purely rule-based version of the strategy required breaking down each decision into its fundamental components.

This process took nearly a year of development, featuring:

  • Multiple iterations of the core algorithm (over 30 variations of the code before landing on a suitable version 1)

  • Countless hours back-testing and refining parameters

  • Several failed implementations that missed critical nuances of the strategy

  • Gradual improvement as each version captured more of the framework's essence

Current Results: 85-90% There

After consistent tweaking and refinement, the automated system now captures approximately 85-90% of the setups that our discretionary framework would identify. While not perfect (it still takes some setups that I personally would not), this success rate has proven sufficient to maintain consistent profitability.

The system specifically trades NQ (Nasdaq futures) contracts, monitoring the market and executing trades based on the precise criteria we've programmed. The code identifies setups, determines entry and exit points, and manages positions without human intervention.

Fully automated trade in NQ

Fully automated trade in NQ

Fully automated trade in NQ

The Brokerage Integration Challenge

With a functioning algorithm in hand, the next hurdle was connecting our system to an actual brokerage platform. This integration introduced its own set of technical challenges, from API compatibility to ensuring reliable execution.

We've now had a successful connection for about a week, with only two missed trades during that period (ironically, both would have been winners). While we're still in the paper trading phase (with a live Tradovate account) to ensure everything functions properly, the results are encouraging enough to continue moving forward.

Triggered trade executions

Live trades being taken in Tradovate

Current Limitations and Next Steps

As with any project, we're taking an incremental approach. Currently, our system has several limitations we're actively working to address:

  1. Limited Market Coverage: The system currently only trades NQ futures

  2. Fixed Position Sizing: Currently fixed at 3 contracts per trade

  3. Execution Limitations: Some connectivity issues still need resolving

Our immediate roadmap includes:

  1. Finalizing Brokerage Integration: Resolving the remaining connectivity issues

  2. Micro-Contract Implementation: Converting NQ signals to execute in MNQ (Micro Nasdaq futures)

  3. Dynamic Position Sizing: Implementing variable position sizing based on market conditions and account parameters

  4. Expanded Market Coverage: Eventually extending beyond NQ/MNQ to other instruments

Lessons Learned

This journey has taught me several valuable lessons:

  1. Automation is accessible: While challenging, automation is increasingly within reach for individual traders without institutional resources

  2. The devil is in the details: What seems simple in a discretionary framework often contains numerous implicit decisions that must be made explicit. This exercise was not only valuable for the bot, but helped me in many ways in my own discretionary trading as well.

  3. Incremental progress works: Taking one small step at a time has been key to making consistent progress

  4. The 80/20 rule applies: Getting to 85-90% accuracy has been achievable; pursuing that final 10-15% may not be worth the exponential effort required, plus we have to be careful not to overfit.

For traders considering a similar path, I encourage you to start small, be patient, and recognize that the process of automation itself will deepen your understanding of your own trading strategies.

I'll continue to share updates in the Trader’s Thinktank (we just opened up a specific automation section) as well as on social media as we refine the system and expand its capabilities. There is a chance we will license this bot in the future. If that is something you are interested in, be sure to sign up for our newsletter so you don’t miss any updates.

Previous
Previous

5 Common Mistakes New Prop Traders Make (And How to Avoid Them)

Next
Next

The Golden Ticket Method: A Powerful Strategy to Finally Stop Overtrading