главная учебник коды официально файлы форум о проекте
Файлы
21.12.2011г.
Плагин AS_QuikTrade
ВНИМАНИЕ!!!
Чтобы плагин работал необходимо файл TRANS2QUIK.dll положить в папку Амиброкера (..\AmiBroker) обычно это C:\Program Files\AmiBroker

Содержит 7 функций
  1. AS_QUIK_CONNECT("ПУТЬ ДО КВИКА")
  2. AS_QUIK_DISCONNECT()
  3. AS_QUIK_SEND_SYNC_NEWORDER("TRANS_ID", "ACCOUNT", "CLIENT_CODE", "TYPE", "CLASSCODE", "SECCODE", "OPERATION", ЦЕНА, РАЗМЕР ЗАЯВКИ)
  4. AS_QUIK_KILL_ORDER("TRANS_ID", "CLASSCODE", "SECCODE", "CLIENT_CODE", "ORDER_KEY")
  5. AS_QUIK_NEW_STOP_ORDER("TRANS_ID", "ACCOUNT", "CLIENT_CODE", "CLASSCODE", "SECCODE", "OPERATION", ЦЕНА ЛИМИТА, ЦЕНА АКТИВАЦИИ, РАЗМЕР ЗАЯВКИ)
  6. AS_QUIK_KILL_STOP_ORDER("TRANS_ID", "CLASSCODE", "STOP_ORDER_KEY")
  7. AS_STRING_ORDER("СТРОКА ЗАЯВКИ")
AS_QUIK_CONNECT("ПУТЬ ДО КВИКА")

Проверяет наличие соединения с Квиком и если его нет, то устанавливает. Кроме того проверяет подсоединен ли Квик к торговому серверу
"ПУТЬ ДО КВИКА" задаётся с двойным обратным слэшем "//"

Возвращает

  1. 1 если есть соединение с Квиком а Квик соединен с сервером
  2. -1 если соединения с Квиком нет
  3. -2 если соединение с Квиком есть, но Квик не соединен с сервером
Пример.
QUIK_CONNECT("C:\\QUIK"); Функция используется для подготовки к проведению операции и проверки возможности проведения операции.



AS_QUIK_DISCONNECT()

Функция используется для разрыва соединения с Квиком

Пример.
AS_QUIK_DISCONNECT(); Разорвет соединение с Квиком. Откровенно говоря не очень то она и нужна, но раз есть CONNECT, то пусть будет и DISCONNECT


AS_QUIK_SEND_SYNC_NEWORDER("TRANS_ID", "ACCOUNT", "CLIENT_CODE", "TYPE", "CLASSCODE", "SECCODE", "OPERATION", ЦЕНА, РАЗМЕР ЗАЯВКИ)

Отравляет синхонную заявку на сервер. Синхронную, значит функция обязательно дождется и вернет ответ Квика на поданную заявку

В случае успешного исполнения заявки вернет номер заявки в ТЕКСТОВОМ формате. В случае ошибки вернет код ошибки
  1. Не отправлена по неизвестной причине - "1"
  2. строка транзакции заполнена неверно - "5"
  3. отсутствует соединение между терминалом QUIK и сервером - "6"
  4. отсутствует соединение между библиотекой Trans2QUIK.dll и терминалом QUIK - "7"
Параметры функции
  1. "TRANS_ID" - TransID транзакции, указанный пользователем
  2. "ACCOUNT" - Номер счета Трейдера
  3. "CLIENT_CODE" - Код клиента
  4. "TYPE" - Тип заявки. Значения: «L» – лимитированная (по умолчанию), «M» – рыночная
  5. "CLASSCODE" - Код класса, по которому выполняется транзакция, например EQBR
  6. "SECCODE" - Код инструмента, по которому выполняется транзакция, например SBER
  7. "OPERATION" - Направление заявки. Значения: «S» – продать, «B» – купить
  8. ЦЕНА - цена заявки
  9. РАЗМЕР ЗАЯВКИ - Количество лотов в заявке
Пример.
AS_QUIK_SEND_SYNC_NEWORDER("222", "NL0011100000", "38000", "L", "EQBR", "LKOH", "B", 1650, 10); Отправит лимитированную заявку на покупку 10ти лотов LKOH по цене не хуже 1650
Если заявка установлена в стакан, то отследить момент её исполнения со 100% вероятностью невозможно.


AS_QUIK_NEW_STOP_ORDER("TRANS_ID", "ACCOUNT", "CLIENT_CODE", "CLASSCODE", "SECCODE", "OPERATION", ЦЕНА ЛИМИТА, ЦЕНА АКТИВАЦИИ, РАЗМЕР ЗАЯВКИ)

Отправляет заявку стоп-лимит на сервер брокера

В случае если заявка принята возвращает её номер в ТЕКСТОВОМ формате. В случае ошибки верет код ошибки аналогичный функции AS_QUIK_SEND_SYNC_NEWORDER()

Параметры функции
  1. "TRANS_ID" - TransID транзакции, указанный пользователем
  2. "ACCOUNT" - Номер счета Трейдера
  3. "CLIENT_CODE" - Код клиента
  4. "CLASSCODE" - Код класса, по которому выполняется транзакция, например EQBR
  5. "SECCODE" - Код инструмента, по которому выполняется транзакция, например SBER
  6. "OPERATION" - Направление заявки. Значения: «S» – продать, «B» – купить
  7. ЦЕНА ЛИМИТА - цена заявки
  8. ЦЕНА АКТИВАЦИИ - цена активации стоп заявки
  9. РАЗМЕР ЗАЯВКИ - Количество лотов в заявке
Пример.
Функция
AS_QUIK_NEW_STOP_ORDER("222", "NL0011100000", "38000", "EQBR", "LKOH", "S", 1550, 1600, 10); Поставит на сервер брокера заявку на продажу 10 лотов LKOH которая при падении цены до 1600 уйдет на биржу в виде лимитной заявки на продажу с лимитом 1550.
При использование этой функции сложность представляет отслеживание момента её исполнения.


AS_QUIK_KILL_STOP_ORDER("TRANS_ID", "CLASSCODE", "НОМЕР СТОП ЗАЯВКИ")

Функция снимает стоп заявку с номером "НОМЕР СТОП ЗАЯВКИ"

В случае успешного снятия заявки вернет 0

Пример.
Функция
AS_QUIK_KILL_STOP_ORDER("222", "EQBR", "999999999"); Снимет стоп зявку с номером 999999999



AS_STRING_ORDER("СТРОКА ЗАЯВКИ")

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

В случае успешной транзакции вернет 0

Пример.
Функция
AS_STRING_ORDER("ACCOUNT=SPBFUT00009; CLIENT_CODE= SPBFUT00009; TYPE=M; TRANS_ID=8; CLASSCODE=SPBFUT; SECCODE=LKH0; ACTION=NEW_ORDER; OPERATION=S; PRICE=16231; QUANTITY=15;"); Заявка на продажу Фьючерс LKOH-3.10, рыночная, 15 контрактов




В ближайшее время на сайте будет пример простейшего робота с использованием этого плагина. В дальнейшем будет несколько разных примеров наворотов для него.
===========================================================================================
Если плагин понравился, то можете в благодарность отправить немного денег на оплату этого хостинга.

Это можно сделать через терминал QIWI.
Для оплаты в главном меню терминала выберите «Оплата услуг», далее раздел «Другие услуги», нажмите Majordomo. Следующим шагом Вам необходимо выбрать оплачиваемую услугу - Хостинг Нажмите кнопку «Далее», и на появившейся цифровой клавиатуре введите номер аккаунта (AC_18796) только цифры. После этого снова нажмите кнопку "Далее" и внесите оплачиваемую сумму.

Думаю 500 он стоит.