Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
8 Язык QPILE.doc
Скачиваний:
38
Добавлен:
11.03.2015
Размер:
813.57 Кб
Скачать
    1. Функции для работы с заявками

Функции предназначены для создания заявок и отправки их в торговую систему.

      1. Send_transaction

Отправляет заявку с параметрами, указанными в массиве «trans_params» и ожидает ответа торговой системы в течение «wait_timeout_for_replay» (в секундах, не менее 5). Элементы массива «trans_params» заполняются по правилам создания строки для импорта транзакций из файла (подробнее см. Раздел 6, п.6.8).

MAP SEND_TRANSACTION (DOUBLE wait_timeout_for_replay, MAP trans_params)

Функция возвращает ассоциативный массив (MAP), содержащий результат обработки заявки:

Параметр

Тип

Описание

1.

RESULT

DOUBLE

Результат выполнения операции. Возможные значения:

«1» – выполнено успешно, «0» – произошла ошибка.

2.

RESULT_EX

STRING

Расширенная диагностика выполнения операции. Может принимать значения, соответствующие полю «STATUS» в «.tro»-файле при импорте транзакций (см. Раздел 6, п. 6.8.4)

3.

ORDER_NUMBER

STRING

Регистрационный номер заявки в торговой системе

4.

DESCRIPTION

STRING

Текстовый комментарий с ответом сервера QUIK или торговой системы.

Пример:

new_global("trans_params", "")

new_global("trans_result", "")

trans_params = ""

trans_params = set_value (trans_params, "TRANS_ID", "333")

trans_params = set_value (trans_params, "ACTION", "NEW_ORDER")

trans_params = set_value (trans_params, "CLASSCODE", "EQBR")

trans_params = set_value (trans_params, "SECCODE", "EESR")

trans_params = set_value (trans_params, "ACCOUNT", "L01-00000F00")

trans_params = set_value (trans_params, "OPERATION", "B")

trans_params = set_value (trans_params, "PRICE", "7.561")

trans_params = set_value (trans_params, "QUANTITY", "1")

trans_params = set_value (trans_params, "CLIENT_CODE", "")

trans_params = set_value (trans_params, "TYPE", "L")

trans_result = SEND_TRANSACTION (30, trans_params)

WRITELN ("qpile_trans.log", get_value (curr_datetime, "DATETIME") & ": " & "Result: " & get_value (trans_result, "RESULT") & ", Result_ex: " & get_value (trans_result, "RESULT_EX") & ", OrderNum: " & get_value (trans_result, "ORDER_NUMBER") & ", Description: " & get_value (trans_result, "DESCRIPTION"))

    1. Сервисные функции

      1. Get_trade_date

Возвращает дату текущей торговой сессии.

MAP GET_TRADE_DATE ()

Функция возвращает ассоциативный массив (MAP), содержащий параметры:

Параметр

Тип

Описание

1.

DATE

STRING

Торговая дата в виде строки «DD.MM.YY»

2.

YEAR

DOUBLE

Год

3.

MONTH

DOUBLE

Месяц

4.

DAY

DOUBLE

День

Пример:

writeln(log_file_name, get_value(GET_TRADE_DATE(), "Date"))

Записывает в файл строку вида:

02.06.04

      1. Get_datetime

Возвращает текущие дату и время.

MAP GET_DATETIME ()

Функция возвращает ассоциативный массив (MAP), содержащий параметры:

Параметр

Тип

Описание

1.

DATETIME

STRING

Торговая дата в виде строки «DD.MM.YYYY HH:MM:SS.sss», где «sss» – миллисекунды

2.

YEAR

DOUBLE

Год

3.

MONTH

DOUBLE

Месяц

4.

DAY

DOUBLE

День

5.

HOUR

DOUBLE

Час

6.

MIN

DOUBLE

Минута

7.

SEC

DOUBLE

Секунда

8.

MILLISEC

DOUBLE

Миллисекунда

Пример:

writeln(log_file_name, get_value(GET_DATETIME(), "Datetime"))

Записывает в файл строку вида:

02.06.2004 16:57:34.460