Native Reports and C# Templates

This post is a bit stale. Our new reports look much better, and are more feature-rich.

Until now, TuringTrader required either Excel or R to render reports. With the latest version, TuringTrader can also render natively with C# templates.

When we designed TuringTrader, we chose a report-based rendering paradigm to allow maximum flexibility for reports. We wanted to be in full control of the data we present and their exact way of rendering them. We believe we have achieved this goal, and have used it extensively for our purposes on the business end of things.

However, we also learned that this created a bit of a barrier of entry for developers new to TuringTrader: instead of being a stand-alone tool, TuringTrader now had external dependencies on either Microsoft Office or R.

To resolve this issue, we have decided to support report templates written in C#. This feature relies on the dynamic compile described in a previous post. When TuringTrader renders through a C# template, it opens a dialog window containing an OxyPlot View. The template supplies a ViewModel to this dialog, providing data series and legends and everything OxyPlot can do. Coding such a template is simple, have a peek at the code in our repository. And here is a sample of the SimpleReport template in action:

These native reports add value due to their ease of use, and their speed of rendering. When it comes to sorting and filtering data in a report, Excel is still hard to beat. Ultimately, it’s a matter of preference, and we are glad to have added another option. Enjoy!

Happy coding!