Ziveleos (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 2 3 След.
Запуск скриптов lua
 
Цитата
Старатель написал:
До сих пор нет надёжного решения обсуждаемой проблемы.

Цитата
Серж написал:
Состояние  скрипта при следующем запуске зависит от того успел ли он становиться  до сохранения его статуса (остановлен/запущен) в файл scripts.dat.

Так это и есть решение проблемы.
if msg == QTABLE_CLOSE then sleep(time)  OnStop() end
Нужно только, чтобы "time" было больше периода "бесконечного" цикла main, или времени возвращаемого OnStop.
Всё пройдет. Но это не точно.
Купить по рынку / Продать по рынку, Необходима помощь в подключении этих опций
 
Чтобы кнопки были активны, на панели торговли должны быть указаны количество "Q", и счет "A".
Отобразить эти поля в настройках стакана >Панель торговли>Цена количество и счет.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Причина в том, что в новых версиях квик каждый раз при отрисовке метки обращается за картинкой к диску, даже если картинка одна и та же, и, видимо, у него не всегда это получается.
https://forum.quik.ru/messages/forum1/message70509/topic8106/#message70509
Что с этим делать - не знаю.
Всё пройдет. Но это не точно.
Преобразование времени в число
 
Цитата
nikolz написал:
пардон, исправил:
Код
   local  time_pos =  string.gsub ( getInfoParam ( "SERVERTIME" ),  ":" ,  "" );
  

Из руководства:

Цитата
%x:  (где x - не алфавитно-цифровой символ) представляет символ x. Это стандартный способ кодирования магических символов. Любой не алфавитно-цифровой символ (включая все знаки пунктуации, даже не магические) могут предваряться '%', когда используются для представления себя в шаблоне.
Всё пройдет. Но это не точно.
Преобразование времени в число
 
Цитата
nikolz написал:
 
Цитата
Ziveleos написал:
local time_pos =string.sub (x,1,2)..string.sub (x,4,5)..string.sub (x,7,8);
Вы утверждаете, что это я написал?
Всё пройдет. Но это не точно.
Преобразование времени в число
 
Денис, добрый день.
Вот рабочий код:

Код
  local t = string.gsub(getInfoParam("SERVERTIME"),"%:", "")
  local time_pos = string.format("%06d", tonumber(t))


nikolz, до 10 утра время сервера передается без начального нуля, одной цифрой.
Всё пройдет. Но это не точно.
Фризы и тормоза, Фризы терминала
 
Если не секрет, в текущей таблице параметров #2 сколько строк?
Всё пройдет. Но это не точно.
Купить по рынку / Продать по рынку, Необходима помощь в подключении этих опций
 
Поля "Количество" и "Счет" задействованы?
Всё пройдет. Но это не точно.
Добавить функции QLUA "Поверх всех окон" и "Показывать на всех"
 
Цитата
Daniil Pozdnyakov написал:
Здравствуйте!

Ваше пожелание зарегистрировано.  Мы постараемся рассмотреть его и  сообщить Вам результаты анализа. Впоследствии, по результатам анализа,  будет приниматься решение о реализации пожелания в будущих версиях ПО.
Прошло 2 года. Как дело движется?
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
При тестировании стратегий на исторических свечах. При выводе меток приходит такая ошибка;
Цитата
Ошибка при создании метки: Группа или ресурс не находятся в нужном состоянии для выполнения требуемой операции.
Ни чего по ней найти не возможно, по смыслу что со свечами не то?

Скорее не со свечами, а с метками. Файлы картинок для меток используются?
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
А как?
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
стоимость контракта = price_last * pos_qty* lot ?
С контрактом на индекса мосбиржи (MXI) такая формула не работает.
Всё пройдет. Но это не точно.
Экспорт из Quik в Excel необходимых данных!, Экспорт из Quik в Excel следующих данных!
 
Цитата
hts написал:
Можно ли вывести в эксель все свои сделки, купля продажа итд.  И если  можно то как.  Спасибо  
На таблице сделок, правая кнопка мыши > Вывод через DDE сервер.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
Игорь М написал:
Вы здесь за один удар определяете и то, что у вас заявка активная и то, что она купля/продажа

Вот и я о том же: https://forum.quik.ru/messages/forum10/message71098/topic8137/#message71098
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Опять я наврал. Нельзя два дела одновременно делать!
Так правильно:

Код
   x = order.flags & 3 -- для версии lua ниже 5.3 ->  bit.band(order.flags,3)
  if x == 2 then
      message("Заявка снята")
    elseif x == 1 then
      message("Заявка активна")
    elseif x == 0 then
      message("Заявка исполнена")
  end
end
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Можно.

Код
x = order.flags & 3 -- для версии lua ниже 5.3:  bit.band(order.flags,3)
if x == 3 then
    message("Заявка снята")
  elseif x == 2 then
    message("Заявка исполнена")
  elseif x == 1 then
    message("Заявка активна")
end


Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
Ziveleos написал:
r = order.flags & Х, где Х - вес соответствующего флага. r - 1 или 0, в зависимости от того, установлен флаг, или нет.
Наврал. r - вес флага или 0, в зависимости от того, установлен флаг, или нет.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Еше ватиант bit.test(order.flags,Х), где Х - номер флага. Возвращает true или false.
Работает медленно, но зато даже на луа 5.1
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Как безошибочно выяснять состояние флагов
r = order.flags & Х, где Х - вес соответствующего флага. r - 1 или 0, в зависимости от того, установлен флаг, или нет.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
nikolz, нафига их двигать, если можно сразу и пачкой:
Цитата
Ziveleos написал:
У каждого флага свой вес. Чтобы узнать состояние флагов, нужно в качестве второго операнда побитового И взять число, равное сумме весов интересующих флагов. Результат = сумме весов установленных флагов.Пример:Если order.flags & 5 == 4, заявка на продажу, не активна. ==1 - заявка на покупку, активна.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
nikolz, Вы мне объясняете?!
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
Владимир написал:
Сейчас вероятность проблем со связью близка к нулю
Это смотря в каком городе Вы живете...
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
VPM, в каком смысле пользоваться? Как выяснить состояние флагов, или как эту информацию использовать в торговле?
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Владимир, это на случай проблем с интернетом, электричеством, или на сервере брокера, как это было со сбером, чтобы заявка не осталась с неприкрытой задницей. Ну и для ручной торговли.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Владимир, первый, в случае управления стопом тоже нужен. Если лимитированная снята, то стоп тоже нужно снять, если исполнена - то должен остаться.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Владимир, разумеется. И выставляется она на лимитированную заявку, которая может быть как на покупку, так и на продажу. Поэтому нужен второй бит.
Всё пройдет. Но это не точно.
Предотвращение убыточной продажи по TAKE_PROFIT_AND_STOP_LIMIT_ORDER
 
Цитата
Дмитрий Ш написал:
       OFFSET             = str_price(tostring(spread)),
       OFFSET_UNITS       = "PRICE_UNITS",
       SPREAD             = str_price(tostring(offset)),
Если не секрет, зачем менять местами отступ и спред?
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Владимир, например, чтобы выставить/снять стоп-лосс, нужен еще и второй бит.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
То есть так правильно?
Да.
Цитата
VPM написал:
order.flags - где нулевой где не нулевой не разберешь.
Руководство пользователя QLua > Описание битовых флагов.
У каждого флага свой вес. Чтобы узнать состояние флагов, нужно в качестве второго операнда побитового И взять число, равное сумме весов интересующих флагов. Результат = сумме весов установленных флагов.
Пример:
Если order.flags & 5 == 4, заявка на продажу, не активна. ==1 - заявка на покупку, активна.

Старая шутка: "Нашел в телефоне кнопку Вкл.бл, значит, где-то должна быть Выкл.нах."
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
То есть так правильно?
Нет. Если order.flags делится на 2 без остатка, то число чётное, нулевой бит равен 0, а это значит, что заявка не активна.

Цитата
VPM написал:
Все равно не пойму как их различать?
Что различать? Не понял вопроса.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Владимир, это у Вас. Контролировать состояние заявки бывает нужно в разных целях.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Можно утверждать что такая запись надежна?

В приведенном Вами примере контролируется нулевой бит, а описание почему-то взято от первого. А это все-таки разные вещи: ордер активен и ордер снят. По моему, определять лучше сразу оба бита.
Если bit.band(order.flags,3) или order.flags & 3 равно 3, то заявка снята, равно  2 - исполнена, 1 - активна.
Всё пройдет. Но это не точно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Извините, что вмешиваюсь,

Цитата
VPM написал:
if (order.flags % 2) == 0 then -- Заявка снята. Если флаг не установлен и значение бита «0» равно «0», то заявка исполнена

чет/нечет - это проверка нулевого бита.
Из руководства:

Цитата
бит 0 (0x1)  Заявка активна, иначе – не активна
бит 1 (0x2)  Заявка снята. Если флаг не установлен и значение бита «0» равно «0», то заявка исполнена  

Есть еще вариант bit.test(order.flags,0), но чет/нечет самый быстрый.

Код
function main()
  order = getItem("orders", 1)
  start = os.clock()
  for i = 1, 1e6 do
    x = order.flags % 2
    --x = bit.band(order.flags,1)
    --x = bit.test(order.flags,0)  
  end
  message(tostring(os.clock() - start))
end

Всё пройдет. Но это не точно.
Таблица с измемениями открытого интереса
 
По моему, график гораздо нагляднее, чем цифры.
И скрипт писать не нужно.
Всё пройдет. Но это не точно.
Как реализовать "Карман транзакций", Как реализовать "Карман транзакций"
 
В терминале, клавиша F7  ->  Карман транзакций.
Всё пройдет. Но это не точно.
DelAllLabels приводит к "General Protection Fault", Вызов DelAllLabels при смене тикера приводит к падению QUIK с ошибкой "General Protection Fault"
 
Придумал!
Вот что ноосфера животворящая делает!

Код
      if lastLbl then
        repeat
          sleep(10)
          t_Lbl = GetLabelParams(iStr, lastLbl) -- Костыль. Ждем пока появится последняя метка.
        until t_Lbl
      end
      lastLbl = 0

<...>

        lbl_ID = AddLabel(iStr, arr)
        lastLbl = lastLbl + 1
      end


Но лучше, если бы не приходилось изобретать "костыли".
Разработчики! Поправьте на досуге.
Всё пройдет. Но это не точно.
DelAllLabels приводит к "General Protection Fault", Вызов DelAllLabels при смене тикера приводит к падению QUIK с ошибкой "General Protection Fault"
 
Стрелки: Arrows.zip
Всё пройдет. Но это не точно.
Тормоза в отрисовке меток в 10 версии
 
Цитата
Andrey Golik написал:
Уточните, пожалуйста, вы тоже столкнулись с этой проблемой?

Столкнулся со смежной проблемой: DelAllLabels приводит к "General Protection Fault"
Всё пройдет. Но это не точно.
DelAllLabels приводит к "General Protection Fault", Вызов DelAllLabels при смене тикера приводит к падению QUIK с ошибкой "General Protection Fault"
 
Значки почему-то не выкладываются.
Всё пройдет. Но это не точно.
DelAllLabels приводит к "General Protection Fault", Вызов DelAllLabels при смене тикера приводит к падению QUIK с ошибкой "General Protection Fault"
 
   Тестовый скрипт:
Скрытый текст

По-видимому, если во время восстановления меток после смены инструмента (график подключен к каналу), вызвать DelAllLabels, QUIK не выдерживает такой "шизофрении", и падает с криком "Internal exception happened".

Помогает только задержка, позволяющая QUIK восстановить все метки.
Как поймать момент окончания прорисовки, мне придумать так и не удалось, может быть разработчики что-нибудь подскажут?
Версия терминала - 10, но и на 7-ой всё то же самое.
Всё пройдет. Но это не точно.
Свободное перемещение графика
 
Цитата
Alexey Ivannikov написал:
Хамство и оскорбления - это по Вашему правильно? Мы Вас верно поняли?

Неверно.
И что значит "Мы"? Во множественном числе себя величали только самодержцы.
У высказывания есть форма и содержание. Имелось в виду именно содержание.

Цитата
Alexey Ivannikov написал:
Да, пользуются. И вполне довольны. Если Вы тоже считаете что пожелания, в которых заинтересованы 1-2-3 пользователя, должны выполняться " по щелчку" - то Вы ничего не понимаете в организации работы IT-Компании.

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

Чего для мне что-то понимать  в организации работы IT-Компании? Достаточно сравнить ваш продукт с тем же приснопамятным TradingView, и с вами всё становится ясно.
Взять хотя бы возможность назначать оповещение на пересечение ценой любой линии, например, линии тренда.
Всё пройдет. Но это не точно.
Свободное перемещение графика
 
Alexey Ivannikov, Ваше высказывание очень важно для нас, дождитесь ответа.
Всё пройдет. Но это не точно.
Свободное перемещение графика
 
Цитата
Александр написал:
Прошел еще месяц, с предыдущего сообщения! Вы че там вообще делаете за наши бабки? В чем сложность убрать бесконечность Фибоначчи??? И так из-за вашего тупого стакана приходится в двух терминалах работать. Вы что на столько тупые что не можете сделать стакан как в МТ фибы как у всех не бесконечные и свободное перемещение графика в окне?*???? Это че прям сложность такая за столько лет или мозгов не хватает тупо посмотреть как у других? Вы сами через свое убожество торгуете или только пишите это уродство?  

А вопрос-то правильный.
Разработчики OUIK сами пользуются своим продуктом, или "чисто теоретически"?
Всё пройдет. Но это не точно.
Тормоза в отрисовке меток в 10 версии
 
Andrey Golik,  снова сделаете как в 7-ке, загружать картинки один раз, при старте скрипта, и хранить их в  randseed.bin в более "удобоваримом" виде?
Может быть лучше сохранять картинки в каком-нибудь буфере в оперативке, чтобы AddLabel брала их  оттуда?
Ну, или считывать картинки как userdata и использовать вместо адреса  картинки.
Всё пройдет. Но это не точно.
В чём преимущество OnInit
 
Цитата
VPM написал:
Ау, это форум о трейдинге?

Нет.
Это - Главная  » Основные форумы  » Программирование на языке Lua
Как и написано в "шапке".
Всё пройдет. Но это не точно.
В чём преимущество OnInit
 
Цитата
VPM написал:
Ziveleos,  
Цитата
Ziveleos написал:
Один FTP и HFT
Это мое авторство. И привлеку я Вас за наращение авторских прав.

Диву даешься!

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

Ау, это форум о трейдинге?

Ещё один "не читатель"!
Это swerg написал обращаясь ко мне, а я его процитировал.
Похоже, путаница не только в логике и аббревиатурах.    
Всё пройдет. Но это не точно.
Депозит на демо, Нужно обновить
 
Здравствуйте!
Продлите пожалуйста доступ к учебному серверу для логина U0210625.

Спасибо.
Всё пройдет. Но это не точно.
В чём преимущество OnInit
 
Цитата
swerg написал:
Ziveleos, и? Я что-то неправильно написал? Тогда напишите в чем я неправ.

Один FTP и HFT путает, другой недоволен, что его не там процитировали.
А по делу-то что в итоге?

swerg, правильно, неправильно, не в этом дело.
Захотелось высказаться - воля Ваша. Меня-то зачем приплетать?
Всё пройдет. Но это не точно.
В чём преимущество OnInit
 
swerg, мои слова, процитированные Вами, были ответом Владимиру.
Для себя я все выяснил, о чем и высказывался уже в этой ветке.
Видимо, Вы поступили как в том анекдоте: "чукча - не читатель, чукча - писатель!"
Всё пройдет. Но это не точно.
В чём преимущество OnInit
 
VPM,
Цитата
VPM написал:
я делаю так

local path;
function OnInit (script_path)

--задаём переменные
path=getScriptPath()

script_path -- другая переменная

end

Так ведь:

Цитата
Алексей написал:
Имеется ввиду, что quik уже за Вас вызвал getScriptPath() и результат Вам подсовывает в качестве параметра при вызове OnInit(script_path).А уж будете Вы использовать этот "подарок" внутри OnInit или нет, дело Ваше  

Зачем Вам script_path от OnInit?
Всё пройдет. Но это не точно.
Страницы: Пред. 1 2 3 След.
Наверх