Как написать торговый робот для quik

Блог им. robot-scalper

    • 19 февраля 2019, 14:37
    • |

Торговый робот для QUIK на LUA

К нам поступил запрос на создание многопараметрического робота, с кучей условий торговой логики и в конце с припиской: «За работу я готов оплатить 800 рублей». Как у заказчика получилась такая сумма осталось не ясно. Возможно, всё тривиально, и это просто все его доступные средства, которые остались от торговли по интуиции. А возможно человек просто не понимает какую работу нужно проделать и из чего образуется цена на торговых роботов. Но это не страшно. Мы как раз сейчас и постараемся разобраться в этом.

Итак, чтобы разработать робота нужно выполнить определенные этапы. Рассмотрим их.

  1. Нужно определиться с торговой стратегией и формализовать её (точки входа, стоп-лоссы, тейк-профиты, фильтры и т.п.);
  2. Желательно создать прототип данного робота;
  3. Проверить работоспособность стратегии и прототипа на исторических данных;
  4. Желательно провести оптимизацию стратегии и найти оптимальные значения параметров;
  5. Нужно провести анализ сделок и добавить общие фильтры на ситуации в которых робот часто показывает убытки. Главное, нельзя примерять переоптимизацию! Иначе в реальной торговли результаты будут сильно отличаться! После этого возвращаемся к пункту 4. И работаем до тех пор пока стратегия не будет универсальной или пока мы её не забракуем как непригодную. Так тоже бывает, и не редко.
  6. Теперь можно приступать к непосредственной разработке робота, например, на LUA под QUIK;
  7. После разработки нужно протестировать робота и убедиться в четкой работе скрипта. Если обнаружатся неточности в работе или явные баги, то их нужно исправить и заново запустить робота на тестирование;
  8. Для того чтобы пользователь мог легко управляться с роботом требуется сделать удобный интерфейс и подробное описание функционала, то есть создаем документацию;
  9. Плюс нужна подробная инструкция с картинками по установке и использованию робота для начинающих пользователей;
  10. И конечно же всё равно у заказчика будут появляться вопросы, на которые нам нужно отвечать. То есть, нужна техническая поддержка.

И это мы рассмотрели идеальный вариант, когда во время работы заказчик не вносит изменения в торговую стратегию.
Как Вы могли убедиться, для создания качественного торгового робота требуется довольно много времени и сил. Мы здесь даже не касаемся самого программирования, которое тоже является довольно сложным и долгим процессом.

По поводу технических инструментов мы можем порекомендовать следующие варианты:

  1. Для тестирования прототипа стратегии на исторических данных хорошо подойдет программа TSLab.
  2. Для реальной торговли на боевом счете желательно использовать роботов на LUA. В этих скриптах можно прописать всевозможные проверки торговой логики и проверки на корректность входных данных (биржа может передавать и нулевую цену актива и пустые значения, робот при этом не должен «падать» и выдавать баги). Плюс, робот на LUA подключается непосредственно в QUIK, имеет высокое быстродействие, не занимает много ресурсов компьютера и не требует ежемесячной абонентской платы.

Рентабельно ли разрабатывать таким образом роботов за 800 рублей или даже за 3-5 тыс.рублей? Конечно же нет.
Что за такие цены могут предложить на рынке? Только скачанный где-то непонятный скрипт с сомнительной документацией и конечно без качественной техподдержки. Бесплатный сыр мы все знаем где бывает. Да и скупой платит дважды.

Нужно ли платить разработчикам роботов или нет, каждый решает для себя сам. Можно и не платить, а взять и методично, по пунктам, всё сделать самостоятельно. Сколько уйдет на это времени? И какой будет конечный вариант? Зависит непосредственно от опыта, знаний и умений конкретного человека.
Чем больше у человека опыта в программировании, в трейдинге, в автоматизации бизнес-процессов, в тестировании, в умении оптимизировать стратегии, тем быстрее и качественнее будет результат. Если вы начинающий алготрейдер и у вас нет наставника с его опытом и наработками, то настраиваться сразу желательно на 6 месяцев работы и более.
Профессиональный алготрейдер может передать знания по созданию прототипов, тестированию на истории и оптимизации роботов за более короткий срок. И это будет скорее всего платная услуга.

Кстати, как вы считаете, что лучше, купить готового робота за несколько тысяч рублей или за эту же сумму научиться самостоятельно разрабатывать и тестировать роботов? Напишите в комментариях.

По различным вопросам обращайтесь в личку или на почту:
mail@robot-scalper.ru

Очень много интересной и важной информации можно найти здесь:
https://www.instagram.com/robot_scalper/

Наш сайт: Robot-Scalper.ru

Желаем Вам успехов в трейдинге!
Берегите себя и свой депозит!

  • хорошо

  • 18

Как и многие другие, я начинал свою работу в качестве трейдера с торгового терминала Metatrader4. И когда у меня созрела необходимость в написании собственных скриптов и советников (торговых роботов), я не мудрствуя лукаво открыл учебник по MQL4 и изучив основы этого языка, через пару часов уже мог состряпать простую программку.

Дальше-больше, после реализации простых скриптов пришло желание запрограммировать более сложные алгоритмы торговли. Возникали, конечно, вопросы, но ответы на них достаточно легко дают Яндекс с Гуглом. В настоящее время существуют столько сайтов и форумов посвящённых данной тематике, что достаточно трудно найти такой вопрос, который остался бы без ответа после более-менее тщательного штудирования интернета.

Для чего я вам все это рассказал? Дело в том, что никакого особого опыта в программировании, кроме школьных уроков информатики у меня до этого не было. А это означает, что для того, чтобы справиться с этим делом вовсе не обязательно быть программистом.

Если же у вас за плечами уже есть какой-либо опыт программирования на любых языках, то данная задача вам покажется элементарной. Уверяю вас, так оно на самом деле и есть, на деле здесь всё оказывается куда проще и стоит только начать, как вы незаметно для себя уже превратитесь в матёрого создателя торговых роботов.

Как написать программу

В QUIK предусмотрена возможность установки двух основных типов программ скриптов и торговых роботов:

  1. Программ написанных на языке QPILE;
  2. Программ написанных на языке программирования LUA.

На мой взгляд, наиболее простым вариантом является работа с программами на языке LUA. Область применения данного языка программирования не ограничивается только написанием программ для торговых терминалов, на нём пишут и компьютерные игры, и мобильные приложения, и много чего ещё. Но нас сейчас интересует его использование в контексте написания программ торговых роботов для торгового терминала QUIK. К слову сказать, используемая здесь разновидность данного языка часто именуется QLUA (Q от QUIK).

Программирование на LUA

Описать все особенности и синтаксические конструкции языка в рамках одной этой статьи конечно не получится, впрочем в этом и нет особой необходимости. Как я уже говорил, синтаксис здесь довольно простой и включает в себя все основные команды свойственные любому современному языку программирования. Есть, конечно, некоторые специфические моменты, но все они подробно описаны на многочисленных тематических ресурсах. Например здесь: https://forum.quik.ru/forum10/topic2029/

Я сильно не заморачивался ни синтаксисом, ни изучением языка, а просто сразу начал писать программу. По ходу необходимости, уточнял синтаксис той или иной необходимой мне команды через поисковики. Например запрос типа “оператор для открытия позиции в QLUA” подсказывал мне, что для данной цели необходимо использовать оператор  sendTransaction(), а запрос “синтаксис оператора sendTransaction() в LUA” выдавал в первой же позиции результатов поиска сайт содержащий ответ:

Результаты поиска

На этом сайте вы найдёте синтаксис всех команд языка с конкретными примерами их использования: http://luaq.ru/

А вот здесь вы найдёте полное руководство по азам программирования на LUA: https://lua.org.ru/contents_ru.html

Кроме этого есть ещё масса других ресурсов содержащих исчерпывающую информацию по данной теме.

Где писать программу. Какой редактор использовать?

Прелесть состоит в том, что для написания программ на QLUA можно обойтись штатными средствами Windows, без установки каких-либо специализированных редакторов. Вы можете писать и редактировать программу прямо в текстовом файле.

Для этого сначала создаёте обычный текстовый файл:

Открытие текстового документа

Затем сохраняете его изменив расширение с .txt на .lua. Для этого необходимо проделать следующий ряд нехитрых манипуляций:

  • В меню текстового документа “Файл” необходимо выбрать пункт “Сохранить как”
  • В выпавшем окне сохранения нужно вместо расширения “Текстовый документ” выбрать расширение “Все файлы”
  • К названию сохраняемого документа добавить .lua
  • Нажать кнопку “Сохранить”
Сохранение файла lua

Неудобство данного метода написания состоит в том, что без редактора невозможно скомпилировать файл и проверить его на наличие ошибок. Однако это не так критично, как может показаться на первый взгляд, поскольку наличие ошибок (а также их краткое описание) вам выдаст торговый терминал после того как вы попытаетесь запустить в нем программу. 

Ошибка в скрипте LUA
После запуска программы терминал показывает в ней ошибку

После этого достаточно будет её отредактировать и запустить вновь. В том случае, если ошибок больше нет, окно “Ошибки выполнения скрипта” останется пустым, а программа начнёт работать (об этом будет свидетельствовать характерный значок “play” перед названием). После того, как заложенный в неё алгоритм отработает, она остановится. Если же она специально зациклена (работает на постоянное отслеживание текущей рыночной ситуации), то остановить её можно будет нажатием на кнопку “Остановить”.

Интерфейс окна LUA-скриптов в QUIK
Основной интерфейс

Как протестировать торгового робота

В Метатрейдере с этим делом всё обстоит довольно просто — запускаешь тестер стратегий, выбираешь временной интервал ценовой истории и вперёд. Тестер прогонит через загруженного в него торгового робота весь массив цен из заданного в настройках интервала и выдаст вам график прибыли/убытка которые были бы получены роботом при реальной торговле online. При этом у вас ещё будет возможность оптимизировать настройки тестируемого торгового робота таким образом, чтобы получить наилучший результат (наибольший профит), правда на всё том же ограниченном интервале истории.

В QUIK такого тестера априори не существует. То есть тестировать созданных роботов на истории вы здесь не сможете**, но оно, пожалуй, и к лучшему. Почему к лучшему? Излишняя оптимизация на истории может сыграть с вами злую шутку. Дело в том, что самые замечательные результаты торговли в прошлом никогда не гарантируют вам того же и в будущем. Часто бывает так, что стратегии “заточенные” (читай — оптимизированные) под определённый интервал времени в прошлом и приносящие на нём стабильно высокий доход, в реальном времени начинают откровенно сливать депозит.

Но не расстраивайтесь, торговых роботов для терминала QUIK вы сможете тестировать в реальном времени. Правда для этого вам потребуется так называемый демо-счёт (вы ведь не хотите, чтобы тестируемый советник принялся сразу же торговать реальными деньгами).

В отличие от метатрейдера в котором и реальные, и учебные счета открываются в одном и том же терминале, в квике для этого нужно установить специальный учебный терминал. По сути своей это тот же QUIK, только данные он берет со специального — учебного сервера (котировки немного отстают по времени от реальных, но в целом повторяют их с достаточной точностью) и для торговли здесь используются виртуальные деньги.

Учебный QWIK можно скачать у любого брокера, желательно у того, через которого вы планируете в дальнейшем торговать. Правда здесь возможны некоторые заморочки связанные с тем, что не всегда учебная версия данного торгового терминала позволяет работать со скриптами LUA.

Если та версия, которую предлагает ваш брокер не поддерживает возможножность установки и запуска LUA-скриптов, то можете установить демку от брокера БКС. Это не реклама, просто у меня стоит такая же и я точно знаю, что данная версия позволяет работать с любыми скриптами и советниками написанными на языке программирования LUA (QLUA).


** По крайней мере чистыми средствами QUIK, без использования какого-либо дополнительного софта.

Как установить LUA-скрипт в торговый терминал

Процесс установки торгового робота (скрипта) одинаков и для учебного, и для реального терминалов. Он довольно прост и выглядит следующим образом:

  1. Сначала заходите в верхнее меню терминала “Сервисы” и находите там кнопку “LUA-скрипты”:
Открытие окна LUA-скриптов в QUIK
  1. После нажатия на неё, перед вами появится уже знакомое вам окно “Доступные скрипты”. Жмём кнопку “Добавить” и в выпавшем окне выбираем созданный вами файл торгового робота или скрипта.

Вот и всё, на этом процесс установки торгового робота закончен. Для того, чтобы он начал работать достаточно выбрать его кликом мышки и нажать кнопку “Запустить”. Если в программе не будет обнаружено ошибок, то она начнёт работать, а иначе выдаст вам соответствующее сообщение (см. выше).

Вы можете поделиться этой статьёй на своей странице в соцсетях:

  • Categories
  • Tags
  • Related Articles
  • Author

запуск-первого-скрипта-в-КВИК

В данной статье мы уже подошли вплотную к тому, чтобы создать свой первый скрипт для торгового терминала QUIK. И начнем создавать скрипт, а не индикатор, потому что для начала скрипт будет проще для понимания.

Итак, чтобы у нас находилось все в одном месте, а не раскиданы все файлы по компьютеру, создадим специальную папку для будущих скриптов и для удобства разместим ее прямо в папке с Квиком.

Как и где создаем каталоги и файлы

Открываем папку программы QUIK и прямо в ней создаем свою новую папку. Назвать ее можно как угодно, но желательно название задавать латинскими буквами, например «LuaScripts». В этой папке и будут храниться все созданные нами скрипты для КВИК на языке QLUA.

Заходим в нашу созданную папку «LuaScripts» и в этой папке создаем простой текстовый документ. ПКМ — правой кнопкой мыши в свободном пространстве и выбираем пункт «Текстовый документ».
создает-текстовый-файл

Затем переименовываем этот файл и пишем любое название латинскими буквами, например пусть будет «Script_N1», а также меняем расширение на нужное нам .lua, в итоге у нас получается файл «Script_N1.lua». Но хочу предупредить, что чаще всего расширения не видно у файлов, поэтому если Вы все сделаете как написал выше, то виндоус по умолчанию все равно добавит расширение .txt, поэтому можно открыть либо в проводнике, либо в «тотал командоре» либо включить отображение расширений файлов в свойствах папки, либо создать файл прямо в программе NotePad++.

Если хотим создать через НотПад. То вверху в меню данной программы нажимаем вкладку «Синтаксисы», выбираем пункт «L» и в открывшейся области выбираем «Lua».
синтаксис-в-Notepad

Далее в меню NotePad нажимаем кнопку «Файл»«Сохранить как».
сохранить-как-_скрипт-в-notepad

В открывшемся новом окне находите папку с Квиком и открываете созданную папку «Lua scripts». Внизу в этом же окне задаете имя файла «Script_N1» и еще чуть ниже выбираете тип файла LUA. Затем нажимаете «Сохранить».
создаем-скрипт-в-notepad

Все, файл нашего будущего скрипта создали, осталось дело за малым, написать в него код на языке LUA! Как мы уже знаем, что есть инструкция в КВИКе о том, как создается скрипт, называется этот файл с инструкцией QLUA.chm, располагается в папке с Квиком.

Напишем простейший код для примера

function main()
  message("Запущен мой скрипт");
end

И сохраним сделанные нами изменения в файл путем нажатия на кнопку в меню
сохраняем-скрипт-в-notepad

Переходим к запуску скрипта «Script_N1.lua»
Хоть и очень просто, но все же уже первый скрипт написан! Давайте запустим его в QUIK.
Для этого Открываем терминал КВИК, в меню выбираем пункт «Сервисы»«LUA скрипты…».

луа-скрипт

В появившемся окне «Доступные скрипты» справа нажимаем на кнопку «Добавить». Находим свой скрипт «Script_N1.lua» в папке «Lua scripts» и жмем «Открыть».

открыть-скрипт-квик

У нас открывается наш скрипт. Теперь, чтобы его запустить, выделяем строку с нашим скриптом «Script_N1.lua» и справа в окне нажимаем кнопку «Запустить».
запустить-наш-скрипт-в-квик

После этого у нас появляется окно сообщений в КВИК вот такое!

Окно-с-неправилным-сообщением-квик

В окне какие-то каракули 🙂 Но давайте это устраним. В NotePad в редакторе скрипта в меню находим раздел «Кодировки» и далее выбираем «Преобразовать в ANSI».
преобразовать-в-ANSI

Еще раз сохраняем наш скрипт. Возвращаемся в КВИК и в окне «Доступные скрипты» жмем кнопку «Запустить».

Окно-с-правилным-сообщением-квик

Теперь выходит окно с понятным сообщением!

Для того, чтобы постоянно в создаваемых в NotePad файлах не проводить преобразование в ANSI, можно сразу один раз в настройках указать кодировку нового документа.
Для этого в меню «Опции» — «Настройки». В появившемся окне выбираем из списка «Новый документ» и справа настраиваем следующее: «Кодировка — ANSI», «Формат Конца Строк — Windows (CR LF).

Кодировка-в-ANSI

На этом пока завершим наши действия на сегодня, не все сразу, но многое мы уже познали, много интересного еще нас ждет впереди!



Цитата
ЛуаСкрипт написал:
Возникают проблемы с производительностью, стабильностью работы роботов и самого QUIK

Это зависит от квалификации программиста, а не от наличия/отсутствия примеров.
Lua придумали не мы и существует он очень давно. Что мешает посмотреть алгоритмы на не связанных с QUIK ресурсах, посвященных Lua?
И не надо говорить про «специфику», вся специфика относящаяся непосредственно к QUIK уже миллион раз обсуждалась еще со времен QPILE и с тех пор мало что изменилось.
И даже более того, 99% вопросов по «специфике», вообще никак не относятся к программированию на Lua, а относятся к функционалу самого терминала QUIK.
А функционал самого терминала QUIK должен быть Вам хорошо известен до того как Вы возьметесь программировать.

Цитата
ЛуаСкрипт написал:
Проблема — нет эталонного торгового робота от разработчиков

Да нет, и не будет. Все наши функции необходимые для реализации такого робота описаны в документации QLUA.chm.
Все Lua функции можно найти в документации на Lua и сторонних ресурсах которые ему посвящены.
Если Вам не понятно, как отправить транзакцию или получить нужные данные, готовы подсказать.

Цитата
ЛуаСкрипт написал:
2. проблема — нет типового способа получения данных их QUIK

Что значит «типового»? Вот мы считаем что все имеющиеся способы (DDE, ODBC, QLUA) являются типовыми.

Цитата
ЛуаСкрипт написал:
и передачу заявок обратно

тот же комментарий, мы считаем имеющиеся способы «типовыми».

Цитата
ЛуаСкрипт написал:
как передавать данные из QUIK в EXCEL

Что тут писать если есть DDE?
А в Excel есть VBA.
А дальше куда угодно.

Цитата
ЛуаСкрипт написал:
принимающий кода на VBA для MS Excell

такой пример уже есть, см примеры для Trans2quik

Цитата
ЛуаСкрипт написал:
также самый простой контроль выполнения заявок

что такое «контроль выполнения заявок»? Если интересует как получить данные то уже было отвечено выше. Если интересует как считать состояние портфеля, то формулы можно посмотреть в документации на терминал.

Цитата
ЛуаСкрипт написал:
запись логов.

запись в файл, это штатный функционал Lua, посмотрите его документацию, функция io.open

Цитата
ЛуаСкрипт написал:
3. Если вы сделаете штатный способ прикрутить Python 3 к QUIK — вообще будет супер!!

а почему Python? Вот лично Вам он нравится и удобен, а вот лично мне нет, теперь все языки поддерживать? Простите но нет.
И наша позиция относительно универсального API однозначна, для таких целей существует FIX адаптер. Да он платный, бесплатного аналога нет и не будет.

Если робот остался в длинной позиции, указываем L_Pos = true, а S_Pos = false  и наоборот, если в короткой позиции, то указываем S_Pos = trueL_Pos = false. Если без позиции, указываем falsefalseЭти действия удобно делать, просто комментируя не нужные строки кода.  

И так, наш робот автоматически отслеживает заданные параметры. При выполнении условия на вход в позицию, робот отправляет транзакцию на сервер брокера.  Далее он ожидает ответа, что транзакция принята брокером, если транзакция принята брокером, то далее, робот ожидает ответа от биржи, что заявка выставлена в торговую системуПосле получения ответа от биржи, что заявка выставлена, робот записывает текущую позицию в соответствующую переменную и далее начинает отслеживать, выход из текущей позиции и возможность входа в противоположную позицию.  Наш робот не отслеживает, исполнена заявка или нет, в этом нет необходимости, поскольку используются рыночные приказы, если биржа ответила, что заявка принята, это значит, она уже исполнена. В случае, если на каком-либо этапе выставления заявки что-то пойдет не так, например, транзакция не принята брокером или заявка не выставлена в торговую систему биржи, то робот сообщит нам об этом, выведя на экран текстовое сообщение, также наш робот может отправить на email сообщения об ошибке.  

Давайте поясню понятие Транзакция. Транзакция — это процесс отправки заявки на биржу. В момент транзакции отслеживается корректность параметров заявки, и проверяются доступные лимиты по объемам заявки. При отправке транзакции могут возникать два вида ошибок на двух разных этапах. Первый этап, на котором могут возникать ошибки, это в момент вызова функции sendTransaction  эта функция отправляет транзакцию на сервер брокера. На этом этапе, ошибки отслеживаются терминалом QUIK, и все они связаны с корректностью составленной таблицы с параметрами заявки. Какие это могут быть ошибки, например, не указали, объем заявки или не указан торговый счет, т.е. это ошибки в коде скрипта. Второй этап, на котором могут возникнуть ошибки, из-за которых заявка не будет выставлена на бирже, это этап проверки параметров заявки в торговой системе. Этот этап наступает после того как терминал QUIK принял Вашу транзакцию и отправил ее дальше. Тут могут возникнуть ошибки следующего характера. Например, превышен допустимый объем заявки или указана цена, которая выше или ниже максимально возможной цены или заявка выставляется в момент отсутствия торгов. 

Ошибки первого этапа возникают только во время первичных, тестовых торгов роботом. После того как скрипт отлажен, ошибок этого типа не бывает. Ошибки второго этапа могут появляться в независимости от кода скрипта, но опять же при хорошем коде, в котором исключены моменты, при которых ошибка теоретически возможна, появление ошибки второго этапа сведена к минимуму. На самом деле остается одна единственная ситуация, при которой появление ошибки второго этапа возможна – это обрыв связи с сервером в момент, когда транзакция принята терминалом QUIK, но не дошла до сервера брокера. К счастью, это исключительно редкая ситуация, я бы сказал больше — теоретическая. По транзакциям пока все, пойдем дальше. 

Наш робот действует не молча, он постоянно записывает свои действия и параметры в указанные файлы. На каждой свече робот записывает текущие параметры  — Дата, Время, Цена закрытия, Значение скользящей средней, Ускорение, Текущая позиция лонг – шорт. Эти данные помогают отследить возможные ошибки в направлении позиции или восстановить работу скрипта после, например, случайного закрытия терминала QUIK. 
Помимо текущих параметров, записываются и результаты транзакций. Всегда есть возможность посмотреть, когда робот совершал сделки и прочитать сообщение об ошибках, если таковые будут. 

Хорошо, что нам уже известно про алгоритм укорение скользящей средней? Мы подробно разобрали этот алгоритм, кода тестировали его на исторических данных. Скрипт торгового робота и скрипт тестирования очень похожи. Оба этих скрипта получают данные, тестовый  скрипт считывает данные из файлов, торговый скрипт считывает данные с графиков QUIK. Далее оба скрипта выполняют одинаковые действия, рассчитывают параметры индикаторов и отслеживают условия для входа в позицию или выхода из нее. Различия, в действиях начинаются после того, как выполняются условия входа или выхода. Тестовый скрипт просто записывает данные, а торговый скрипт отправляет транзакцию на сервер QUIKПо сути, это единственное их различие. Один совершает реальные сделки, другой просто записывает данные.  

Это были озвучены сходства и различия в логике работы обоих скриптов. Различия в коде скриптов более существенны, поскольку появляется необходимость обработки транзакций. Плюс в торговом скрипте должны отсутствовать логические ошибки, из-за которых скрипт может прекратить свою работу. Надежность работы торгового скрипта ставится на первое место.    

Давайте перейдем к коду и рассмотрим каждую его строку. Я очень надеюсь, что Вы уже ознакомились со всеми разделами текущего Курса, в противном случае Вам будет сложнее понять, о чем идет речь 

Честно говоря, не знаю, что Вам сказать, мне нужно как-то время выкроить, чтобы начать создавать этот курс, а я сейчас проект большой делаю, по завершении которого, навыки программирования не понадобятся для создания скриптов на QLua. Будет нужно только понимание алгоритмов и умение их создавать из блоков, т.е. будет конструктор роботов из функциональных, визуальных блоков, только в отличии от существующих решений в результате будут получатся не роботы, которые могут работать только на определенной платформе, а обычные скрипты QLua, которые можно будет запускать в терминале QUIK. Но первым этапом я сделаю и запущу именно редактор кода с полной поддержкой QLua синтаксиса, с подсказками, автозавершением кода и т.п. И если Вы захотите уже на этом этапе начать использовать проект, то навыки программирования все-таки понадобятся 🙂

Вобще, по моему мнению, на сайте есть вся информация, чтобы писать скрипты на QLua. Подскажите с чего именно Вы бы хотели начать обучение? С самых азов программирования, типа, что такое переменные, арифметические операции, операторы сравнения, условные операторы, циклы и функции ?

  1. Хотелось бы конечно с самых азов. Но для начала желательно было бы узнать от знающего что, куда и в чем. Если не сложно, можно написать пост, в котором конкретно расписано по пунктам где писать код скрипта, синтаксис и т.д.???
    п.с. Может я конечно слеповат (прошу прощения сразу). Если есть что то похожее, то тыкните лицом в это как говориться.

    1. 🙂 в меню (слева) пункт «Инструменты»:
      для работы Вам понадопиться терминал QUIK с демо-доступом, чтобы не тестировать скрипты на реальных деньгах:
      https://quikluacsharp.ru/instruments/demo-dostup-quik-dlya-testirovaniya-skriptov-i-robotov-na-qlua-lua/
      чтобы писать скрипты Вам нужен редактор кода, для этого хорошо подойдет Notepad++:
      https://quikluacsharp.ru/instruments/instrumenty-dlya-razrabotki-torgovyh/

      О том, что такое переменные, арифметические операции, операторы сравнения, условные операторы, циклы и функции на данном сайте нет информации, т.к. эта информация касается всех языков программирования, а сайт о QLua.

      Если у Вас есть базовые знания программирования, то информацию о том, из чего состоит скрипт QLua Вы можете найти здесь:
      https://quikluacsharp.ru/qlua-osnovy/baza-skripta-v-qlua/
      здесь о том, как запустить скрипт в терминале QUIK:
      https://quikluacsharp.ru/quik-qlua/kak-zapustit-qlua-lua-skript-v-terminale-quik/

      со всеми особенностями синтакса QLua можно ознакомиться в разделе меню «QLua(Lua) основы»

      и, вобще, все пункты меню названы по принципу связи, т.е., например, в пункте «QUIK + QLua(Lua)» находится информация о взаимосвязях скрипта QLua и терминала QUIK.

      1. Спасибо за подсказку, буду изучать.

    2. Во всех статьях есть примеры использования всего, о чем там написано, с комментариями.
      Т.е. пользоваться данным сайтом удобно «от задачи», а не наоборот, сначала попытаться изучить всю информацию на сайте, а потом думать что же теперь со всем этим делать 🙂

      Особого внимания заслуживает раздел «QLua(Lua основы)» -> «ФУНКЦИИ ОБРАТНОГО ВЫЗОВА, ВСТРОЕННЫЕ В QLUA», т.к. вся работа с терминалом строится на них, в данном разделе так же есть описания и примеры использования.

      Т.е. что я хочу сказать, попробуйте начать с того, что поставьте себе какую-то простую задачу, для начала, и попробуйте ее решить, с помощью информации на данном сайте, т.к. сайт построен для практического применения, а не для того, чтобы утопить всех в куче теории.

      Если что-то будет не получаться, задавайте вопросы, я Вас быстрее в нужное русло направлю.

    3. Решил еще пример использования сайта привести 🙂
      Например, стоит у Вас задача: «Как в скрипте получить данные с графика», вы рассуждайте следующим образом:
      Между какими элементами взаимосвязь? С одной стороны скрипт QLua (данные нужно получить в него), с другой стороны терминал QUIK (данные нужно получить из него, т.к. график в нем), значит первоначальный раздел меню «QUIK + QLua(Lua)», открываете его, и видите в нем пункт «Обмен данными», открываете его и видите в нем решение Вашей задачи, пункт: «ПОЛУЧЕНИЕ В QLUA(LUA) ДАННЫХ ИЗ ГРАФИКОВ И ИНДИКАТОРОВ»

      Или, например, Вы на знаете как в QLua работать с массивами, Вы снова рассуждаете, массивы это что? Чисто скрипт, т.к. массивы не имеют никакого отношения к терминалу, значит раскрываете раздел меню «QLua(Lua) основы» и ищите там в названии пунктов слово «массив», находите пункт «ПЕРЕМЕННЫЕ, МАССИВЫ И ФУНКЦИИ В QLUA (LUA)»

      Можете еще вот этот комментарий прочитать https://quikluacsharp.ru/quik-qlua/skript-vyvodit-v-tablitsu-qlua-balans-pokupok-prodazh-poslednih-5-ti-1-minutnyh-svechej/#comment-861 , я в нем одной девушке как раз основы некоторые рассказывал, надеюсь поможет.

      1. спасибо

        1. Всегда пожалуйста, обращайтесь

Как написать торгового робота: инструменты для начинающих

image loader

Тема автоматизированных систем для торговли на бирже довольно популярна в рунете в последние несколько лет. Однако начинающим инвесторам создать своего торгового робота может быть нелегко. Сегодня мы расскажем о том, как это можно сделать без лишних затрат.

Примечание: любая инвестиционная деятельность на бирже связана с определенным риском, это нужно учитывать. Кроме того, для запуска своего торгового робота вам понадобится брокерский счет, открыть его можно онлайн. Вы можете отладить свою стратегию с помощью тестового доступа с виртуальными деньгами.

Варианты создания роботов

Существует несколько вариантов создания роботизированного софта для торговли на бирже:

Как это работало раньше

Торговые терминалы предыдущих поколений можно было интегрировать с различными инструментами автоматизации. Одним из наиболее популярных, как ни странно, в свое время был Excel. С его помощью трейдеры могли настроить экспорт данных из торгового терминала, а также получать торговые приказы.

image loader

Меню для подключения Excel в одном из торговых терминалов прошлого поколения

Также распространенной практикой среди трейдеров было подключение к своим терминалам мощных систем технического анализа и разработки роботов вроде WealthLab и MetaStock. В таких случаях интеграция обычно осуществляется с помощью дополнительных библиотек.

В перечисленных случаях трейдер получал возможность автоматизации, и, в случае MetaStock и WealthLab, создания довольно сложных торговых систем, но связки с внешними программами часто оказывались ненадежными. С течением времени эта проблема была решена – в некоторых торговых терминалах появились встроенные языки программирования.

Как это работает теперь: изучаем язык TradeScript

В наши дни на российском рынке самый простой способ создать несложного торгового робота, работающего с системой брокера, это использование терминала SMARTx.

В нем есть специальный плагин с конструктором торговых роботов TradeScript. С помощью простого, но довольно мощного скриптового языка трейдеры могут создавать механические системы различного уровня сложности. Язык был изначально создан для разработки торговых роботов, он довольно прост в изучении, а многие алгоритмы схожи по написанию с Metastock, что облегчает работу пользователям, знакомым с этим программным пакетом.

image loader

Плюсом TradeScript по сравнению с Wealth-Lab и тем же Metastock является отсутствие необходимости создания сложных конструкций и использования различных коннекторов для передачи приказов в торговый терминал. Конструктор роботов встроен в SMARTx, что позволяет добиваться значительно более высокой надежности и быстродействия.

Вот пример торговой стратегии, записанной на TradeScript:

В пакете с TradeScript поставляет и модуль бэктестинга, который позволяет оценить продуктивность работы описанной стратегии на исторических данных. Помимо прочего, в системе реализована функция тестирования торговой системы «на лету» с использованием текущих биржевых данных, но без вывода приказа на биржу — время виртуальной сделки, цена и получившаяся «доходность» будут показываться в отдельном окне.

image loader

Кроме того пользователь может запускать столько одновременно работающих алгоритмов, сколько позволит тактовая частота процессора и память компьютера. Учитывая большое число слов и операндов скриптового языка, это означает возможность создания сколько угодно сложных торговых стратегий.

Что еще: отладка на тестовом доступе

Использование встроенной в торговый терминал функциональности по разработке торговых роботов – удобный и надежный способ автоматизации торговли. Однако несмотря на существующие функции для тестирования стратегий, не стоит пренебрегать и дополнительными возможностями отладки.

Поэтому мы рекомендуем перед запуском стратегии для торговли реальными деньгами «прогнать» ее на тестовом доступе. Этот шаг позволит отладить все моменты, включая реакцию программы на осуществленные сделки, без риска реальных финансовых потерь. Применение анализа с помощью исторических данных, проверки «на лету» и использование тестового доступа позволит максимально полно отладить вашу стратегию.

Источник

Как создать торгового робота своими руками? Robot-Scalper

download

233d50

Нас часто спрашивают, как самостоятельно создать робота? И сложно ли это?
– Нет, не сложно, если у вас есть опыт и наработки. Но если вы начинающий алготрейдер, то перед вами встанет сразу несколько непростых задач.

Для начала вы должны определиться какую именно торговую стратегию будете автоматизировать.

Затем нужно четко формализовать эту стратегию: описать строгими условиями все входы и выходы из позиции.

Теперь нужно определиться под какой торговый терминал будем разрабатывать робота.

Изучаем функции алготрейдинга (выставление и снятие заявок, получение текущих данных из терминала, механизм взаимодействия скрипта и терминала).

Изучаем как устроена структура данных (таблиц) на сервере Мосбиржи, чтобы знать откуда что брать.

Важно иметь хотя бы базовое понимание о программировании: что такое переменные, условия, операции сравнения, циклы, функции, события, работа с файлами и т.п.

После этого можно смело браться за создание своего робота. Описываем логику на языке программирования и запускаем робота на демо-счете, для отладки. Исправляем баги или ошибки в логике алгоритма, если такие обнаружатся.

Для удобства все настройки выносим в отдельный файл, чтобы не приходилось каждый раз изменять исходный код робота при подстройке стратегии.

Не забываем сделать удобный интерфейс, чтобы сразу видеть текущее состояние системы (заявки, позиция, стоп, тейк и т.п.).
Пример можно увидеть здесь:
07222f

Тестируем. Анализируем сделки. Проверяем насколько корректно отрабатывает робот.

Логирование событий позволяет отследить в прошедшем времени все намерения робота и все свершившиеся события: выставление и снятие заявок, полное или частичное исполнение заявок, изменение текущей позиции и т.п.

Если торговый терминал позволяет, то можно провести бэк-тестирование (тестирование на исторических данных). Либо даже форвардное тестирование. Об этом подробно написано здесь https://smart-lab.ru/blog/503560.php

А также можно выполнить оптимизацию значений параметров стратегии.
Здесь важно искать не просто конкретные значения, при которых система покажет максимальную прибыль и минимальный убыток (в следующем месяце это может не повториться), а нужно найти диапазон значений, в которых стратегия показывает прибыль. Желательно брать значения из середины диапазона. Мы не можем наверняка знать насколько хорошо они подойдут в следующем торговом периоде. Но мы ожидаем, что доходность будет положительна.

Какие гарантии того что робот будет стабильно зарабатывать деньги?
– Никаких! Когда разрабатываешь робота, то не знаешь заранее будет ли данная стратегия прибыльная или нет. Только время покажет. Это как в любом другом бизнесе. Например, вы купили помидоры и стали их продавать. Какие гарантии? – Никаких! Если вы плохой бизнесмен, то ничего не продадите и помидоры просто протухнут. А если хороший бизнесмен, то будете в прибыли.
Так же и в трейдинге. Нельзя ставить сильно высокую цену на продажу, так как никто у вас не купит. И нельзя ставить сильно низкую цену на покупку, так как никто по такой цене вам не продаст.
Слишком близкие цены покупки и продажи тоже не будут вам выгодны, так как комиссия будет съедать большую часть прибыли. Во всём нужна золотая середина! Это понимание приходит с опытом.

По поводу прибыльных стратегий. Как сразу найти прибыльную? – Никак. Нужно запрограммировать и протестировать десятки стратегий. Нужно анализировать сделки. Потом придет понимание того что работает на рынке, а что нет. Непроизвольно вы начнете делить стратегии на группы с общими признаками. После этого любую новую стратегию, еще до тестов, вы сразу будете относить к той или иной группе. И будете понимать примерные возможности по риску и доходности.
Это то, что касается разработки торговых стратегий и роботов.

Еще люди спрашивают, сложно ли развивать ваш проект «Робот Скальпер» и осуществлять техподдержку?
— Да. Сложно. Приходится отвечать более чем на 100 вопросов каждый день. Вопросы абсолютно разные. Не только по роботам. Это и базовые: как начать торговать, как открыть счет, сколько денег нужно и т.п., и нестандартные: вопросы по тарифам брокеров, по функционалу терминала QUIK, по данным от Мосбиржи и т.п.
Так как торговый робот для пользователя является конечным или финальным продуктом и если происходит сбой у брокера или в терминале QUIK или на бирже, то с точки зрения пользователя проблема всегда заключается в роботе! Это ведь он теперь работает не так как надо! И никого не волнует висит ли сервер брокера или поставляет ли Мосбиржа кривые котировки (нулевые цены и нулевую тек.позицию, при том что актив есть на балансе), отрубился ли интернет, заглючил или перезагрузился компьютер. Эти и другие проблемы приходится нам решать. Чтобы оказывать качественный сервис нужно знать гораздо больше, чем только алгоритм торговой стратегии.

Иногда думаешь, что всё, база знаний полная. В ней есть все вопросы и ответы. И за последние 3 месяца не было ни одного нового вопроса. И тут раз, появляется совершенно странный вопрос, который ставит тебя в тупик. Приходится подключаться дистанционно к пользователю, анализировать проблему, находить решение и добавлять его в базу знаний. И, если необходимо, то добавляется проверка в самого робота. Чтобы робот либо сам устранял ошибку, либо выдал сообщение пользователю о том что нужно сделать для продолжения торговли.

Так, постепенно, решая одну задачу за другой и набирается опыт, который позволяет чувствовать себя уверенно в алготрейдинге.

Спасибо всем, кто дочитал до конца!
Если вам интересны статьи о том как разрабатываются роботы, поддержите нас лайком. Мы будем знать нужно ли тратить время на подобные затеи или нет )) Может быть вам интереснее прочитать о более практических вещах? О конкретных стратегиях, их характеристиках в цифрах, рисках, доходностях? Напишите в комментариях. Мы обязательно вам ответим.

Желаем добра и успехов в трейдинге!

Остались вопросы по роботам?
Обращайтесь в личку или на почту mail@robot-scalper.ru

Источник

download

Во первых, Вам потребуются удобные среды разработки (программы, где Вы сможете писать свой код), о том, где их взять и как установить прочтите здесь. Для написания скриптов QLua Вам понадобится только Notepad++.

Во вторых, получите терминал QUIK с демо-счетом, можете получить его либо в компании Arqa (разработчик терминала) по данной ссылке, либо у практически любого брокера.

И в третьих, начинайте изучать QLua.
Рекомендую начать с раздела меню «QLua(Lua) основы», в частности со статей: «База скрипта в QLua (lua)» и «Функции обратного вызова, встроенные в QLua», остальные статьи данного раздела используйте как справочники при написании скрипта, в них практически к каждой функции есть пример кода с комментариями.

Следующим шагом переходите к разделу меню «QUIK + QLua(Lua)», в нем речь идет о том, как взаимодействует скрипт с терминалом QUIK, как обменивается данными, все так же с примерами и комментариями. Особое внимание обратите на раздел «Блоки кода», в особенности на статью в нем: «Пример простого торгового движка „Simple Engine“ QLua(Lua)», разобрав код которой Вам многое станет понятнее, хоть по началу такой подход может показаться несколько сложным.

Когда Вы уже сможете уверенно писать скрипты, которые будут совершать торговые операции, работать с таблицами, графиками, индикаторами, тогда можете переходить к следующему разделу (если QLua Вам окажется недостаточно), это пункт меню «Qlua C/C++ C#».
Первым шагом изучите статью «Коннектор DLL QUIK — QLua(Lua) — C#», затем изучите примеры из подраздела «Обмен данными». Дальше можете изучить все остальное, что есть в разделе «Qlua C/C++ C#».

В процессе изучения Вы всегда можете обратиться за помощью в комментариях под изучаемой статьей, или в разделе «ВОПРОС-ОТВЕТ».

Так же, рекомендую подписаться на новости сайта, заполнив форму в правой колонке сайта, чтобы получать уведомления о новых статьях вышедших на сайте, они появляются не очень часто, но информация в них как правило нужная, никакого спама Вам отправлять не будут, какие последние статьи Вышли на сайте за последнее время всегда можете увидеть в левой колонке.

Источник

10 этапов разработки торгового робота под QUIK и TSLab от Robot Scalper

download

d611d1

К нам поступил запрос на создание многопараметрического робота, с кучей условий торговой логики и в конце с припиской: «За работу я готов оплатить 800 рублей». Как у заказчика получилась такая сумма осталось не ясно. Возможно, всё тривиально, и это просто все его доступные средства, которые остались от торговли по интуиции. А возможно человек просто не понимает какую работу нужно проделать и из чего образуется цена на торговых роботов. Но это не страшно. Мы как раз сейчас и постараемся разобраться в этом.

Нужно ли платить разработчикам роботов или нет, каждый решает для себя сам. Можно и не платить, а взять и методично, по пунктам, всё сделать самостоятельно. Сколько уйдет на это времени? И какой будет конечный вариант? Зависит непосредственно от опыта, знаний и умений конкретного человека.
Чем больше у человека опыта в программировании, в трейдинге, в автоматизации бизнес-процессов, в тестировании, в умении оптимизировать стратегии, тем быстрее и качественнее будет результат. Если вы начинающий алготрейдер и у вас нет наставника с его опытом и наработками, то настраиваться сразу желательно на 6 месяцев работы и более.
Профессиональный алготрейдер может передать знания по созданию прототипов, тестированию на истории и оптимизации роботов за более короткий срок. И это будет скорее всего платная услуга.

Кстати, как вы считаете, что лучше, купить готового робота за несколько тысяч рублей или за эту же сумму научиться самостоятельно разрабатывать и тестировать роботов? Напишите в комментариях.

По различным вопросам обращайтесь в личку или на почту:
mail@robot-scalper.ru

Очень много интересной и важной информации можно найти здесь:
https://www.instagram.com/robot_scalper/

Желаем Вам успехов в трейдинге!
Берегите себя и свой депозит!

Источник

Торговый робот для QUIK. На каком языке программирования его написать, как протестировать и как установить в торговый терминал

trading robot quik 7

Как и многие другие, я начинал свою работу в качестве трейдера с торгового терминала Metatrader4. И когда у меня созрела необходимость в написании собственных скриптов и советников (торговых роботов), я не мудрствуя лукаво открыл учебник по MQL4 и изучив основы этого языка, через пару часов уже мог состряпать простую программку.

Дальше-больше, после реализации простых скриптов пришло желание запрограммировать более сложные алгоритмы торговли. Возникали, конечно, вопросы, но ответы на них достаточно легко дают Яндекс с Гуглом. В настоящее время существуют столько сайтов и форумов посвящённых данной тематике, что достаточно трудно найти такой вопрос, который остался бы без ответа после более-менее тщательного штудирования интернета.

Для чего я вам все это рассказал? Дело в том, что никакого особого опыта в программировании, кроме школьных уроков информатики у меня до этого не было. А это означает, что для того, чтобы справиться с этим делом вовсе не обязательно быть программистом.

Если же у вас за плечами уже есть какой-либо опыт программирования на любых языках, то данная задача вам покажется элементарной. Уверяю вас, так оно на самом деле и есть, на деле здесь всё оказывается куда проще и стоит только начать, как вы незаметно для себя уже превратитесь в матёрого создателя торговых роботов.

Как написать программу

В QUIK предусмотрена возможность установки двух основных типов программ скриптов и торговых роботов:

На мой взгляд, наиболее простым вариантом является работа с программами на языке LUA. Область применения данного языка программирования не ограничивается только написанием программ для торговых терминалов, на нём пишут и компьютерные игры, и мобильные приложения, и много чего ещё. Но нас сейчас интересует его использование в контексте написания программ торговых роботов для торгового терминала QUIK. К слову сказать, используемая здесь разновидность данного языка часто именуется QLUA (Q от QUIK).

Программирование на LUA

Описать все особенности и синтаксические конструкции языка в рамках одной этой статьи конечно не получится, впрочем в этом и нет особой необходимости. Как я уже говорил, синтаксис здесь довольно простой и включает в себя все основные команды свойственные любому современному языку программирования. Есть, конечно, некоторые специфические моменты, но все они подробно описаны на многочисленных тематических ресурсах. Например здесь: https://forum.quik.ru/forum10/topic2029/

Я сильно не заморачивался ни синтаксисом, ни изучением языка, а просто сразу начал писать программу. По ходу необходимости, уточнял синтаксис той или иной необходимой мне команды через поисковики. Например запрос типа “оператор для открытия позиции в QLUA” подсказывал мне, что для данной цели необходимо использовать оператор sendTransaction(), а запрос “синтаксис оператора sendTransaction() в LUA” выдавал в первой же позиции результатов поиска сайт содержащий ответ:

trading robot quik 6

На этом сайте вы найдёте синтаксис всех команд языка с конкретными примерами их использования: http://luaq.ru/

А вот здесь вы найдёте полное руководство по азам программирования на LUA: https://lua.org.ru/contents_ru.html

Кроме этого есть ещё масса других ресурсов содержащих исчерпывающую информацию по данной теме.

Где писать программу. Какой редактор использовать?

Прелесть состоит в том, что для написания программ на QLUA можно обойтись штатными средствами Windows, без установки каких-либо специализированных редакторов. Вы можете писать и редактировать программу прямо в текстовом файле.

Для этого сначала создаёте обычный текстовый файл:

trading robot quik 1

trading robot quik 2

Неудобство данного метода написания состоит в том, что без редактора невозможно скомпилировать файл и проверить его на наличие ошибок. Однако это не так критично, как может показаться на первый взгляд, поскольку наличие ошибок (а также их краткое описание) вам выдаст торговый терминал после того как вы попытаетесь запустить в нем программу.

trading robot quik 3

После запуска программы терминал показывает в ней ошибку

После этого достаточно будет её отредактировать и запустить вновь. В том случае, если ошибок больше нет, окно “Ошибки выполнения скрипта” останется пустым, а программа начнёт работать (об этом будет свидетельствовать характерный значок “play” перед названием). После того, как заложенный в неё алгоритм отработает, она остановится. Если же она специально зациклена (работает на постоянное отслеживание текущей рыночной ситуации), то остановить её можно будет нажатием на кнопку “Остановить”.

trading robot quik 4

Как протестировать торгового робота

В Метатрейдере с этим делом всё обстоит довольно просто — запускаешь тестер стратегий, выбираешь временной интервал ценовой истории и вперёд. Тестер прогонит через загруженного в него торгового робота весь массив цен из заданного в настройках интервала и выдаст вам график прибыли/убытка которые были бы получены роботом при реальной торговле online. При этом у вас ещё будет возможность оптимизировать настройки тестируемого торгового робота таким образом, чтобы получить наилучший результат (наибольший профит), правда на всё том же ограниченном интервале истории.

В QUIK такого тестера априори не существует. То есть тестировать созданных роботов на истории вы здесь не сможете**, но оно, пожалуй, и к лучшему. Почему к лучшему? Излишняя оптимизация на истории может сыграть с вами злую шутку. Дело в том, что самые замечательные результаты торговли в прошлом никогда не гарантируют вам того же и в будущем. Часто бывает так, что стратегии “заточенные” (читай — оптимизированные) под определённый интервал времени в прошлом и приносящие на нём стабильно высокий доход, в реальном времени начинают откровенно сливать депозит.

Но не расстраивайтесь, торговых роботов для терминала QUIK вы сможете тестировать в реальном времени. Правда для этого вам потребуется так называемый демо-счёт (вы ведь не хотите, чтобы тестируемый советник принялся сразу же торговать реальными деньгами).

В отличие от метатрейдера в котором и реальные, и учебные счета открываются в одном и том же терминале, в квике для этого нужно установить специальный учебный терминал. По сути своей это тот же QUIK, только данные он берет со специального — учебного сервера (котировки немного отстают по времени от реальных, но в целом повторяют их с достаточной точностью) и для торговли здесь используются виртуальные деньги.

Учебный QWIK можно скачать у любого брокера, желательно у того, через которого вы планируете в дальнейшем торговать. Правда здесь возможны некоторые заморочки связанные с тем, что не всегда учебная версия данного торгового терминала позволяет работать со скриптами LUA.

Если та версия, которую предлагает ваш брокер не поддерживает возможножность установки и запуска LUA-скриптов, то можете установить демку от брокера БКС. Это не реклама, просто у меня стоит такая же и я точно знаю, что данная версия позволяет работать с любыми скриптами и советниками написанными на языке программирования LUA (QLUA).

** По крайней мере чистыми средствами QUIK, без использования какого-либо дополнительного софта.

Как установить LUA-скрипт в торговый терминал

Процесс установки торгового робота (скрипта) одинаков и для учебного, и для реального терминалов. Он довольно прост и выглядит следующим образом:

trading robot quik 5

Вот и всё, на этом процесс установки торгового робота закончен. Для того, чтобы он начал работать достаточно выбрать его кликом мышки и нажать кнопку “Запустить”. Если в программе не будет обнаружено ошибок, то она начнёт работать, а иначе выдаст вам соответствующее сообщение (см. выше).

Источник

Понравилась статья? Поделить с друзьями:
  • Как написать торгового робота своими руками
  • Как написать торгового робота на python
  • Как написать торгового робота для квик
  • Как написать торгового робота для quik
  • Как написать торгового робота для binance