Робот пересечение двух MA для торговли под Quik.

Робот пересечение двух MA для торговли под Quik.

Всех приветствую.

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

План:

1) Как установить робота 2SMA;

2) Как использовать;

4) Заключение

 

1 Как установить робота

Разархивируйте и сохраните в удобном месте. Для запуска нескольких копий сделайте доп. копии папок робота и установите соответствующие настройки.

Запускаем 2SMA.exe и настраиваем.

  • Класс - класс инструмента (смотреть надо в таблице всех параметров Квика "Код класса") для Сбербанка - TQBR, Газпрома - TQBR, для их текущих фьючерсов SPBFUT
  • Инструмент - торгуемый инструмент (смотреть надо в таблице всех параметров Квика "Код бумаги") для Сбербанка - SBER, Газпрома - GAZP, для их текущих фьючерсов SRH6 и GZH6
  • Таймфрейм – это используемый таймфрейм для индикаторов
  • Кол-во – это количество торгуемых лот роботом
  • Тип MA1 – это тип Moving Average используемой в роботе.
  • Сглаживание – это период сглаживания
  • Способ – это значения используемые для построения скользящей средней.

На выбор можно строить мувинги по: открытиям свечи, вершинам, низам, закрытиям, среднему по тенями, сренему по телу и (Open+High+Low+Close)/4

  • Id – это точка отсчета для id транзакций робота. Если будете запускать нескольких роботов, увеличьте данное число у следующего на 1000
  • MA1 выше MA2 – здесь можно настроить действие, которое будет применять робот при расположении скользящих средних
  • Вкл. – если установить галочку робот начнет торговать, если снять, то робот закроет свою позицию.

Примечание! Все изменения вступают в силу только после нажатия кнопки Применить.

Примечание! Для работы робота можно не располагать на графике индикаторы.

Важно! ТФ, Класс , Инст. нельзя менять на лету, после изменения этих параметров придется остановить main.luac и перезапустить. Все остальные параметры можно менять на лету.

 

В Quik выбираем Создать Окно->Все типы окон

 

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

 

Выбираем необходимые инструменты которые будем использовать для робота. В случае со Сбербанком раздел Акции первого уровня, потом добавляем Сбербанк.

У вас появится таблица.

Отлично.

После этого запускаем main.luac в Quik Сервисы ->Lua скрипты

Если у вас стоит галочка Вкл. в 2SMA.exe , то робот сразу начнет торговать.

 

2 Как использовать


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

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

Как видно из скрина можно торговать и контртренд, устраивая сиртаки :)

Какие стратегии можно торговать:

  • Трендовые

Для этого надо в первом сглаживании поставить меньшее число, а во втором большее и установить режим Long.

  • Контртренд

Для этого надо в первом сглаживании поставить меньшее число, а во втором большее и установить режим Short.

  • Пересечение ценой скользящей средней

Для этого надо в одной из MA установить в поле сглаживание 1.

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

Скачать

 

Заключение

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

В прошлый раз я описывал работу различных торговых алгоритмов построенных на Moving Average. Тестировал на истории и рассматривал плюсы и минусы этих систем.

Хочу немного сменить формат. Буду рассматривать индикатор, тестировать и сразу выкладывать робота дабы не затягивать

14:45
19631

120 комментариев

10:32
Здравствуйте. Нужен еще доступ к роботу? Запускаю 2SMA.exe — пишет «Нет доступа». Квик у меня 7.04.10, скрипты lua. Чем от luac отличаются? Как запустить скрипт luac?
Вечер добрый. Робот запускается на Windows начиная с 7, если у вас XP, то работать не будет. Так же стоит запускать 2SMA.exe от имени администратора. Для этого надо на 2SMA.exe нажать правой кнопкой мыши и выбрать пункт «Запуск от имени администратора». Если у вас в Quik нет возможности выбрать luac файл и он не видит его, то переименуйте main.luac в main.lua
Робот является бесплатным и никаких блокировок на нем нет
12:13
​Добрый день!
Пробую запустить вашего робота, но при заполнении всех тикеров в формочке и запуске в QUIK файла main.luac, никаких ошибок не выдает, но сделки не совершает. Правильно ли я понимаю, что при запуске робот сразу должен открыть позицию и дальше работать от переворотов?
P.S. Точно также нет сделок и при запуске робота для торговли растущей/падающей MA под Quik
День добрый. Посмотрите пожалуйста таблицу Обезличенных сделок. Думаю у вас там нет вашего инструмента. См. инструкцию и добавьте ваш инст. Если вы торгуете RIM6, SiM6 или, что-то иное, то вам нужно их добавить, они в разделе фьючерсы.
17:53
Нет, лента сделок идет, по SRM6. Данный инструмент и пытаюсь запустить.
проверил торговлю SRM6
i.gyazo.com/22a0d307e2d938f2f83c09f81f282b6d.png
все работает отлично сделки идут
18:39
При запуске робота он сразу должен открыть позицию?
Учитывая что робот переворотный он постоянно находится в позиции. Да, он сразу зайдет в позицию в соответствии с параметрами и выбранной стратегией, если конечно включен(галочка Вкл. около кнопки Применить). На моем скрине он выключен. После снятия галочки и нажатия на применить он закрыл позицию.
Вот скрин из боевой Quik
i.gyazo.com/f0b17b95e99809846629a3a1b3447ab2.png
17:35
Подскажите с чем связана данная ошибка? Не запускается скрипт main

main.lua:69: attempt to index global 'ds' (a nil value)
У вас неправильно прописан: название инструмента или класс. Для RIM6 SPBFUT, если у вас SiM6 то обратите внимание на то, что «i» маленькая в названии инструмента. Если правильно все заполните и запустите main.luac то все будет ок
12:44
У меня SRM6 SPBFUT))
i.gyazo.com/04c489add55fbdbed621dee3a7d2d0ea.png
напомню, что в таблице обезличенных сделок у вас должен быть SRM6 В инструкции написано как его надо добавлять в Квике
13:33
Естественно он у меня там есть, дело в том что скрипт с ростом или падением MA запускается, а скрипт с пересечением MA не запускается…
скачал с форума и запустил у себя на реале, все четко работает. С вероятностью 100% у вас неправильно инструмент или класс прописан. После изменения надо нажать на кнопку Применить и запустить main.luac
14:05
ну раз вероятность 100% буду искать в чем дело, спасибо Сергей
эта ошибка возникает если неправильно указан: Класс, Инст. или ТФ. ТФ вы указать неправильно не можете :)
Посмотрите внимательней у вас там возможно пробел стоит вы его не видите, а он есть :), его быть не должно. После редактирования нажмите Применить и запустите main.luac вновь
14:31
Ну по-любому что-то не досмотрел)) А не думаете ещё парочку бесплатных роботов на индикаторах сделать? Например ParabolicSar или импульсного робота на гистограмме MACD? Коды могу предоставить))
В рамках темы я пишу базовые алгоритмы на стандартных индикаторах. Возможны любые доработки или не стандартные индикаторы, нестандартный анализ цены, ТФ, но это все за доп. плату
14:43
У меня они есть, просто написаны на qpile и через dde. В общем ладно, спасибо за вашу работу, ждем новых бесплатных роботов) Как только придумаю робота посложнее обязательно к вам обращусь
22:45
Спасибо вам огромное за ваш альтруизм. да у меня у брокера все по русски и на кирилице и класс и инструмент. поставил по латинице и заработало. робота обновил до современной версии квика. посмотрю что и как будет работать
11:58
Здравствуйте. С этим роботом получается и на следующий день можно переносить позиции? Для этого просто нужно выйти из терминала? Проблем не возникнет?
Совершенно верно
Добрый день! Подскажите, мувинги с какими значениями используются, как можно менять периоды мувингов или значения сглаживания это и есть периоды средних?
P/S Как можно на графике отследить точки входа в позицию?
День добрый. Да, Сглаживание и есть период. Для отслеживания добавьте индикаторы Moving average на график с такими же параметрами. При этом график должен быть того же ТФ, что и в роботе
Спасибо и за бот и за разъяснения!!! :-)
При работе робота 2SMA.exe всегда должен быть запущен или после настроек его можно закрыть?
2SMA.exe используется только для настроек после его можно смело закрывать. Главное что бы в скриптах запущенный main.luac был зеленый
Спасибо!
14:58
+1
Добрый день! С прошедшими праздниками! Подскажите пож. после запуска скрипт выдает ошибку — ''Неверный код клиента'' :-( В чем может быть причина, в настройках робота нет же кода клиента?
День добрый. Для ММВБ на реальном счете робот может не работать
P.S. Попробовал вместо номера счета, поставить код клиента, тогда пишет, что не найден номер счета, замкнутый круг какой-то :-) Что можно сделать?
На выходных подправлю робота. Скачайте его по новой в Пн.
Сергей, здравствуйте! Опять пришла беда откуда не ждали :-) Погонял я робота пару месяцев, не могу понять, что происходит, иногда он покупает и продает сверх установленного лимита, т.е. к примеру, количество лотов установлено 50, а он продает 150 или 300 лотов и указывает это в позиции :-( Может купить или продать, хотя сигналов на графике, пересечений средних нет :-( Как быть, как угомонить взбесившегося робота? :-)



p.s. еще хотел узнать, что такое Middle S и Middle B?
на тестах все ок. Можно переписать робота под вас. Мы с вами обсуждали это на форуме
15:55
Добрый день.Подскажите пжл. как правильно выставить период сглаживания на 5 минутном Таймфрейм.
С уважением.y
День добрый. Для поиска оптимальных парам. для вашего инст. воспользуйтесь стратегией для WL
09:30
Спасибо.Начал изучатью
10:04
Добрый день. Все делаю по инструкции.Но выходит сообщение Строка не распознана как действительное значение DATA TiME. настройки дат проверил. не идет. Не подскажите выход.
10:06
10:06
День добрый. У картинок очень низкое разрешение, ничего не вижу. И здесь тема робота под Quik 2MA
06:47
Когда скачиваете данные с финама. Посмотрите на графу «формат». У вас там 9 полей. Ticker, Per, Date, Time, Open, High, Low, Close, Vol. А когда Вы эти поля пытаетесь конвертировать внутрь велса, у Вас там 7мь полей. Поэтому ошибка.
Что сделать?
Скачивайте с финама дату в соответствующем формате.
У Серея в статье o-s-a.net/posts/wealthlab01.html всё для этого есть.
11:53
Спасибо разобрался.
11:23
Добрый день!
Подскажите, пожалуйста, как будет выглядеть строка
if CrossUnder( Bar, #Close, SMASeries( #Close, 20 ) ) then
В Wealth lab 6?
protected override void Execute()
{
DataSeries MA1 = SMA.Series(Close, period_MA1);
DataSeries MA2 = SMA.Series(Close, period_MA2);
for(int bar = period_MA2; bar < Bars.Count; bar++)
{
if (MA1[bar]<MA2[bar] && MA1[bar-1]>MA2[bar-1])
{
22:10
Спасибо, Сергей!
09:48
Добрый день, Сергей!
Подскажите еще, пожалуйста, как будет выглядеть строка
if PositionShort ( LastPosition ) Then
В Wealth lab 6?
День добрый.
if ( LastPosition.PositionType == PositionType.Short )

Роман, я готов помогать по WL так как веду этот раздел, но у нас тут не гос. консультационный центр. Пишите пожалуйста мне на почту и будим решать ваши задачи
22:19
Здравствуйте, Сергей. Подскажите пожалуйста, есть ли у робота функция проскальзывания или что-то подобное, для защиты от дребезга при боковом тренде?
День добрый. Просказьзывания нет. Для того чтоб не торговать в боковом тренде нужен другой алгоритм
09:04
Понял, спасибо. Можете написать в письме несколько вариантов роботов с ценами, для торговли на фондовом рынке небольшими депозитами (1-3-5 тыс $)? [email protected]
14:34
Почему то выдает ошибку — Указанный счет депо не найден. Какие цифры нужно указывать в номере счета?
нужно указывать торговый счет, взять его можно из таб. или из стакана
14:40
Понял. Указал теперь правильный счет, Сразу пошли сделки. Вместо одного указанного лота торгуется разное количество — до 300 лотов.
протестирую робота еще раз на днях
21:59
что такое мидл s и мидл B. Какие параметры выбрать, если сделки по мувингам должны совершаться на пересечении одной скользящей по другой?
мидл s — средняя по теням, мидл B — средняя по телу свечи. По умолчанию обычно идет close
22:16
какие параметры для скользящих средних выбрать, если нужно, чтобы при их пересечении совершались сделки в Лонг и в Шорт. Так же SMA и EMA, что выбрать и куда? Так как на обычном графике привык торговать про где написано МА.
по умолчанию обычно идет EMA
04:01
Подскажите пожалуйста, в чем может быть проблема: гоняю робот по одному инструменту, продает и покупает сверх лимита, даже если нет пересечений кривых. и еще, правильно ли я понимаю, что робот переворотный? то есть всегда должен быть в позиции?
робот переворотный. По поводу лимитов я его множество раз тестировал все ок. Протестирую еще раз
07:07
Спасибо! Есть еще предположение, что проблема не в лимитах, а в закрытии позиций. Он не всегда переворачивается, не знаю почему
08:48
Здравствуйте Сергей. Вы можете выложить декомпилировании код данного робота в формате .lua Я начал изучать Lua и хотел бы его использовать в качестве эталонного примера по мувингам. Спасибо.
День добрый. У нас есть обучение по Lua. В которое входит
1) индикатор с комментариями для Quik
2) торговый робот с внутренней математикой расчета индикатора с обилием комментариев + интерфейс для него на C# без комментов
3) торговый робот с использованием стандартных индикаторов Quik с обилием комментариев
4) методичка с общими правилами написания на Lua

то есть там будет робот, где можно полностью реализовать свой индикатор и реализовать на нем торговый алгоритм, и робот с помощью, которого можно взять значения любого индюка Quik и
реализовать на них свою торг. логику
21:24
здравствуйте я тупо хотел бы знать какой лучше робот на акциях торговать внутри дня поднялось купил опустилось ниже копеек 50-60 продал или перевернул моментально позицию
ps на квике
Вечер добрый. Трендовые роботы от 15мин. ТФ думаю ими вряд ли можно торговать внутри дня. Можно написать робота, чтоб он работал по вашему алгоритму: опустилась цена на 50п. шорт, поднялась лонг
21:32
у меня по моему самая простая задача на сбере началось подниматься купилось начало падать перевернулась вообщем чтоб в торговой сессии то есть днем только была мне прибыль это все
робот по отклонению цены от экстремума будет стоить 4т.р.
21:44
а как мне его правильно настроить и главное убедиться что я правильно все делаю ????????
к роботу будет прилагаться инструкция
16:01
Добрый день. когда скрипт запущен он где то отображается табличка какая нибудь? а то я запустил сделки пошли, а не видно робот запущен или не запущен
в Lua скриптах, там где вы его запускали будет зеленая стрелочка, а в настроечном интерфейсе установлена вами галочка Вкл.
16:27
Спасибо. подскажите, этот робот может переворачиваться? т.е. открыл лонг при пересечении вверх, и при пересечении вниз закрыл лонг и открыл шорт? и по кругу. В описании написано что он переворотный но в настройках только лонг и шорт галочки
да, робот переворотный. Настройка Long/Short для выбора трендовой или контртрендовой торговли
16:47
галочку лонг и шорт нельзя же убрать, не совсем понимаю, у меня сейчас стоит галочка лонг. он будет переворачиваться?
он всегда будет переворачиваться, вопрос только куда. Если выбран Long, то при MA1 выше MA2 будет взят лонг. А если выбран Short, то при этой же ситуации будет взята позиция шорт
16:56
все дошло ))) спасибо.
14:09
Добрый день, тестировал робота на ма вверх вниз, и робота на 2 ма. Произошла такая ситуация, стоит кол-во 1 контракт, он наоткрывал позиции на 10 контрактов. Я подумал что возможно это связано либо с подтормаживанием компьютера, или интернета. Может такое быть? Пропал интернет, и он отправляет заявки. И получилось что куча заявок ушла. В скрипте есть какое то время через которое он отправляет повторную заявку?
День добрый. Да такая ситуация возможна при задержке пересчета позиции в Квик. Происходит это редко, но такая ситуация возможна. В таких случаях надо увеличивать задержку по времени между ордеров. Данная настройка в роботе отсутствует
15:37
возможно ли добавить такую возможность в роботы?
да, но это за доп. плату. Пишите мне на емаил [email protected]
11:47
Добрый день! Почему то не могу запустить робота, Постоянно пишет неверный код клиента, хотя вроде все ввожу правильно
День добрый.
Возможны две причины:
1) Введен неправильный Код клиента. Обычно Код клиента такой же как и Счет клиента
2) У вас Консолидированный счет у брокера, тогда надо вносить изменения в робот
10:39
Здравствуйте, при добавлении робота в Луа скрипты выскакивет какаято ошибка, что это может быть?
День добрый. Из того что я вижу у вас не хватает части робота, отсутствует файл indicator.luac
Дамы и господа, данный робот скачали тысячи людей и он у всех работает. Просьба делать всё по инструкции, в которой всего несколько пунктов. И у вас он тоже будет работать. Последняя проверка робота была выполнена на Quik 7.16.3.14 (на старых версиях Квика он тоже работает)
12:47
подскажите, пожалуйста, а на 8 квике работать будет?
12:46
Большое спасибо Вам за работу и за свободный доступ к ней!
14:11
Добрый день, подскажите, пожалуйста, робот работает только при работающем компьютере и терминале?
То есть, если я выключил компьютер, то и робот автоматически выключился и закрыл позицию?
День добрый. Робот работает только при работающем компьютере и терминале. Робот закрывает позицию если он включен и вы снимаете галочку Вкл. выключая тем самым робот. См. инструкцию
09:19
Благодарю!
16:07
Добрый день. При добавлении луа скрипта пишет: Syntax error while compiling C:\Users\User\Downloads\2ma-end-v8\main.luac: C:\Users\User\Downloads\2ma-end-v8\main.luac: version mismatch in precompiled chunk
День добрый.
Добавил новую версию для Quik 8.5 и выше
22:09
main.luac: version mismatch in precompiled chunk

похоже, старая версия робота. у меня квик версии 8.11.0.66
17:26
Сергей. Огромное Вам спасибо, пользуюсь на одной машине со старым квиком вашим роботом уже год, но на другом копьютере с версией квика 9.3.3.3 Ваш робот уже не работает. Не планируете делать апдейт?
13:06
Здравствуйте при запуске main lua пишет в ошибках .main lua 70:attempt to index a nil value(global ds) подскажите что не правильно
13:44
Добрый день!
При запуске скрипта, через несколько секунд появляется ошибка:
main.lua:131: attempt to call a nil value (global 'trade_alg')
Подскажите пожалуйста, с чем может быть связано?
День добрый. У вас неправильно указан инструмент. Заполните поля по инструкции. Там всего несколько пунктов
17:31
Робот не переворачивается вовремя он после включения сразу заходит в сделку например в шорт а рынок развернулся и пошел в лонг дает три хороших свечи и робот развернется только на самом верху когда рынок уже опять пойдет вниз в такие минуса с этим роботом залетаешь.
День добрый. Робот работает по алгоритму расположение скользящих средних на закрытом баре формирует сигнал. Посмотрите пожалуйста описание
21:33
Сколько по сумме платная доработанная версия без buy, sell в минус?
С мультичартсом возможно связать?
День добрый. Напишите пожалуйста ТЗ по роботу на [email protected]
11:18
Робот не доработан он должен заходить в сделку по сигналу, а он заходит сразу без всякого сигнала.Я наблюдал за линиями пока эти линии пересекутся да даже когда они пересеклись он не сразу переворачивается а переворачивается в конце подьема или падения.Зачем людей обманывать голову им с этими бесплатными роботами морочить.Я неделю этим роботом торговал и он каждый день загонял в минуса не одного дня в плюс не выходил.
Вечер добрый. Робот был мной создан в 2016 году. За это время его соответствие алгоритму проверили по мимо меня тысячи людей. Почитайте пожалуйста, что он делает и как работает
17:39
Вот посмотрите как ваш робот работает по алгоритму.Чепуха какая то
16:44
Здравствуйте! Поставил робота 2SMA. Но при установке не смог изменить «Позицию» на 1, как у Вас. У меня стоит 0 и не хочет меняться. Прошу помочь.
17:33
На симуляторе Клик это работает? Или только в реальных сделках
14:53
Здравствуйте! Робот покупает, но не продает в чем может быть дело?? купил сбер по 316, пошел рост до 321 потом падение до 310 так и не продал
Вероятней всего ваш брокер не даёт совершать короткие продажи
16:17
Пишет, что в новой версии QUIK не работает. Есть надежда на корректировку версии?
У меня всё работает. Версия робота для 8.5 в настройках Квика стоит луа 5.3.5
11:56
Может дело в версии QUIK, у меня 9.5.

13:15
Возможно это из-за того, что у меня версия. 9.5.

у меня пока нет такой версии
14:20
По всей видимости это потому, что у меня версия QUIK 9.5
15:52
У меня версия Квик 9.5. Возможно из-за этого.
Предполагаю у вас могут быть какие-то другие настройкиlua 5..3.5

Версии Квика 9.5 у меня пока нет. Я обычно не спешу переходить на новые версии жду пока проверят. Тут же главное чтоб стабильно работало
16:25
Такие же стоят — 5.3.5. Скорее всего проблема всё же в версии.