Автор: Николай Камынин
Ниже приведена программа портфеля, позволяющая проверить запаздывание времени последней сделки отностительно времени сервера QUIK и времени Вашего компьютера
PORTFOLIO_EX TEST_NK;
DESCRIPTION Тест_Времени_Сбербанк 22.03.2010;
CLIENTS_LIST ALL_CLIENTS;
FIRMS_LIST FIRMID;
PROGRAM
‘—————
st=CREATE_MAP()
T1=SUBSTR (get_value(GET_DATETIME(), «Datetime»),11,8) ‘текущее время’
st=SET_VALUE(st,»T1″,T1)
T3=0+GET_VALUE(GET_PARAM_EX(«EQBR», «SBER03», «TIME»),»param_value») ‘ время сделки’
T5=GET_INFO_PARAM («SERVERTIME») ‘время сервера
st=SET_VALUE(st,»T5″,T5)
T3=SUBSTR (T3,0,2) & «:» & SUBSTR (T3,2,2) & «:» & SUBSTR (T3, 4,2) ‘переводим в HH:MM:SS
st=SET_VALUE(st,»T3″,T3)
T4=60*(60*SUBSTR (T3,0,2) + SUBSTR (T3, 3,2))+ SUBSTR (T3, 6,2)
T2=60*(60*SUBSTR (T1,0,2) + SUBSTR (T1, 3,2))+ SUBSTR (T1, 6,2)
T6=60*(60*SUBSTR (T5,0,2) + SUBSTR (T5, 3,2))+ SUBSTR (T5, 6,2)
T7=T6-T4 ‘разность сервера и сделки
st=SET_VALUE(st,»T7″,T7)
T8=T2-T4 ‘разность текущего и сделки
st=SET_VALUE(st,»T8″,T8)
T9=T2-T6 ‘разность текущего и сервера
st=SET_VALUE(st,»T9″,T9)
ADD_ITEM(1,st)
END_PROGRAM
PARAMETER T1;
PARAMETER_TITLE TimePC;
PARAMETER_DESCRIPTION TimePC;
PARAMETER_TYPE STRING(8);
END
PARAMETER T3;
PARAMETER_TITLE TimeLast;
PARAMETER_DESCRIPTION TimeLast;
PARAMETER_TYPE STRING(8);
END
PARAMETER T5;
PARAMETER_TITLE TimeSERV;
PARAMETER_DESCRIPTION TimeServer;
PARAMETER_TYPE STRING(8);
END
PARAMETER T7;
PARAMETER_TITLE SERV_Last;
PARAMETER_DESCRIPTION Server_Last;
PARAMETER_TYPE NUMERIC(3,0);
END
PARAMETER T8;
PARAMETER_TITLE PC_Last;
PARAMETER_DESCRIPTION PC_Last;
PARAMETER_TYPE NUMERIC(3,0);
END
PARAMETER T9;
PARAMETER_TITLE PC_SERV;
PARAMETER_DESCRIPTION PC_SERV;
PARAMETER_TYPE NUMERIC(3,0);
END
END_PORTFOLIO_EX
Как выясинлось в процессе исследований и консультаций с разработчиками QUIK дял более стабильной работы надо снять флаг «Запрашивать данные раз в …» в НАСТРОЙКА/ОСНОВНЫЕ/ПОЛУЧЕНИЕ ДАННЫХ
При этом получаются следующие данные, например, по акции Сбербанка сегодня:
TimePC | TimeLast | TimeSERV | SERV_Last | PC_Last | PC_SERV |
14:58:07 | 14:58:07 | 14:58:06 | -1 | 0 | 1 |
14:58:05 | 14:58:05 | 14:58:05 | 0 | 0 | 0 |
14:58:04 | 14:58:04 | 14:58:04 | 0 | 0 | 0 |
14:58:03 | 14:58:02 | 14:58:03 | 1 | 1 | 0 |
14:58:02 | 14:58:02 | 14:58:02 | 0 | 0 | 0 |
14:58:01 | 14:57:54 | 14:58:01 | 7 | 7 | 0 |
14:58:00 | 14:57:54 | 14:58:00 | 6 | 6 | 0 |
14:57:59 | 14:57:54 | 14:57:59 | 5 | 5 | 0 |
14:57:58 | 14:57:54 | 14:57:58 | 4 | 4 | 0 |
14:57:57 | 14:57:54 | 14:57:57 | 3 | 3 | 0 |
14:57:56 | 14:57:54 | 14:57:56 | 2 | 2 | 0 |
14:57:55 | 14:57:54 | 14:57:55 | 1 | 1 | 0 |
14:57:54 | 14:57:54 | 14:57:54 | 0 | 0 | 0 |
14:57:53 | 14:57:52 | 14:57:53 | 1 | 1 | 0 |
14:57:52 | 14:57:52 | 14:57:52 | 0 | 0 | 0 |
14:57:51 | 14:57:49 | 14:57:51 | 2 | 2 | 0 |
14:57:50 | 14:57:49 | 14:57:50 | 1 | 1 | 0 |
14:57:49 | 14:57:47 | 14:57:49 | 2 | 2 | 0 |
14:57:48 | 14:57:47 | 14:57:48 | 1 | 1 | 0 |
14:57:47 | 14:57:47 | 14:57:47 | 0 | 0 | 0 |
14:57:46 | 14:57:42 | 14:57:45 | 3 | 4 | 1 |
14:57:45 | 14:57:42 | 14:57:44 | 2 | 3 | 1 |
14:57:44 | 14:57:42 | 14:57:43 | 1 | 2 | 1 |
14:57:43 | 14:57:42 | 14:57:42 | 0 | 1 | 1 |
14:57:42 | 14:57:40 | 14:57:42 | 2 | 2 | 0 |
14:57:41 | 14:57:40 | 14:57:41 | 1 | 1 | 0 |
14:57:40 | 14:57:40 | 14:57:40 | 0 | 0 | 0 |
14:57:39 | 14:57:38 | 14:57:38 | 0 | 1 | 1 |
14:57:38 | 14:57:38 | 14:57:37 | -1 | 0 | 1 |
14:57:37 | 14:57:34 | 14:57:37 | 3 | 3 | 0 |
14:57:36 | 14:57:34 | 14:57:35 | 1 | 2 | 1 |
14:57:35 | 14:57:34 | 14:57:35 | 1 | 1 | 0 |
14:57:34 | 14:57:34 | 14:57:33 | -1 | 0 | 1 |
14:57:33 | 14:57:31 | 14:57:33 | 2 | 2 | 0 |
14:57:32 | 14:57:31 | 14:57:32 | 1 | 1 | 0 |
14:57:31 | 14:57:31 | 14:57:30 | -1 | 0 | 1 |
14:57:30 | 14:57:29 | 14:57:30 | 1 | 1 | 0 |
14:57:29 | 14:57:29 | 14:57:29 | 0 | 0 | 0 |
14:57:28 | 14:57:27 | 14:57:27 | 0 | 1 | 1 |
14:57:27 | 14:57:26 | 14:57:26 | 0 | 1 | 1 |
14:57:26 | 14:57:26 | 14:57:25 | -1 | 0 | 1 |
14:57:25 | 14:57:25 | 14:57:24 | -1 | 0 | 1 |
14:57:24 | 14:57:24 | 14:57:23 | -1 | 0 | 1 |
14:57:23 | 14:57:22 | 14:57:22 | 0 | 1 | 1 |
14:57:22 | 14:57:21 | 14:57:21 | 0 | 1 | 1 |
14:57:21 | 14:57:20 | 14:57:20 | 0 | 1 | 1 |
14:57:20 | 14:57:18 | 14:57:19 | 1 | 2 | 1 |
14:57:19 | 14:57:18 | 14:57:18 | 0 | 1 | 1 |
14:57:17 | 14:57:17 | 14:57:17 | 0 | 0 | 0 |
14:57:16 | 14:57:16 | 14:57:16 | 0 | 0 | 0 |
14:57:15 | 14:57:15 | 14:57:15 | 0 | 0 | 0 |
14:57:14 | 14:57:14 | 14:57:14 | 0 | 0 | 0 |
14:57:13 | 14:57:10 | 14:57:13 | 3 | 3 | 0 |
14:57:12 | 14:57:10 | 14:57:12 | 2 | 2 | 0 |
14:57:11 | 14:57:10 | 14:57:10 | 0 | 1 | 1 |
14:57:10 | 14:57:10 | 14:57:10 | 0 | 0 | 0 |
14:57:09 | 14:57:09 | 14:57:09 | 0 | 0 | 0 |
14:57:08 | 14:57:07 | 14:57:08 | 1 | 1 | 0 |
14:57:07 | 14:57:07 | 14:57:07 | 0 | 0 | 0 |
14:57:06 | 14:56:59 | 14:57:05 | 6 | 7 | 1 |
14:57:05 | 14:56:59 | 14:57:05 | 6 | 6 | 0 |
14:57:04 | 14:56:59 | 14:57:04 | 5 | 5 | 0 |
14:57:03 | 14:56:59 | 14:57:03 | 4 | 4 | 0 |
14:57:02 | 14:56:59 | 14:57:01 | 2 | 3 | 1 |
14:57:01 | 14:56:59 | 14:57:01 | 2 | 2 | 0 |
14:57:00 | 14:56:59 | 14:57:00 | 1 | 1 | 0 |
14:56:59 | 14:56:59 | 14:56:59 | 0 | 0 | 0 |