Estimated reading time: 1 min

MachinaTrader's algorithm Engine manages your portfolio and data feeds, letting you focus on your algorithm strategy and execution. Data is piped into your strategy via event handlers, upon which you can place trades. The Engine also provides basic portfolio management and fill modeling. This is provided by the MEAlgorithm base class.

All algorithms extend MEAlgorithm, which provides some key helper properties for you to use: Security Manager, Portfolio Manager, Transactions Manager, Notification Manager, and Scheduling Manager. Along with hundreds of helper methods to make the API easy to use. We'll go into more detail in the rest of this chapter.

The SecurityManager is a dictionary of Security objects. Each asset (crypto, forex pair, etc) in your algorithm has a security object. All the models for a security live on these objects: e.g. Securities["IBM"].FeeModel or Securities["IBM"].Price

PortfolioManager is a dictionary of SecurityHolding classes. These classes track the individual portfolio items profit and losses, fees, and quantity held. e.g. Portfolio["IBM"].LastTradeProfit

Other helpers like TransactionManager, ScheduleManager, and NotificationManager have their own helper methods, which will also be explained in this chapter.

Was this article helpful?
Dislike 0
Views: 8