Skip to main content

Engine Ticking

The Luna engine is driven by ticking logic, where all ticks are actions that then trigger Contracts to be evaluated (see the below diagram for a visual representation). The frequency of the engine ticks will determine how often the Clauses in a Contract will be reviewed, and therefore it will be the limiting factor on how quickly updates can be provided. The engine tick interval is set at an individual Contract level at the point of creation.

Note: it is possible to update the tick interval settings while the Contract is being lifecycled, but increasing the frequency of ticks will increase the running costs.

For example, if we take a Contract that has a Function written to read the latest stock price of Tesla, if the trade price is updated ~1s but the engine tick rate is set to an interval of 15s, data will only be read every 15 seconds, despite new data being available at more frequent intervals.

For a Contract where we are looking to simulate future data, a User has the ability to update the Tick size as well as determining an offset for the Contract start date.

A visual representation of ticking in the system: