If there is one thing that is certain in life, it’s that nothing ever stays the same. As of yesterday, I am no longer working with the ATS Research group. There is no tea. The research group is an off-shoot of the Automated Trading Strategies Substack authored by Celan Bryant. Celan, and the other members of the group, were incredible to work with, and I have nothing but good things to say about the time I spent working with them. If it wasn’t for ATS and Celan, I would not be doing what I am doing now. I stepped down because of the conflict that exists with both of us running separate Substack publications.
When I started this, I didn’t have much of a goal other than providing a running log of my research and development process. My thought process was that many people like me want to get into the world of Automated Trade Systems, and seeing someone else working through the process could be really helpful. Because of my involvement with the ATS Research group, I had access to (and permission to use) the strategies on the ATS Substack. Because I owe ATS and Celan so much, and I am no longer associated with ATS Research, I am not going to republish any more ATS strategies. I will continue to update and improve the ones that we already have moving forward. All of the plans I have for those strategies will remain the same.
This outcome is a blessing and a curse. On the one hand, I had a group of designed strategies with good backtest results to code and work through with HGT, but now I don’t have that. On the other hand, I no longer have any conflicting concerns when it comes to how I want to continue my research and work. I am back to working alone. That’s good for HGT. It means that I can branch out and work with different platforms and different coding languages (read Python).
So, my previous plans of working through the ATS Twilight Strategies have been scrapped, and it’s time to pivot. Since I had one on deck to release this week, I will have to find something else to release at the end of this week. I am still determining what this will be, but I will make sure it isn’t just filler.
For now, I will continue to work with NinjaTrader and NinjaScript, but it won’t be long before I switch over to QuantConnect to conduct my research. When I switch, I am going to transition to researching with Python. The strategies can be converted into any language/framework necessary, and I will provide any help I can to members in doing so.
When I have polished our custom NinjaScript framework, I intend to make the repository for it public and open source. I have always preferred working with open-source code, and I think this would be a great way to provide people with a different framework for designing strategies in NinjaTrader. Only the framework code will be made publicly available. The strategies that are currently in the repository will be moved into a private repo for HGT paid subscribers.
I am currently working on creating a documentation site for the framework, and I intend on having detailed instructions on how to use the framework in the documentation. Once I move over to using QuantConnect, the development of the NinjaScript framework will slow down. Making it open source will give more people access to the code and allow them the opportunity to help improve it.
Now, let’s talk about changes…
I want to move to Linux.
What the fuck did you just say, Larry? I thought you were a day trader. You know we only exist on Windows! Get out of here with that neckbeard, Linux bullshit.
That’s true, for the most part. Damn near every piece of legitimate trading software is on Windows. If you trade manually or chart with real-time data, Windows is almost completely inescapable. If you are a trade system developer or a quant researcher, Windows starts to become more optional. I want to do both, and I want to do it on Linux.
Why do I want to trade manually AND research automated trade systems?
Because I think they are linked. I once asked a paid quant researcher (worked at some firm, idk) if he traded. He said that he did not and that he believed he got more bang for his buck focusing on his research job. That’s fair. I have a counter to that thought process, though, and I’m going to explain it with an analogy to my previous line of work.
I worked for a good period of time overseas as a protective security specialist and paramedic. We provided protective services for US diplomatic efforts in austere environments. It sounds sexy, but like everything else, it isn’t exactly what you are imagining. My role as the medic was not just to perform duties as a paramedic but also to work as a protective element on the team until such a time that my medic skills were necessary. It is a rare occurrence, but due to the nature of the job, it has traditionally been required that the paramedics have previous combat experience in order to qualify for the job.
This is understandable, as it’s hard to know how a person is going to react in a stressful, possibly kinetic, environment. So, what happens when it suddenly becomes difficult to find paramedics and EMTs who don’t have this experience? As time went on and we drew down in Iraq and Afghanistan, it became increasingly difficult to find qualified individuals who were willing to take the job. This meant they needed to revisit the requirements and make adjustments. The adjustment they made waived the need for combat experience and allowed medics and EMTs the possibility to qualify if they worked in “high-threat urban environments” or had previous “high-threat law enforcement” experience. Top that off with already loose interpretations of the contract language, and suddenly, you are getting everyday medics and EMTs approved for work overseas.
Many of these prospects washed out during the training/vetting process. It’s hard to teach someone how to shoot a machine gun (M249, M240B), let alone get them to qualify on it without the use of a T&E on a tombstone qualification (if you know, you know) in just a few hours. Then there were those who listened, learned, and managed to make it through the tactically oriented course with minimal training beforehand. The question still remains. Will these medics and EMTs be able to perform their job when it counts without prior experience in a combat zone?
This question can be debated all day, but in the end, you never know what someone is capable of until you do. These events are rare, but when/if they happen, they tend to be big. Remember the attempted attack/riot against the US Embassy in Iraq (2020)? A lot of people believed that they shouldn’t have to wait for something bad to happen to find out if their medic is going to be able to function in such a dynamic environment.
This was the subject of great discontent with many of the teams. They were concerned that the newer medics weren’t qualified for the job and that they didn’t know if they could count on them in the field. There were plenty of examples of these new medics wasting barricades during range time or stumbling through housework like they had two left feet. This didn’t help their case, but it didn’t matter. The company was going to hire whoever they were allowed to fill the position by contract verbiage. The burden to make sure an inexperienced team member was ready fell on the team itself. If they chose to take responsibility for themselves, that is.
I believe that it is better to have prior experience, but I also believe that some individuals have what it takes to perform in those environments without it. You can usually get a pretty good feeling about a person and whether or not they can work under pressure. In case you are wondering, I fit into the experienced group. While I believe that someone without that experience can be trained and trusted, a team should prepare for the event that they might not be able to perform. You just don’t know until you do.
Bringing it back to trading and why I think it is good for researchers to be traders. You get experience seeing how the market moves and reacts. You get to experience the fear, anxiety, excitement, elation, and dejection that come with trading. It gives you a perspective that you wouldn’t otherwise have. The same principle applies to the scenario above. Knowing that your medic has had experience in a kinetic environment before gives you more comfort. They have experienced it before, and they voluntarily chose to pursue a career that put them back in that environment. That says a lot.
The cool thing about trading is that you don’t even have to do it with real money. You lose some of the pressure, but trading in simulation will still give you an experience that can only help with the research process. The markets may be numbers, but they don’t move without human input. It’s hard to see how sporadic and unpredictable it can be if you don’t play the game. That’s why I want to do them both.
Why Linux and why not Mac?
I need tools, not beauty. I also like open-source code and developer-driven communities. I occasionally dabble in video games, and Linux has come a long way in this regard, too.
Will this affect subscribers?
Not at all. My goal is to make sure that the strategies and research I present are useable on whatever system or platform you choose to use. I will present logic and code with each strategy so subscribers can do just that. I am also willing to help subscribers with their setup to the best of my ability. If there is a common request/setup, I will try to create a tutorial around using it to develop some of our strategies.
What comes next?
I will still drop something this week. Since I don’t have a new strategy lined up, I will probably add a variation to Strategy X at the end of this week. After that, I am going to start working with QuantConnect and start testing out our strategies on that platform. I will continue to develop the custom NinjaScript framework we are using. After a few months, my hope is that it will be in a good enough condition to convert to a public repository.
If there is anyone who wants to become a paid subscriber but isn’t able to pay for financial reasons, please reach out to me. I am willing to work with people who want to learn but might not have the funds for whatever reason. I will take these on a case-by-case basis, but my goal is to make this information more available to people who want to learn. That is one of the reasons I plan on opening up the NinjaScript framework to the public. This information should not be so difficult or expensive to obtain.
Thanks for taking the time to read this post. If you have any questions, or a subject/strategy you want me to research, feel free to comment below or reach out to me via e-mail. I will be working diligently the next few weeks to ensure that that I am providing as much value to the community as possible. I am also going to experiment with posting some articles with my charts while I work on my technical analysis skills. These posts will be available to paid subscribers. If this is something that the community would like to see, leave a comment or like the post.
Disclaimer: the following post is an organized representation of my research and project notes. It doesn’t represent any type of advice, financial or otherwise. Its purpose is to be informative and educational. Backtest results are based on historical data, not real-time data. There is no guarantee that these hypothetical results will continue in the future. Day trading is extremely risky, and I do not suggest running any of these strategies live.
The code for strategies and the custom functions/framework I use for strategy development in NinjaScript can be found at the Hunt Gather Trade GitHub. This code repository will house all code related to articles and strategy development. If there are any paid subscribers without access, please contact me via e-mail. I do my best to invite members quickly after they subscribe. That being said, please try and make sure the e-mail you use with Substack is the e-mail associated with GitHub. It is difficult to track members otherwise.
Feel free to comment below or e-mail me if you need help with anything, wish to criticize, or have thoughts on improvements. Paid subscribers can access this code and more at the private HGT GitHub repo. As always, this newsletter represents refined versions of my research notes. That means these notes are plastic. There could be mistakes or better ways to accomplish what I am trying to do. Nothing is perfect, and I always look for ways to improve my techniques.