Quant traders continually strive to improve their correctness, effectiveness, and accountability by eliminating manual workflows to become more systematic.
To improve their correctness, effectiveness, and accountability quant traders strive for a systematic approach to eliminate manual workflows and become more automatic.
The tpt, lean-engine-install automated solution, installs the Lean Engine trading application in an Azure hosted computing environment so traders can focus on algorithm backtesting, confident in their computing environment configuration, its security, and their total cost of ownership trade-offs.
The Lean Engine application is an open-source algorithmic trading engine built for desktop and cloud use. The Lean Engine drives the web based backtesting platform QuantConnect. QuantConnect provide fully hosted services for algorithm development, backtesting, and trading. TecProTools is independent and not affiliated with QuantConnect.
The tpt automated solution delivers three user experiences:
· Install the target Azure computing environment;
· Install a Lean Engine application build, release, deploy, pipeline and;
· Initiate a Lean Engine application deployment from github to the target Azure vm, when the trader’s lean engine github fork is updated.
The result of the above, is a version of the Lean Engine application, installed in an Azure hosted computing environment, secured by Azure active directory through the trader’s Azure subscription sitting ready to backtest quant developer’s algorithm.
Typically it is the operations engineer role that drives those user experiences.
Although frequently the tech savvy quant algorithm developer assumes the operations engineer role. Doing so provides the algorithm developer with a detailed view of their backtest environment but at the same time minimizing their github, vsts, azure operations engineering learning curve.
For algorithm version control and to make the algorithm development, check-in, and unit test process is repeatable, the tpt automated solution uses github or vsts.
To automate both the lean engine application and quant algorithm build, release, deployment processes the tpt automated solution uses the vsts build, release, deploy pipeline. Which enables that the lean engine version used for algorithm unit tests is to be consistent with the lean engine version deployed in the Azure hosted backtest environment.
The above two user experiences occur frequently during the quant’s algorithm develop, unit test, cycle. As such this mainly automated process reduces the developer’s ‘cycle-time’ and reduces typo and sequence mistakes.
Less frequently performed multistep workflows can result in a different source of errors and time loss. These can arise when the Azure hosted computing environment supporting the lean engine application is rebuilt.
The tpt lean engine (LE) automated solution is a collection of short azure resource manager powershell scripts, workflows, and templates that install the lean engine application and its supporting computing environment which includes compute components e.g. vm, storage e.g. blob, network e.g. vnet, public ip address, client certificate secured vpn gateway, a service principal and the necessary security certificates e.g. vpn client, and service principal certificates.
The automated solution contains three security contexts: github, vsts, azure. Vsts and azure both recognize a Microsoft account and provide ‘single sign on’. So two, not three, sets of distinct credentials are required github, and Microsoft -- either a Windows, or alternatively an Azure active directory organization account.
Activities that can be performed in the azure hosted computing environment include: updating the quant developer’s algorithm; test data updates; updates to the lean engine application; and the usual vm and vnet admin activities.
Control over those activities can be achieved through the use of windows server user accounts and permissions, and azure ad role based access controls i.e. aka rbac.
The developer’s security, change management, governance and audit policies are determined by the azure, vsts, and GitHub, security and logging features.
The Lean Engine application together with the computing environment that sustains it, is a sophisticated machine. And like all sophisticated machines it requires periodic attention. That attention can be provided by the client with or without tpt assistance to install, maintain, and dismantle their quant algorithm development and backtest computing environments.