<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[QUIK -> DDE &mdash; Готовые роботы]]></title>
		<link>https://quik2dde.ru/index.php</link>
		<atom:link href="https://quik2dde.ru/extern.php?action=feed&amp;fid=12&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние темы раздела «QUIK -> DDE».]]></description>
		<lastBuildDate>Sun, 22 Dec 2024 13:04:47 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Готовый робот для QUIK]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=455&amp;action=new</link>
			<description><![CDATA[<p>Приветствую. Завалялся старый рабочий робот. Со следующими настраиваемыми параметрами.<br /><span class="postimg"><img src="https://i.ibb.co/QCNgKQ0/image.png" alt="https://i.ibb.co/QCNgKQ0/image.png" /></span></p><p>Логика достаточно простая. При запуске робота на инструмент, он делает покупку по рыночной цене с выставлением стопа. Если цена ударяется об стоп, позиция переворачивается. <br />На резких движениях - идеалити) На боковиках - можно на комиссии разориться)</p><p>Это всё к чему.<br />Нужен робот-скрипт для анализа инструментов по квику с выводом в тек.таблицу торгов<br />Наверняка у кого нибудь уже есть что то подобное - можем поменяться)<br />Готов рассмотреть вариант разработки - в адекватную стоимость</p><p>З.ы. свой скрипт за 10т.р. отдам)<br />Видео работы робота доступно по запросу</p>]]></description>
			<author><![CDATA[null@example.com (work-servis)]]></author>
			<pubDate>Sun, 22 Dec 2024 13:04:47 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=455&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[нужно написать торговый скрипт]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=438&amp;action=new</link>
			<description><![CDATA[<p>Добрый день. <br />Мне нужно написать не сложный торговый скрипт. Скрипт должен работать по установленной логике, уметь выставлять заявки и отслеживать свою позицию. Кто готов написать скрипт прошу сообщить на почту vitalii_caldari@mail.ru, направлю ТЗ для ознакомления и более детального обсуждения. Спасибо.</p>]]></description>
			<author><![CDATA[null@example.com (vitalii_caldari)]]></author>
			<pubDate>Sun, 02 Jul 2023 09:06:08 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=438&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Ищем разработчика на QUIK]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=435&amp;action=new</link>
			<description><![CDATA[<p>Добрый день. </p><p>Ищем разработчика на QUIK для написания торгового робота. Хотелось бы человека на долгосрочное сотрудничество.</p>]]></description>
			<author><![CDATA[null@example.com (a.akmkn)]]></author>
			<pubDate>Wed, 07 Jun 2023 15:14:30 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=435&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Сделать exe из Lua-скрипта и запускать по горячей клавише]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=429&amp;action=new</link>
			<description><![CDATA[<p>Друзья, подскажите новичку.<br />Научился отправлять торговую транзакцию с помощью скрипта через окно &quot;Доступные скрипты&quot;. Хочу сделать горячую клавишу, которая отправляет торговую транзакцию запуская exe. Как мне этот скрипт превратить в исполняемый файл?</p>]]></description>
			<author><![CDATA[null@example.com (Bob)]]></author>
			<pubDate>Wed, 18 Jan 2023 16:56:29 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=429&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Простой вопрос по сделке через QLua скрипт]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=428&amp;action=new</link>
			<description><![CDATA[<p>Я начал знакомство с QLua и пытался сделать пример покупки/продажи акции через скрипт. Нашёл какой-то пример робота, по нему сделал свой пример покупки/продажи по шелчку мыши. Попробовал купить что-то подешевле, чтобы проверить работу скрипта. Фонд Ликвидность (LQDT) ETF от ВТБ купить не удалось, акцию ГИТ (GRNT) тоже, а акцию Мечела (MTLR) купил и продал.</p><p>У меня CLASSCODE = &#039;TQBR&#039;, а SECCODE, как написано в скобках. Подскажите, какие должны были быть эти параметры, в сообщениях было &quot;не найден инструмент GRNT&quot; и т.п. Почему GRNT не найден, а MTLR найден? Также интересуют эти параметры для покупки/продажи металлов и валюты. Где их вообще можно найти, я через поисковики на нашёл?..</p><p>После отправки транзакции через sendTransaction, этот найденный мной старючий скрипт ждёт, пока не получит статус текущей транзакции:</p><div class="codebox"><pre><code> while is_run and trans_Status == nil do sleep(1) end

[...]

function OnTransReply(trans_reply)
  -- Если поступила информация по текущей транзакции
  if trans_reply.trans_id == trans_id then
     -- Передает статус в глобальную переменную
     trans_Status = trans_reply.status;
     -- Передает сообщение в глобальную переменную
     trans_result_msg  = trans_reply.result_msg;
  end</code></pre></div><p>Через несколько секунд после сделки этот скрипт завешивает терминал, похоже, что не может выйти из бесконечного цикла выше. Видимо, в колбэке почему-то не сравнивается trans_reply.trans_id == trans_id. trans_id передаётся через sendTransaction:</p><div class="codebox"><pre><code> local Transaction =
  { [&#039;TRANS_ID&#039;]   = tostring(trans_id), ...

 local res = sendTransaction(Transaction)</code></pre></div><p>Почему так происходит, и как надо делать правильно? Дайте самый простой пример совершения сделок со всеми проверками на ошибки, чтобы самому не городить огород, спасибо за внимание.</p>]]></description>
			<author><![CDATA[null@example.com (Serge1234)]]></author>
			<pubDate>Mon, 19 Dec 2022 18:08:21 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=428&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Имитатор createdatasource для бэктеста]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=420&amp;action=new</link>
			<description><![CDATA[<p>Коллеги, есть ли у кого-нибудь готовый код для имитации ds ровно в том виде, в котором отдает сам квик? Использовать буду для бэктеста, чтобы не переписывать код для бэктеста, а получить прям точные результаты по данным из финама.</p>]]></description>
			<author><![CDATA[null@example.com (duni4i)]]></author>
			<pubDate>Thu, 03 Nov 2022 18:53:15 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=420&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Как перезапустить скрипт или предотвратить остановку из-за nil ошибки?]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=355&amp;action=new</link>
			<description><![CDATA[<p>Есть такая часть скрипта Quik Lua, проверяющая снятие заявки&nbsp; (см. ниже).<br />Однако периодически (с вероятностью 15-20% в день) скрипт останавливается, если на стороне брокера не подгружается лимит по бумаге, т.к. в результате программа получает значение по лимиту nil и не может сравнить значение.</p><p>Как сделать перезапуск остановленного скрипта после ошибки или предотвратить остановку скрипта при получении значения nil?</p><p>tbl_shares = getDepoEx(m_firm, m_client, m_sec, m_acc, 2)<br />qb = tbl_shares.locked_buy/lot<br />K1= {<br />&nbsp; &nbsp;&nbsp; [&#039;ACTION&#039;]=&#039;KILL_ORDER&#039;,<br />&nbsp; &nbsp;&nbsp; [&#039;CLASSCODE&#039;]=m_class,<br />&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; [&#039;SECCODE&#039;]=m_sec,<br />&nbsp; &nbsp;&nbsp; [&#039;ORDER_KEY&#039;]=tostring(key_b3),<br />&nbsp; &nbsp;&nbsp; [&#039;TRANS_ID&#039;]=tostring(id_b3)<br />&nbsp; &nbsp; }<br />Err_K1 = sendTransaction(K1)<br />while tbl_shares.locked_buy/lot==qb do<br />&nbsp; &nbsp; sleep(200)<br />&nbsp; &nbsp; &nbsp; &nbsp; tbl_shares = getDepoEx(m_firm, m_client, m_sec, m_acc, 2)<br />end</p>]]></description>
			<author><![CDATA[null@example.com (ecoreon)]]></author>
			<pubDate>Thu, 18 Nov 2021 12:11:52 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=355&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Советник ATR]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=298&amp;action=new</link>
			<description><![CDATA[<p>На самом деле, советник лишь для примера работы класса QTable и библиотеки StaticVar [url]https://quik2dde.ru/viewtopic.php?id=61[/url]<br />[url]https://yadi.sk/d/ov7U-k4OuJ1ocA[/url]</p>]]></description>
			<author><![CDATA[null@example.com (kalikazandr)]]></author>
			<pubDate>Mon, 26 Aug 2019 20:20:42 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=298&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Умная заявка]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=282&amp;action=new</link>
			<description><![CDATA[<p>Всем привет!<br />Сие обращение больше к lua- разработчикам, нежели к алготрейдерам, жаждущим помощи в реализации стратегии.<br />За основу взят hacktrade [url]https://github.com/hacktrade/hacktrade/tree/228ecdb2c2b53ebb4ed16d0d5779786446c74876[/url]<br />... и переделан топором.<br />Текущая реализация &quot;умной заявки&quot; позволяет экономить время написания торговых алгоритмов любой сложности, т.к. нет нужды придумывать алгоритм сопровождения позиции для каждого бота.</p><p>В отличие от hacktrade заявки не теряются и не выставляются по несколько штук.<br />Удобное клонирование ботов по инструментам, сопровождение позиций сразу по нескольким инструментам, общение ботов между собой в рамках одного терминала по нескольким клиентам, отслеживание изменений полей заявки с передачей изменений в общее пространство имен, что позволяет в одном gui приложении контролировать любую &quot;умную заявку&quot;.</p><p>Небольшая презентация<br />[url]https://drive.google.com/file/d/1lPEUOdHga-SLnMrd41qGSdZRax9KA4ev/view?usp=sharing[/url]</p><p>Чего хочу:<br />Собрать небольшую команду разработчиков под текущий большой опционный проект (несколько десятков ботов).<br />Есть с++ разработчик под линукс, занимается скоростными ботами в ко-локации и очень занятой человек на основной работе (в НИИ).<br />Нужно пару ребят, хорошо разбирающихся в lua и желательно с++, т.к. свои знания lua я определяю, как весьма поверхностные.</p><p>Обращаться на мыло в профиле или телегу @kalikazandr</p><p>Заранее всем благодарен.</p>]]></description>
			<author><![CDATA[null@example.com (kalikazandr)]]></author>
			<pubDate>Wed, 06 Feb 2019 10:05:03 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=282&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[ищу разработчика для quik на языках: lua, qpile]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=167&amp;action=new</link>
			<description><![CDATA[<p>ищу разработчика для quik<br />на языках: lua, qpile<br />пишите в Skype: vadium3</p>]]></description>
			<author><![CDATA[null@example.com (fazotron)]]></author>
			<pubDate>Sat, 05 Sep 2015 18:03:22 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=167&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Проверка скорости брокера]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=165&amp;action=new</link>
			<description><![CDATA[<div class="codebox"><pre><code>-- разрабатывался для совершения сделки в момент открытия биржи чтоб попасть в тренд. [&quot;PRICE&quot;]=&quot;57000&quot; набрасывать не больше 1000 руб., для исполнения по рынку, иначе может не сработать (лимиты цены покупки-продажи, устанавливаемые биржей).
is_run=true

function tra(pie) -- продажа 

t = {

            [&quot;CLASSCODE&quot;]=&quot;SPBFUT&quot;,

            [&quot;SECCODE&quot;]=&quot;SiU5&quot;,

            [&quot;ACTION&quot;]=&quot;NEW_ORDER&quot;,

            [&quot;ACCOUNT&quot;]=&quot;411хххх&quot;,

            [&quot;CLIENT_CODE&quot;]=&quot;65ххх&quot;,

            [&quot;TYPE&quot;]=&quot;M&quot;,
            
            [&quot;OPERATION&quot;]=&quot;S&quot;,

            [&quot;QUANTITY&quot;]=&quot;1&quot;,

            [&quot;PRICE&quot;]=&quot;57000&quot;,
            
            [&quot;TRANS_ID&quot;]=&quot;111&quot;,


      }
      
      res=sendTransaction(t)

end



function tra_b(pie_b) -- купля 

t = {

            [&quot;CLASSCODE&quot;]=&quot;SPBFUT&quot;,

            [&quot;SECCODE&quot;]=&quot;SiU5&quot;,

            [&quot;ACTION&quot;]=&quot;NEW_ORDER&quot;,

            [&quot;ACCOUNT&quot;]=&quot;411хххх&quot;,

            [&quot;CLIENT_CODE&quot;]=&quot;65ххх&quot;,

            [&quot;TYPE&quot;]=&quot;M&quot;,
            
            [&quot;OPERATION&quot;]=&quot;B&quot;,

            [&quot;QUANTITY&quot;]=&quot;1&quot;,

            [&quot;PRICE&quot;]=&quot;59000&quot;,
            
            [&quot;TRANS_ID&quot;]=&quot;111&quot;,


      }
      
      res=sendTransaction(t)

end


function main()

      while is_run do

            sleep(10000)

      end

end

function OnStop(stop_flag)

    is_run=false

end


function OnAllTrade(alltrade)

    if alltrade.sec_code==&quot;SiU5&quot; and is_run==true then 

        if alltrade.flags==1 then -- продано 
            is_run=false
            tra(pie) -- продаём 
        end
        if alltrade.flags==2 then -- куплено 
            is_run=false
            tra_b(pie_b)
        end
    end
end</code></pre></div><p>Потом лезете в таблицу всех сделок, находите первую обезличенную сделку и свою, вычитаете их времена.<br />У меня в брокере &quot;Открытие&quot; наименьшее время 400мс</p>]]></description>
			<author><![CDATA[null@example.com (ascerdfg)]]></author>
			<pubDate>Mon, 17 Aug 2015 18:47:53 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=165&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[сделка от мувинга]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=136&amp;action=new</link>
			<description><![CDATA[<p>просьба, напишите скрипт для торгов от мувинга. например вход в сделку в short или long только после удаления цены на определённый размер цены от цены мувинга, для ловли импульсных скачков рынка. руками не успеть.</p>]]></description>
			<author><![CDATA[null@example.com (suvik)]]></author>
			<pubDate>Sun, 22 Feb 2015 19:49:10 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=136&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Пробую писать привод.]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=121&amp;action=new</link>
			<description><![CDATA[<p>Итак, пишу свой собственный привод.&nbsp; (пользуясь библиотекой QVCLua)</p><br /><p>Это пока что только начало привода.</p><p>Ниже будут выкладываться актуальные версии</p>]]></description>
			<author><![CDATA[null@example.com (slkumax)]]></author>
			<pubDate>Tue, 27 Jan 2015 12:35:59 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=121&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Привод для работы от уровней]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=113&amp;action=new</link>
			<description><![CDATA[<p>Здравствуйте!<br />Нужен простой алгоритм для работы в квике. </p><p>Задача такая: </p><p>Я в настройках выставляю уровни, которым будут присвоены имена Buy1 (уровень для покупки 1), Buy2 (уровень для покупки 2) и т.д. это для цен, находящихся ниже текущих цен и Sell1, Sell2 и т.д. для цен выше текущего уровня цен. Все отложенные ордера выставляются только лимитными ордерами в стакан. Количество уровней должно быть большим. Например, 30-40 вариантов. Если уровень не заполнен, то он не активен и по нему заявки не выставляются.</p><p>Я в настройках задаю диапазоны в пунктах TPBuy1(тейк-профит для уровня покупки 1), TPBuy2, TPBuy3 и т.п. для каждого уровня покупки или продажи (имя диапазона несущественно, но главное чтобы было понятно что оно соответствует определенному уровню покупки или продажи). Например, TPBuy1=280 пп, TPBuy2=150пп, TPBuy3=400пп и т.п.</p><p>В настройках задаю количество лотов для работы.</p><p>Логика работы:<br />Запускаясь, робот ставит лимитные ордера по указанным уровням. После того как цена дошла до определенного уровня покупки или продажи, то выставляется встречная лимитная заявка (тейк-профит), который будет соответствовать, например, Buy1+TPBuy1 Buy2+TPBuy2 и т.п., соответственно, для продажи тоже самое только с тейк-профитом соответствующем уровню продаж. Пока Тейк-профит не исполнен, то снова лимитная заявка на этот уровень покупки\продажи не ставится. <br />Тейк-профит выставляется только на то количество контрактов, которое исполнилось. <br />Если исполнилось, например, 1 лот из 2х и выставился тейк на 1 лот, то заявка на оставшийся лот не снимается. Если при этом цена не дошла до тейка, а исполнила оставшийся лот, то тейк переделывается на 2 лота, а новая заявка на вход по этому уровню не ставится до исполнения тейк-профита.<br />Аналогична логика работы с уровнями, которые дальше. Тейк-профит по уже исполненным ордерам остается висеть в системе до исполнения.<br />Если на клиринге ордера снимаются, то они выставляются роботом снова, учитывая то что некоторые ордера на вход, а некоторые на тейк-профит по исполненным ранее уровням.<br />Заявки выставляются до бесконечности, либо до отключения алгоритма.<br />Все операции записываются в текстовый лог.</p><p>Вот как-то так. Прошу помощи с написанием по причине того что очень мало опыта в программировании. Заранее спасибо за помощь.</p>]]></description>
			<author><![CDATA[null@example.com (rabbit3000)]]></author>
			<pubDate>Sun, 28 Dec 2014 17:41:07 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=113&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Работающие скрипты на Lua]]></title>
			<link>https://quik2dde.ru/viewtopic.php?id=98&amp;action=new</link>
			<description><![CDATA[<p>Предлагаю здесь размещать целиком законченные и рабочие скрипты на Lua.</p><p>Основная идея такая:<br />часто в Интернете на каких-либо ресурсах попадаются скрипты на Lua для Quik, но при попытке их загрузки сходу в Quik с малыми изменениями (например просто изменить номер счета и торговый инструмент) возникают ошибки вроде таких: для работы требуются определенные библиотеки/функции, а библиотеки/функции самописные и обратно не совместимые. В итоге в скриптах эти функции не работают или работают не так как от них ожидалось.<br />Здесь предлагается размещать проверенные в работе скрипты (желательно, чтобы большинство используемых функций находились внутри скрипта, в идеале все функции внутри) или ссылки на таковые, если их работа была проверена, желательно с указанием даты проверки, версии Quik и торгового инструмента.</p>]]></description>
			<author><![CDATA[null@example.com (Archie)]]></author>
			<pubDate>Fri, 04 Jul 2014 01:47:28 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?id=98&amp;action=new</guid>
		</item>
	</channel>
</rss>
