Transaq

СБО "Transaq" => Подсистема ATF => Topic started by: Владимир I on Апреля 22, 2014, 10:52:38 am

Title: Предлагаю писать в эту тему Ваши пожелания по доработкам ATF
Post by: Владимир I on Апреля 22, 2014, 10:52:38 am
Вот мои пожелания :

1. SMS, email оповещения
   - программные ( signal::SMS( PhoneNumber, message ), signal::email( emailAddress, message ) ) + Multiple версии
   - серверные ( программа регистрирует на сервере событие завершения сессии ( в т.ч. и особенно аварийное ),
     signal::serverSMS( Event, PhoneNumber, message ), signal::serveremail( Event, emailAddress, message )
     где Event - завершение сеанса, аварийное завершение сеанса, потеря соединения с биржей, возможно ещё какие-нибудь события,
     препятствующие работе Транзака и особенно роботов ( которые должны работать круглосуточно ).

2. В параметры инструмента ( выдаваемые функцией getSecInfo() ) надо добавить след. информацию :
   - Код базового актива ( для фьючерсов, опционов )
   - Количество базового актива в инструменте ( для фьючерсов, опционов )
   - Гарантийное обеспечение продавца ( для фьючерсов, опционов )   ==> Через statline
   - Гарантийное обеспечение покупателя ( для фьючерсов, опционов ) ==> Через statline
   - Дата завершения обращения ( для фьючерсов, опционов, облигаций )
   - Шаг цены ==> Через getSecInfo
   Данная информация есть в структуре 4.18 "Информация по инструменту" из Transaq XML Connector.
   Лучше получить доступ к целиковой структуре, лишние параметры не помешают, а кому-то могут понадобиться.

3. Отслеживание режима торгов
   - Функция isTradeSession( Market ) - возвращает 1 если торговая сессия на рынке Market активна, 0 - если не активна
   - События onStartTrading( Market ), onStopTrading( Market ) - начало и конец торговой сессии на рынке Market.
   
4. Функцию trade_action::cancelAllSecAllOrders - чтобы снимала все неисполненные заявки по всем инструментам по текущему рынку и текущему клиенту.
   
5. Сделать окошко выбора инструментов побольше - иначе там названий опционов не видно.

6. Сделать окошко ввода параметров индикатора побольше и шрифт покрупнее.

7. Получение позиций по всем инструментам ( или идентификаторы инструментов по которым открыты позиции )

8. Нужна функция для получения текущего типа переменной ( NOT_DEFINED, number, string, date, hash, array, file, statline, ... )

9. Для объектов типа hash сделать метод .to_string()

10. Сделать функцию replace( строка, что поменять, на что поменять )

11. Сделать функции min( x,y ) и max( x,y ), in_range( x, y, z ) = min( max( x, y ), z )
    in_range( x, y, z ) - ограничить значение x диапазоном [ y, z ]
    Если окажется что y > z, то выдавать программную ошибку.

12. В функции round сделать необязательный второй параметр - до скольких знаков после запятой огруглять.
   
13. События onConnect(), onDisconnect( var reason ) к серверу Транзак

14. Лучше сделать жёсткую типизацию переменных :
    var OptionName : string;
    var TraceFile : file;         // Эквивалентно var TraceFile = new_object( "file" );
    var PutPositionsLots : array; // Эквивалентно var PutPositionsLots = new_object( "array" );
    Это значительно повысит наглядность и надёжность программ.
Title: Re: Предлагаю писать в эту тему Ваши пожелания по доработкам ATF
Post by: REboev on Апреля 23, 2014, 05:50:15 pm
15. Просьба реализовать функцию activationRobots() которая бы включала робота(ов);
16 Просьба реализовать функцию round для округления дробных чисел до XX знаков
 var af=round(1.2356,XX);