ITQuants blog

By Philippe Bonneau on 6/3/2016 2:13 PM

Before the v7, in order to serialize specific indicators calculated by the internal quant libraries, virtual methods like CSRInstrument::GetCalculationData and CSRInstrument::SetCalculationData were used. These methods are not deprecated and a specific implementation of the class CSRComputationResults should be used. The goal of this post is to explain how to declare such a class and to give a complete sample ready to use.

By Philippe Bonneau on 4/29/2016 11:35 AM

In my previous post, I've described how to update third parties using the API, as it was done by several Misys clients. This time, continuing on this subject, I will explain how to update third parties, using XML files. I remembered that I've implemented this solution at least one time by a client, in a web service. Third parties were updated using the Sophis xml definition, that you can find in the party.xsd file stored in the schema folder. The web service implementation is already described more in details in this post : "How to develop a IIS webservice using the API". Unfortunately, the C++ code is not anymore maintained in the v7: C++ header files that were present in the Low Level Toolkit folders are not delivered anymore. A workaround exists, this is the subject of this post of how to replace this code.

By Philippe Bonneau on 2/2/2016 1:49 PM

Some days ago, I talked about the possibility to use the Sophis.Core.Data, Sophis.Event.Core and Sophis.Event.Risque assemblies, in order to listen to specific events for toolkit columns performance optimizations. I've tried to use the same mechanism in a batch, using the following code :

class Program
{
    static void ProcessEvent(Sophis.Event.IEvent myEvent, ref bool bProcess)
    {
    }
    static void Main(string[] args)
    {
        CSMApi _api = new CSMApi();
        try
        {
            _api.Initialise();
        }
        catch (Exception e)
        {
            return;
        }
        Sophis.Event.SophisEventHandler _handler = new Sophis.Event.SophisEventHandler(ProcessEvent);
        Sophis.Event.SophisEventManager.Instance.AddHandler(_handler, Sophis.Event.Thread.MainProcess, Sophis.Event.Layer.Model);
        bool _stop = false;
        while (!_stop)
        {
            Sophis.Event.SophisEventManager.Instance.Dispatch();
            System.Threading.Thread.Sleep(500);
        }

Unfortunately, this code does not work as is. Putting a break point in the ProcessEvents method shows that it is never called, even if messages are received and processed. The goal of this post is to explain how it works and what it is missing.

By Philippe Bonneau on 12/30/2015 6:37 PM

When overloading Sophis dialogs with the toolkit, you need the Win32 resource IDD of the dialog in order to get the resource template somewhere in the Sophis dll's (in most cases in the SophisRiskEn.dll), and customize it by adding new controls. In previous versions of Sophis, there was an option that permitted to display this IDD, by right double-clicking on the Sophis logo in the About box, and, after, by right clicking in the dialog.

Right-clicking it in the v7 About box does not enable it anymore, even if this option is still usefull. Looking at the code of the dialog, I've found finally the way to display it. The goal of this post is to share it.

Search blog