Блог им. 3Qu

Quik - лучший терминал для MOEX.

    • 09 января 2020, 22:36
    • |
    • 3Qu
  • Еще

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

Видел и пользовался терминалами много лучше — с полным C-API, оч удобные и лишенные каких либо существенных недостатков — на них и работал аж до 2013 г. Это были самопальные термналы брокеров, для которых, к тому-же, было написано много вспомогательного софта. К сожалению, к 2013 г терминалы безнадежно устарели, благодаря апгрейдам становились все хуже, и, в конце концов, были сняты брокером с эксплуатации. Вся проделанная работа по написанию софта пошла прахом, и для работы предстояло выбрать другой терминал и/или брокера.
Коннекторы сразу не подошли. Остался выбор из 3-х терминалов c возможностью программирования или подключения внешнего софта — Quik, TRANSAQ, и МТ5.
TRANSAQ: есть только у одного брокера Финам. Если Финам откажется от Transag или поменяет версию терминала на несовместимую, то весь вспомогательный софт предстоит переделывать заново. Спсибо, я это уже проходил.) Кроме того, Transag есть толькоу Финам, и изменить брокера становится невозможно — опять надо будет все переделывать.
МТ5: имеется для МОЕХ у ограниченнного числа брокеров. Строго говоря, биржевым терминалом не является, и судя по форуму MQL, проблем с биржей у него выше крыши. Я так понимаю(оценочное суждение), фирма MQ попыталась вывести МТ5 на биржу, ничего с этого не получила, и завязала с этой деятельностью. Да, такой хоккей нам тоже не нужен.
Quik — старенький, плохонький, глюковатенький, но имеет всю необходимую функциональность, и все нужные возможности. Имеется практически у всех брокеров — смена или добавление брокера не вызовет проблем. В одночасье не исчезнет, что могут себе позволить терминалы оганиченного применения — Transaq, и тот же МТ5.
Отсюда следует, что Quik — лучший терминал для биржи MOEX для большинства пользователей, особенно для тех, кто пользуется каким либо вспомогательным софтом — индикаторы, торговые системы, системы анализа и пр.
Жаль, что я этого не понял раньше, не пришлось бы весь софт переписывать с нуля.

  • обсудить на форуме:
  • QUIK
★3
75 комментариев
Ivanka, час чего?
avatar
3Qu, час рекламы КВИКа. 
Вестников (Витковский), если хотите, то так оно и есть.) С одной стороны — терминал вызывает полное неприятие. С другой — выбор невелик, и Квик — лучший выбор для конкретных целей.
avatar
Субъективное мнение… Не помню ни разу, чтобы Квик подвисал на ровном месте. Пожалуй только в одном случае, если открыть типовых график и навесить на него какой нибудь «стохастик» с большим временым периодом.
avatar
Anest, подвисает. Уже на паре компов зарегистрировано — поведение идентично. Да, там несколько стаканов и ленты сделок, но без них никак. Ничего лишнего.
avatar
3Qu, у меня большое количество стаканов, таблиц всех сделок, с них идет экспорт в сторонний софт, с десяток окон, в каждом по 4 графика. И все это на  древнем компе 12 летней давности   ( core 2duo e8500). Плюсом открыто огромное количество программ, браузер и т. д. 
Квик тоже еще старый 7.29 вроде, на 8 не переходил. 
avatar
Ivanka, я не занимаюсь преподаванием, под заказ не пишу.
Все доки Квик есть на их сайте. В инете вы найдете все материалы по программированию под Квик.
avatar
 Quik мне активно не нравится. О недостатках Quik — неудобный, глючный, периодически подвисающий на абсолютно пустом месте в самый неподходящий момент, и пр., и пр. 
За полтора года торговли в нём ни разу описанных проблем не имел (сейчас в. 7.29.040). А «в самый неподходящий момент» обычно «народные» брокеры радуют глюками своих клиентов. Такая простая мысль о глючности брокера на ум не приходила?
avatar
О'Грин, не, это не брокер. Хотя, и он тоже случается.
Да, и не я один отмечал глюковатость Квик.
avatar
3Qu, Вам бракованный экземпляр подсунули.Требуйте у брокера такой же безпроблемный, как у меня . Или инфа о том, что у большинства пользователей на слабых машинах хорошо загруженный квик работает, как часы — для вас не аргумент? Обычный квик, скачанный для инсталла с сайта брокера. На простых машинах с левыми ХР, семёркой и восьмёркой.
 А может, не разработчики квика виноваты, а проблема в прокладке меж рулём и сиденьем, раз простая логика для вас неочевидна?
avatar
МТ5: имеется для МОЕХ у ограниченнного числа брокеров. Строго говоря, биржевым терминалом не является, и судя по форуму MQL, проблем с биржей у него выше крыши.

Хоть одну проблему с биржей назовите.
avatar
ICWiener,  форум MQL5.com. Читайте биржевой раздел. Тем много.
Да и брокеров на МТ5 — раз, и все, что не есть приемлемо.
Язык MQL5 — это уровень 90-х гг. Внутри терминала на MQL5 ничего толкового сделать невозможно, а выход на внешний софт весьма проблематичен.
avatar
3Qu, там большинство сообщений типа «почему у меня позиции на ФОРТС переоткрываются два раза в день?» и прочая ахинея от вчераших «форекс-трейдеров». Квик бесспорно выигрывает у Metatrader только в двум пунктах: его наличие у брокеров и поддержка всего, что на бирже торгуется.
Внутри терминала толкового ничего не сделать? Не смешите, озвучьте что не сделать. MQL нормальный язык, работает намного быстрее, чем Lua. Организовать связь с внешним софтом из MT можно аж несколькими способами.
Итого на стороне MT:
— хороший язык программирования,
— наличие бектестера,
— стабильность работы (9 апреля 2017, когда почти у всех брокеров были проблемы, MT у тех же брокеров даже не чихал),
— наличие неограниченной истории счета (показываются все движения по вашему счету)
— неограниченная длина рыночных данных, включая ленту сделок.
Реальные проблемы тоже есть, но они далеки от вашего поверхностного обзора.
avatar
Jame Bonds, да, к MQL можно подключить  ДЛЛ. А как вы будете подавать заявки из внешнего софта? Разумеется можно приделать костыль, но это уже извращение, и для однопоточной программы MQL это нормально работать не будет.
Что не сделать? Да ничего не сделать. Все, что имеет MQL, это оч ограниченный набор кривых самопальных плохо отработанных и непроверенных библиотек, которых минимальное количество. А язык, это прежде всего наличие библиотек, а не синтаксис.
avatar
3Qu, многопоточность, вроде как, тоже возможна через GPU и OpenCL.
avatar
First, 
3Qu, многопоточность, вроде как, тоже возможна через GPU и OpenCL.
А оно надо? В С++ это 2 строчки — создать поток и отсоединить. Есть еще пулы потоков, события и пр.
На фиг это устаревшее г… от MQ (оценочное суждение) и извращения с ГПУ и пр. в которых нет необходимости для подобных задач.Сложные задачи уже в библиотеках. Вы под ГПУ библиотеки собираетесь переписывать?
Та-же Луа уходит в ДЛЛ и из ДЛЛ можно вызвать функцию Луа (коллбэк) — вообще нет проблем. Луа минимальна и ни на что не влияет, на быстродействие в том числе.
avatar
3Qu, а я уж было испугался, подумал, что это приговор... 
устаревшее г… от MQ (оценочное суждение)

Интересно только было бы узнать — когда ОНО устареть успело? )))
МТ5 всего-лишь года 3 как начало активно использоваться!
Активнейшим образом совершенствуется ВСЁ, в т.ч. язык.
avatar
VladMih, при рождении.))
avatar
3Qu, 1) под QLua «хорошо отработанных и проверенных библиотек» много найдете?

2) Отлично заявки подаются из подключенной dll.

3) 
Что не сделать? Да ничего не сделать.
Тех, кто сделал не смешите.
avatar
Jame Bonds, и что вы сделали, написали if() и for()?
Расскажите как заявку подать из С++ ДЛЛ в MQL? В MQL нет коллбэков. Костыли я и сам делать умею — эт неинтересно.
Непосредственно под Луа в библиотеках нет необходимости — любой сторонний софт подключается через ДЛЛ. К MQL замучаетесь подключать.))
ЗЫ Нормальное взаимодействие с внешним софтом в MQL организовать принципиально невозможно. Организуете через костыли — все хваленые «преимущества» MQL пропадают.
avatar
3Qu, а вам без коллбэков сделать религия не позволяет?
К MQL подключить dll не сложнее, чем к QLua.
avatar
Jame Bonds, не позволяет.
Пишите костыли, и замечательно. Главное, чтобы вам нравилось.)
avatar
Jame Bonds, как следующий код MQL4, который также является вполне валидным кодом C/C++, исполнить в dll'ке именно как код C/C++?

for (int n = 0, all = OrdersHistoryTotal(); n < all; n++) {
    if (OrderSelect(n, SELECT_BY_POS, MODE_HISTORY)) {
        OrderPrint();
    }
}
Нужно всего-то уметь вызывать из dll 3 функции  MQL4: OrdersHistoryTotal(), OrderSelect() и OrderPrint().

Сможете легко это организовать (при условии, что приведённый выше код — это код C/C++, располагающийся в dll)?

Когда вы об этом как следует задумаетесь, то, думаю, поймёте, в чём проблема.
avatar
Unworldly, смог, за умеренное время.
avatar
Jame Bonds, худший терминал по всем параметрам для любых рынков…
avatar
Unworldly, смог, за умеренное время.

Jame Bonds, тогда вы должны знать, что это явно сложнее, чем просто подключить dll. И насколько «умеренное» время на это надо потратить, зависит от «полноты реализации».
avatar
ЗЫ Нормальное взаимодействие с внешним софтом в MQL организовать принципиально невозможно. Организуете через костыли — все хваленые «преимущества» MQL пропадают.

3Qu, организовать-то возможно, но сильно не «бесплатно». И ещё придётся это всё поддерживать по мере изменения API MQL.
avatar
Unworldly, я пишу про нормальное взаимодействие. А организовать, да, возможно. Но на фиг нужно.
avatar
Unworldly, я пишу про нормальное взаимодействие. А организовать, да, возможно. Но на фиг нужно.

3Qu, после нескольких попыток заняться мазохизмом на MQL4 я серьёзно задумался от том, чтобы, всё-таки, организовать это взаимодействие, лишь бы (почти) навсегда избавиться от этого мазохизма, ибо это ужасно. 
avatar
Unworldly, есть 2 пути.
1. если стратегия неспешная, то можно через файлы.
2 если быстрая. Берем два советника. Один на передачу. Второй на прием заявок, в нем ставим мьютекс(ы), благо советники в разных потоках. ДЛЛ, естественно.
Но, в итоге, я избавился от терминала МТ5.)
avatar
1. если стратегия неспешная, то можно через файлы.

3Qu, это никуда не годится.

2 если быстрая. Берем два советника. Один на передачу. Второй на прием заявок, в нем ставим мьютекс(ы), благо советники в разных потоках. ДЛЛ, естественно.

Это частный случай копирования из одного советника в другой, запущенных в одном терминале. А что, если я хочу просто написать советник, но не на MQL, а на C++?

Нужно некое общее решение, чтобы можно было писать в стиле, как рассказано в этом сообщении.

То есть, чтобы писать на C/C++, как на MQL.

Как будто случилось чудо, и теперь можно не на MQL, а на C/C++ писать, пусть и вне терминала, но, тем не менее, имея доступ к API MQL, не важно что: советник это, индикатор или скрипт.

Цель: избавиться от MQL, сохранив доступ к его API.

Но, в итоге, я избавился от терминала МТ5.)

Этот вариант хорош, но не всегда применим. 
avatar
Unworldly, я давно не брал в руки шашки, и кодами Мкл помочь не смогу.
Но по обмену можно поговорить. Напишите в личку. Чем смогу...
Сейчас сплю уже.
avatar
Unworldly, я давно не брал в руки шашки, и кодами Мкл помочь не смогу.
Но по обмену можно поговорить. Напишите в личку. Чем смогу...
Сейчас сплю уже.

3Qu, это не требуется, я, скорее, обменялся мнением. Там надо потратить определённое немаленькое время и немаленькие усилия на это.
avatar
2) Отлично заявки подаются из подключенной dll.


Jame Bonds, вызвать из dll функцию MQL — не тривиальная задача.

Например, простейшая функция OrdersTotal(). Как вы её вызовете из dll как какую-нибудь другую C/C++-функцию из вашей же dll или из какой-нибудь другой библиотеки?

Это можно сделать, но это не тривиальная задача, нужно создать соответствующий framework, в котором ещё потребуется написать поддержку для каждой функции MQL, которую необходимо иметь возможность вызывать.

avatar
Jame Bonds, и квик глючит, и мт5 глючит… причем про mt5 отвечают что либо так и надо, либо что не могут воспроизвести и посылают открыто нахер…
Jame Bonds,
Хвалить MT может либо сотрудник MQ, либо программист, пишущий под MT для заказчиков, либо не знаю, торговец руками например. Каждый, кто пытается делать алго под МТ для биржи знает дюжину косяков, которым годы!
— хороший язык программирования,

Jame Bonds, не «хороший язык программирования», а редкостный кал, извините за мой «французский».

Мало того, что кишит bug'ами, как только начинаешь пытаться более или менее пользоваться языком, даже ещё не «на всю катушку» (примеры bug'ов в самом языке приводить не буду, чтобы не работать для них бесплатным тестировщиком), так ещё и безобразно убог. Лишь низко-квалифицированные архитекторы могли так убого мыслить. Но кичатся, что, мол, 30-летний опыт у них.

Приведу пример убогости, с которым недавно столкнулся (это MQL4, но компилятор-то, по их заявлениям, общий): в макросах можно использовать только 8 параметров, попытка использовать 9-й приводит к явной ошибке компиляции «too much parameters for macro» (ещё и перевести на нормальный английский денег пожалели, parameters — исчисляемое, поэтому many, а никак не much; но это, пожалуй, закономерное следствие их общего убогого уровня).

Вопрос «а зачем вам больше параметров?», если его задаёт, как бы, профессионал, как раз выдаёт убогость такого «профессионала». Для любителя такой вопрос простителен.

Почему в нормальном C/C++ нет таких проблем, никто таких вопросов не задаёт, и не составляет никакой проблемы создать макрос хоть со 101-м параметром (вот ссылка на пример кода)?

Все 4 основных компилятора «справляются», MSVC только исполнить не может, потому что на том сайте это не доделано, но компилирует успешно. А остальные компиляторы и исполняют успешно.

Это ещё не всё. В моём примере макрос сделан многострочным, и склеивается он стандартно с помощью обратного slash'а '\' в конце каждой строки, кроме последней. В данном случае так склеено как само тело макроса, так и его параметры.

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

И так там — во всём.

Ещё там имеется куча ограничений, которая существует, как бы, для того, чтобы сделать язык «безопасным», но которая связывает, буквально, по рукам и ногам.

Что-либо написать там из-за всей этой совокупности факторов очень сложно и, при попытке, всё-таки, это сделать, по ощущениям, очень напоминает мазохизм.
avatar
Unworldly, ok, теперь расскажите про макросы в QLua. Их там нет? Почему, ведь в нормальном C++ нет таких проблем?
avatar
Jame Bonds, про QLua не знаю, но MQL позиционируется как С-подобный язык, и макросы в MQL есть.
avatar
3Qu, зачем мне читать тех у кого проблемы? Я сам эксплуатирую без проблем, это вы встали в позицию «не читал, но осуждаю».
avatar
ICWiener, что я не читал и осуждаю?
avatar
ICWiener, попытка подвинуть ордер, выставленный на вечерке выдает ошибку.
Niktesla (бывш. Бабёр-Енот), такого не бывало
avatar
ICWiener, в тестере иногда лимитники пробивает насквозь без исполнения
Niktesla (бывш. Бабёр-Енот), а как вы оцениваете возможность исполнения?
avatar
ICWiener, визуально — в тестере, ордер пробивается котировками, и котировка уходит [сильно] дальше… неделю там бродит, ордер продолжает всё это время висеть (но подсвечивается желтеньким, как будто вот-вот щас исполнится)… «эксперты» ессесно в недоумении от происходящего…
Niktesla (бывш. Бабёр-Енот), можно скрин, не видел такого
avatar
ICWiener, зашел ща на mql5 по такому случаю, так там в сервисдеске все тиккеты мои поудаляли уже… видать за давностью лет.

Если охота поравзлечься, можете глянуть ссылку и срач в коментах))
Там правда немного про другое, но тогда я еще имел силы и достаточно нервов чтобы аргументировать с метаковскими представителями ))
https://smart-lab.ru/blog/336332.php

скрин лень делать))
но если руки дойдут, порадую))
ICWiener, вот, например, https://www.mql5.com/ru/forum/326941
avatar
DrumNBass, ну человек не понимает особенности учета МТ5 — это фича, а не баг. Да и понятно что проблемы возникают, ну так у квика форум с проблемами гораздо больше.
avatar
ICWiener, Прикольная «фича». Т.е. фиг знаешь, ты в плюс торгуешь или в минус. 
avatar
У меня все время Quik часто подвисает на открытии биржи и практически до 11 часов. Я не могу толком поставить лимитированную заявку или  поставить оповещение.  У меня, правда,  много открыто графиков разных бумаг. Один раз он даже начал ругаться, что открыто более 100 окон и он не позволяет открывать более 100 окон.
Подвисает и с одним окном. В более ранних версиях этого не было. Сейчас у меня наихудшая поганая  версия Quik 7.27.2.1
avatar
Silent Hamster, тоже 7.27.2.1
avatar
3Qu, У вас статуса Квала нет — вам брокер версию 7.29.2.40 не даёт, не заслужили...
avatar
Silent Hamster, «много открыто графиков разных бумаг» — хотел бы я скриншот этого глянуть… :)
avatar
Накой черт Квик перевели на 64 бита? Я раньше сидел на хр и не парился, а терь в 7 и 10 ее он по 15 мин открыаается
Хуан Диего из Севильи, А самоочистку поставить на ярлык, как в руковдстве написано — рука не поднимается?
avatar
Автор, TradingView терминалом не пробовали пользоваться?
Из росс. брокеров, АЛОР предоставляет доступ (3 секции — ФР, СР, ВР).

avatar
Любой брокер выпустит вас по протоколу PLAZA II, например, со всеми вытекающими отсюда последствиями. К тому же, если архитектура решения вменяемая, то даже если случится страшное и все вдруг откажутся от PLAZA II и перейдут, например, на мифический QMBAB III, переписать нужно будет только брокер подключения к шлюзу, а вся инфраструктура останется той же.

Таким образом, QUIK, наверное, лучший в плане всякого скриптоподельничества (не могу утверждать, никогда не писал на QLua, но LUA для других задач использую активно и ее удобство сложно переоценить), но не более того
avatar
PSH, полностью согласен. Однако для моих задач PLAZA, и даже коннекторы излишни. Для них нет задач.
Что касается — переписать только интерфейс, на деле это так не получается. Для этого нужен идентичный API.
avatar
PSH, кстати интересно, доступ к ИИС через плаза2 можно получить?
Кстати, если не считать программирования, то Transaq такой же полноценный терминал как и Квик. Только памяти жрет гораздо меньше, ни разу не видел чтоб тормозил… а для программирования так и пожалуйста через коннектор.

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

Глючат все трое, и смартком тоже глючит...
но глюк транзака(вернее транзак коннекта) я наблюдал только один раз(и то, не влияющий критически на работу), тогда как глюки остальных — пальцев на руках не хватит пересчитать…
Niktesla (бывш. Бабёр-Енот), смартком это полнейшая дичь, согласен :)

avatar
фирма MQ попыталась вывести МТ5 на биржу, ничего с этого не получила, и завязала с этой деятельностью.
Ваша статья бесполезна и даже вредна, т.к. вы абсолютно не в теме по МТ5! Никто ничего не завязывал и не собирается завязывать, а глюки (если есть) скорей всего на стороне биржи.

Наоборот, завязать пытались с МТ4 — несколько лет даже не делали обновлений к нему, делали грозные объявления о том, что МТ4 скоро вообще отключат от торговых серверов! И всё это ради того, чтобы пересадить народ на МТ5. А вы тут пишете неведомо что.
На МТ5 идет активная работа не только по поддержке, но и по модернизации. Когда ваша биржа научится работать, тогда и МТ5 не будет глючить. По крайней мере по Форексу я ничего о сильных повсеместных глюках МТ5 не слышал.

Кстати, это вам написал человек, которого здесь (в блоге MQ) и на форуме разрабов забанили именно за критику МТ5.
Только она касалась совсем не глюков.
avatar
VladMih, в теме говорится о бирже, а не о так называемом Форекс. Как работает МТ5 на форекс — без понятия. МТ5 — Форекс-терминал, и для биржи не катит. Если кого-то устраивает, ну и хорошо.
avatar
3Qu, не, это универсальный терминал который должен был по идее работать везде)) в результате форексникам делают фишку, а биржевики потом за голову хватаются.... 
Какое-то время назад кстати сделали разные билды для биржи и для форекса… видимо от гибрида ужа и ежа и те и другие нос воротили…
Niktesla (бывш. Бабёр-Енот), изначально МТ5 делался для форекс, и долго был только для форекс. Потом MQ его допилили, и, типа, сертифицировали для биржи. В итоге 3 брокера его таки взяли. Судя по их форуму с одного логина можно торговать только фьючерсами, акциями низзя — уже другой логин. Опционов вообще нет.
Оч похоже, что MQ плюнула на эту затею. Видимо, нерентабельно.
avatar
он не лучший, но по факту единственный для торговли всем спектром инструментов...  :)
avatar
Мне мой SmartX очень нравится.
avatar
Все в порядке с функциональностью языка mql5, и программированием на нем. И НЕ СУЩЕСТВУЕТ ЛУЧШЕ ТЕСТЕРА, ЧЕМ ТЕСТЕР MQL5( при условии применеия полных биржевых котировок, предварительно скачанных в тестер, чере напоимер Тикстори)
avatar
Sergey Seriy, ))) Смешно, извините.
avatar
Что смешного-то? Назовите лучший вариант тестера, который несмешной.
avatar
Для интрадея он не подходит на 50 % а так норм не хуже sierra chart 
avatar

теги блога 3Qu

....все тэги



UPDONW
Новый дизайн