Просто запросите информацию один раз при старте программы. Для фьючерсов можно запросить по окончанию основного и/или промежуточного клиринга.
Код: Выделить всё
using AD.Common.Helpers;
using AD.Common.DataStructures;
using Core;
       public void GetFinInfoExtEntity() 
       {
            FinInfoExtEntity finInfoExtEntity;
            if (DataStorageShared.FinInfoExt.TryGetValue(idFi, out finInfoExtEntity))
            {
                Debug.Print(finInfoExtEntity.ToString());
            }
            else
            {
                Debug.Print("Не шмогла найти finInfoExtEntity");
            }
        }
IdFI инструмента можно получить так:
Код: Выделить всё
    int IdFI = DataStorageShared.GetIdFI("SiH9", "ФОРТС");
Обратная операция:
Код: Выделить всё
     var q = DataStorageShared.GetObject(IdFI).SymbolObject;
     var s = DataStorageShared.GetObject(IdFI).NameObject; ;
P.S.
Но всё это игры в песочнице. По-крайней мере до тех пор, пока не будет возможности подавать и удалять поручения, хотя бы лимитные.
P.P.S.
В любом случае нужно будет переписать половину терминала. И это без GUI.